@@ -332,17 +332,17 @@ void ExtractSiftDescriptorsCONSTNew(
332
332
if (y >= 2 )
333
333
{ // Upper left
334
334
float grad2 = iverf * grad1;
335
- infra::atomic_fetch_add<sycl::access::address_space::local_space>(
335
+ infra::atomic_fetch_add<float , sycl::access::address_space::local_space>(
336
336
buffer + p1, iangf * grad2);
337
- infra::atomic_fetch_add<sycl::access::address_space::local_space>(
337
+ infra::atomic_fetch_add<float , sycl::access::address_space::local_space>(
338
338
buffer + p2, angf * grad2);
339
339
}
340
340
if (y <= 13 )
341
341
{ // Lower left
342
342
float grad2 = verf * grad1;
343
- infra::atomic_fetch_add<sycl::access::address_space::local_space>(
343
+ infra::atomic_fetch_add<float , sycl::access::address_space::local_space>(
344
344
buffer + p1 + 32 , iangf * grad2);
345
- infra::atomic_fetch_add<sycl::access::address_space::local_space>(
345
+ infra::atomic_fetch_add<float , sycl::access::address_space::local_space>(
346
346
buffer + p2 + 32 , angf * grad2);
347
347
}
348
348
}
@@ -352,17 +352,17 @@ void ExtractSiftDescriptorsCONSTNew(
352
352
if (y >= 2 )
353
353
{ // Upper right
354
354
float grad2 = iverf * grad1;
355
- infra::atomic_fetch_add<sycl::access::address_space::local_space>(
355
+ infra::atomic_fetch_add<float , sycl::access::address_space::local_space>(
356
356
buffer + p1 + 8 , iangf * grad2);
357
- infra::atomic_fetch_add<sycl::access::address_space::local_space>(
357
+ infra::atomic_fetch_add<float , sycl::access::address_space::local_space>(
358
358
buffer + p2 + 8 , angf * grad2);
359
359
}
360
360
if (y <= 13 )
361
361
{ // Lower right
362
362
float grad2 = verf * grad1;
363
- infra::atomic_fetch_add<sycl::access::address_space::local_space>(
363
+ infra::atomic_fetch_add<float , sycl::access::address_space::local_space>(
364
364
buffer + p1 + 40 , iangf * grad2);
365
- infra::atomic_fetch_add<sycl::access::address_space::local_space>(
365
+ infra::atomic_fetch_add<float , sycl::access::address_space::local_space>(
366
366
buffer + p2 + 40 , angf * grad2);
367
367
}
368
368
}
@@ -452,17 +452,17 @@ void ExtractSiftDescriptor(rawImg_data texObj,
452
452
if (y >= 2 )
453
453
{ // Upper left
454
454
float grad2 = iverf * grad1;
455
- infra::atomic_fetch_add<sycl::access::address_space::local_space>(
455
+ infra::atomic_fetch_add<float , sycl::access::address_space::local_space>(
456
456
buffer + p1, iangf * grad2);
457
- infra::atomic_fetch_add<sycl::access::address_space::local_space>(
457
+ infra::atomic_fetch_add<float , sycl::access::address_space::local_space>(
458
458
buffer + p2, angf * grad2);
459
459
}
460
460
if (y <= 13 )
461
461
{ // Lower left
462
462
float grad2 = verf * grad1;
463
- infra::atomic_fetch_add<sycl::access::address_space::local_space>(
463
+ infra::atomic_fetch_add<float , sycl::access::address_space::local_space>(
464
464
buffer + p1 + 32 , iangf * grad2);
465
- infra::atomic_fetch_add<sycl::access::address_space::local_space>(
465
+ infra::atomic_fetch_add<float , sycl::access::address_space::local_space>(
466
466
buffer + p2 + 32 , angf * grad2);
467
467
}
468
468
}
@@ -472,17 +472,17 @@ void ExtractSiftDescriptor(rawImg_data texObj,
472
472
if (y >= 2 )
473
473
{ // Upper right
474
474
float grad2 = iverf * grad1;
475
- infra::atomic_fetch_add<sycl::access::address_space::local_space>(
475
+ infra::atomic_fetch_add<float , sycl::access::address_space::local_space>(
476
476
buffer + p1 + 8 , iangf * grad2);
477
- infra::atomic_fetch_add<sycl::access::address_space::local_space>(
477
+ infra::atomic_fetch_add<float , sycl::access::address_space::local_space>(
478
478
buffer + p2 + 8 , angf * grad2);
479
479
}
480
480
if (y <= 13 )
481
481
{ // Lower right
482
482
float grad2 = verf * grad1;
483
- infra::atomic_fetch_add<sycl::access::address_space::local_space>(
483
+ infra::atomic_fetch_add<float , sycl::access::address_space::local_space>(
484
484
buffer + p1 + 40 , iangf * grad2);
485
- infra::atomic_fetch_add<sycl::access::address_space::local_space>(
485
+ infra::atomic_fetch_add<float , sycl::access::address_space::local_space>(
486
486
buffer + p2 + 40 , angf * grad2);
487
487
}
488
488
}
@@ -621,7 +621,7 @@ void ComputeOrientationsCONSTNew(float *image, int w, int p, int h, SiftPoint *d
621
621
(int )((LEN / 2 ) * sycl::atan2 (dy, dx) / 3 .1416f + (LEN / 2 ) + 0 .5f ) %
622
622
LEN;
623
623
float grad = sycl::sqrt (dx * dx + dy * dy);
624
- infra::atomic_fetch_add<sycl::access::address_space::local_space>(
624
+ infra::atomic_fetch_add<float , sycl::access::address_space::local_space>(
625
625
&hist[LEN + bin], grad * gaussx[x] * gaussy[y]);
626
626
}
627
627
item_ct1.barrier (sycl::access::fence_space::local_space);
@@ -673,11 +673,12 @@ void ComputeOrientationsCONSTNew(float *image, int w, int p, int h, SiftPoint *d
673
673
float val1 = hist[LEN + ((i2 + 1 ) % LEN)];
674
674
float val2 = hist[LEN + ((i2 + LEN - 1 ) % LEN)];
675
675
float peak = i2 + 0 .5f * (val1 - val2) / (2 .0f * maxval2 - val1 - val2);
676
- // unsigned int idx = infra::atomic_fetch_compare_inc(
677
- // &d_PointCounter[2 * octave + 1], (unsigned int)0x7fffffff);
678
- unsigned int idx =
679
- infra::atomic_fetch_add<unsigned int , sycl::access::address_space::generic_space>(
680
- &d_PointCounter[2 * octave + 1 ], 2 ) / 2 ;
676
+ // unsigned int idx = infra::atomic_fetch_compare_inc(
677
+ // &d_PointCounter[2 * octave + 1], (unsigned int)0x7fffffff);
678
+ unsigned int idx =
679
+ infra::atomic_fetch_add<unsigned int , sycl::access::address_space::generic_space>(
680
+ &d_PointCounter[2 * octave + 1 ], 2 ) /
681
+ 2 ;
681
682
if (idx < d_MaxNumPoints)
682
683
{
683
684
d_Sift[idx].xpos = d_Sift[bx].xpos ;
@@ -734,7 +735,7 @@ void ComputeOrientationsCONST(rawImg_data texObj,
734
735
if (bin > 31 )
735
736
bin = 0 ;
736
737
float grad = sycl::sqrt (dx * dx + dy * dy);
737
- infra::atomic_fetch_add<sycl::access::address_space::local_space>(
738
+ infra::atomic_fetch_add<float , sycl::access::address_space::local_space>(
738
739
&hist[bin], grad * gauss[xd] * gauss[yd]);
739
740
}
740
741
@@ -789,11 +790,12 @@ void ComputeOrientationsCONST(rawImg_data texObj,
789
790
float val1 = hist[32 + ((i2 + 1 ) & 31 )];
790
791
float val2 = hist[32 + ((i2 + 31 ) & 31 )];
791
792
float peak = i2 + 0 .5f * (val1 - val2) / (2 .0f * maxval2 - val1 - val2);
792
- // unsigned int idx = infra::atomic_fetch_compare_inc(
793
- // &d_PointCounter[2 * octave + 1], (unsigned int)0x7fffffff);
794
- unsigned int idx =
793
+ // unsigned int idx = infra::atomic_fetch_compare_inc(
794
+ // &d_PointCounter[2 * octave + 1], (unsigned int)0x7fffffff);
795
+ unsigned int idx =
795
796
infra::atomic_fetch_add<unsigned int , sycl::access::address_space::generic_space>(
796
- &d_PointCounter[2 * octave + 1 ], 2 ) / 2 ;
797
+ &d_PointCounter[2 * octave + 1 ], 2 ) /
798
+ 2 ;
797
799
798
800
if (idx < d_MaxNumPoints)
799
801
{
@@ -979,11 +981,12 @@ void FindPointsMultiNew(float *d_Data0, SiftPoint *d_Sift, int width, int pitch,
979
981
sycl::atomic<unsigned int >(
980
982
sycl::global_ptr<unsigned int >(&d_PointCounter[2 * octave + 0 ]))
981
983
.fetch_max (d_PointCounter[2 * octave - 1 ]);
982
- // unsigned int idx = infra::atomic_fetch_compare_inc(
983
- // &d_PointCounter[2 * octave + 0], (unsigned int)0x7fffffff);
984
- unsigned int idx =
984
+ // unsigned int idx = infra::atomic_fetch_compare_inc(
985
+ // &d_PointCounter[2 * octave + 0], (unsigned int)0x7fffffff);
986
+ unsigned int idx =
985
987
infra::atomic_fetch_add<unsigned int , sycl::access::address_space::generic_space>(
986
- &d_PointCounter[2 * octave + 0 ], 2 ) / 2 ;
988
+ &d_PointCounter[2 * octave + 0 ], 2 ) /
989
+ 2 ;
987
990
988
991
idx = (idx >= maxPts ? maxPts - 1 : idx);
989
992
d_Sift[idx].xpos = xpos + pdx;
0 commit comments