@@ -274,149 +274,149 @@ end
274274
275275# ###########################################################################################
276276
277- @testset " atomics (low level)" begin
277+ # @testset "atomics (low level)" begin
278278
279279 @testset " atomic_add($T )" for T in [Int32, UInt32, Float32]
280- a = oneArray ([zero (T)])
280+ a = oneArray ([zero (T)])
281281
282- function kernel (a, b)
283- oneAPI. atomic_add! (pointer (a), b)
284- return
285- end
282+ function kernel (a, b)
283+ oneAPI. atomic_add! (pointer (a), b)
284+ return
285+ end
286286
287- @oneapi items= 256 kernel (a, one (T))
288- @test Array (a)[1 ] == T (256 )
289- end
287+ @oneapi items= 256 kernel (a, one (T))
288+ @test Array (a)[1 ] == T (256 )
289+ end
290290
291291 @testset " atomic_sub($T )" for T in [Int32, UInt32, Float32]
292- a = oneArray ([T (256 )])
292+ a = oneArray ([T (256 )])
293293
294- function kernel (a, b)
295- oneAPI. atomic_sub! (pointer (a), b)
296- return
294+ function kernel (a, b)
295+ oneAPI. atomic_sub! (pointer (a), b)
296+ return
297+ end
298+
299+ @oneapi items= 256 kernel (a, one (T))
300+ @test Array (a)[1 ] == T (0 )
297301 end
298302
299- @oneapi items= 256 kernel (a, one (T))
300- @test Array (a)[1 ] == T (0 )
301- end
303+ @testset " atomic_inc($T )" for T in [Int32, UInt32]
304+ a = oneArray ([zero (T)])
302305
303- @testset " atomic_inc($T )" for T in [Int32, UInt32, Float32]
304- a = oneArray ([zero (T)])
306+ function kernel (a)
307+ oneAPI. atomic_inc! (pointer (a))
308+ return
309+ end
305310
306- function kernel (a)
307- oneAPI. atomic_inc! (pointer (a))
308- return
311+ @oneapi items= 256 kernel (a)
312+ @test Array (a)[1 ] == T (256 )
309313 end
310314
311- @oneapi items= 256 kernel (a)
312- @test Array (a)[1 ] == T (256 )
313- end
315+ @testset " atomic_dec($T )" for T in [Int32, UInt32]
316+ a = oneArray ([T (256 )])
314317
315- @testset " atomic_dec($T )" for T in [Int32, UInt32, Float32]
316- a = oneArray ([T (256 )])
318+ function kernel (a)
319+ oneAPI. atomic_dec! (pointer (a))
320+ return
321+ end
317322
318- function kernel (a)
319- oneAPI. atomic_dec! (pointer (a))
320- return
323+ @oneapi items= 256 kernel (a)
324+ @test Array (a)[1 ] == T (0 )
321325 end
322326
323- @oneapi items= 256 kernel (a)
324- @test Array (a)[1 ] == T (0 )
325- end
326-
327327 @testset " atomic_min($T )" for T in [Int32, UInt32, Float32]
328- a = oneArray ([T (256 )])
328+ a = oneArray ([T (256 )])
329329
330- function kernel (a, T)
331- i = get_global_id ()
332- oneAPI. atomic_min! (pointer (a), T (i))
333- return
334- end
330+ function kernel (a, T)
331+ i = get_global_id ()
332+ oneAPI. atomic_min! (pointer (a), T (i))
333+ return
334+ end
335335
336- @oneapi items= 256 kernel (a, T)
337- @test Array (a)[1 ] == one (T)
338- end
336+ @oneapi items= 256 kernel (a, T)
337+ @test Array (a)[1 ] == one (T)
338+ end
339339
340340 @testset " atomic_max($T )" for T in [Int32, UInt32, Float32]
341- a = oneArray ([zero (T)])
341+ a = oneArray ([zero (T)])
342342
343- function kernel (a, T)
344- i = get_global_id ()
345- oneAPI. atomic_max! (pointer (a), T (i))
346- return
347- end
343+ function kernel (a, T)
344+ i = get_global_id ()
345+ oneAPI. atomic_max! (pointer (a), T (i))
346+ return
347+ end
348348
349- @oneapi items= 256 kernel (a, T)
350- @test Array (a)[1 ] == T (256 )
351- end
349+ @oneapi items= 256 kernel (a, T)
350+ @test Array (a)[1 ] == T (256 )
351+ end
352352
353- @testset " atomic_and($T )" for T in [Int32, UInt32]
354- a = oneArray ([T (1023 )])
353+ @testset " atomic_and($T )" for T in [Int32, UInt32]
354+ a = oneArray ([T (1023 )])
355355
356- function kernel (a, T)
357- i = get_global_id () - 1
358- k = 1
359- for i = 1 : i
360- k *= 2
356+ function kernel (a, T)
357+ i = get_global_id () - 1
358+ k = 1
359+ for i = 1 : i
360+ k *= 2
361+ end
362+ b = 1023 - k # 1023 - 2^i
363+ oneAPI. atomic_and! (pointer (a), T (b))
364+ return
361365 end
362- b = 1023 - k # 1023 - 2^i
363- oneAPI. atomic_and! (pointer (a), T (b))
364- return
365- end
366366
367- @oneapi items= 10 kernel (a, T)
368- @test Array (a)[1 ] == zero (T)
369- end
367+ @oneapi items= 10 kernel (a, T)
368+ @test Array (a)[1 ] == zero (T)
369+ end
370370
371- @testset " atomic_or($T )" for T in [Int32, UInt32]
372- a = oneArray ([zero (T)])
371+ @testset " atomic_or($T )" for T in [Int32, UInt32]
372+ a = oneArray ([zero (T)])
373373
374- function kernel (a, T)
375- i = get_global_id ()
376- b = 1 # 2^(i-1)
377- for i = 1 : i
378- b *= 2
374+ function kernel (a, T)
375+ i = get_global_id ()
376+ b = 1 # 2^(i-1)
377+ for i = 1 : i
378+ b *= 2
379+ end
380+ b ÷= 2
381+ oneAPI. atomic_or! (pointer (a), T (b))
382+ return
379383 end
380- b ÷= 2
381- oneAPI. atomic_or! (pointer (a), T (b))
382- return
383- end
384384
385- @oneapi items= 10 kernel (a, T)
386- @test Array (a)[1 ] == T (1023 )
387- end
385+ @oneapi items= 10 kernel (a, T)
386+ @test Array (a)[1 ] == T (1023 )
387+ end
388388
389- @testset " atomic_xor($T )" for T in [Int32, UInt32]
390- a = oneArray ([T (1023 )])
389+ @testset " atomic_xor($T )" for T in [Int32, UInt32]
390+ a = oneArray ([T (1023 )])
391391
392- function kernel (a, T)
393- i = get_global_id ()
394- b = 1 # 2^(i-1)
395- for i = 1 : i
396- b *= 2
392+ function kernel (a, T)
393+ i = get_global_id ()
394+ b = 1 # 2^(i-1)
395+ for i = 1 : i
396+ b *= 2
397+ end
398+ b ÷= 2
399+ oneAPI. atomic_xor! (pointer (a), T (b))
400+ return
397401 end
398- b ÷= 2
399- oneAPI . atomic_xor! ( pointer (a) , T (b) )
400- return
402+
403+ @oneapi items = 10 kernel (a , T)
404+ @test Array (a)[ 1 ] == zero (T)
401405 end
402406
403- @oneapi items= 10 kernel (a, T)
404- @test Array (a)[1 ] == zero (T)
405- end
407+ @testset " atomic_xchg($T )" for T in [Int32, UInt32, Float32]
408+ a = oneArray ([zero (T)])
406409
407- @testset " atomic_xchg($T )" for T in [Int32, UInt32, Float32]
408- a = oneArray ([zero (T)])
410+ function kernel (a, b)
411+ oneAPI. atomic_xchg! (pointer (a), b)
412+ return
413+ end
409414
410- function kernel (a, b)
411- oneAPI. atomic_xchg! (pointer (a), b)
412- return
415+ @oneapi items= 256 kernel (a, one (T))
416+ @test Array (a)[1 ] == one (T)
413417 end
414418
415- @oneapi items= 256 kernel (a, one (T))
416- @test Array (a)[1 ] == one (T)
417- end
418-
419- end
419+ # end
420420
421421
422422
0 commit comments