@@ -1345,36 +1345,55 @@ def test_event_management(ctx_factory):
1345
1345
from pyopencl .clrandom import rand as clrand
1346
1346
1347
1347
x = clrand (queue , (5 , 10 ), dtype = np .float32 )
1348
- assert len (x .events ) == 1 , len (x .events )
1348
+ assert len (x .write_events ) == 1 , x .write_events
1349
+ assert len (x .read_events ) == 0 , x .read_events
1349
1350
1350
1351
x .finish ()
1351
1352
1352
- assert len (x .events ) == 0
1353
-
1354
- y = x + x
1355
- assert len (y .events ) == 1
1356
- y = x * x
1357
- assert len (y .events ) == 1
1358
- y = 2 * x
1359
- assert len (y .events ) == 1
1360
- y = 2 / x
1361
- assert len (y .events ) == 1
1362
- y = x / 2
1363
- assert len (y .events ) == 1
1364
- y = x ** 2
1365
- assert len (y .events ) == 1
1366
- y = 2 ** x
1367
- assert len (y .events ) == 1
1353
+ assert len (x .write_events ) == 0
1354
+ assert len (x .read_events ) == 0
1355
+
1356
+ y = x + x
1357
+ assert len (y .write_events ) == 1 and len (y .read_events ) == 0
1358
+ assert len (x .write_events ) == 0 and len (x .read_events ) == 1
1359
+
1360
+ y = x * x
1361
+ assert len (y .write_events ) == 1 and len (y .read_events ) == 0
1362
+ assert len (x .write_events ) == 0 and len (x .read_events ) == 2
1363
+
1364
+ y = 2 * x
1365
+ assert len (y .write_events ) == 1 and len (y .read_events ) == 0
1366
+ assert len (x .write_events ) == 0 and len (x .read_events ) == 3
1367
+
1368
+ y = 2 / x
1369
+ assert len (y .write_events ) == 1 and len (y .read_events ) == 0
1370
+ assert len (x .write_events ) == 0 and len (x .read_events ) == 4
1371
+
1372
+ y = x / 2
1373
+ assert len (y .write_events ) == 1 and len (y .read_events ) == 0
1374
+ assert len (x .write_events ) == 0 and len (x .read_events ) == 5
1375
+
1376
+ y = x ** 2
1377
+ assert len (y .write_events ) == 1 and len (y .read_events ) == 0
1378
+ assert len (x .write_events ) == 0 and len (x .read_events ) == 6
1379
+
1380
+ y = 2 ** x
1381
+ assert len (y .write_events ) == 1 and len (y .read_events ) == 0
1382
+ assert len (x .write_events ) == 0 and len (x .read_events ) == 7
1383
+
1384
+ x .finish ()
1368
1385
1369
1386
for _i in range (10 ):
1370
1387
x .fill (0 )
1371
1388
1372
- assert len (x .events ) == 10
1389
+ assert len (x .write_events ) == 10
1390
+ assert len (x .read_events ) == 0
1373
1391
1374
1392
for _i in range (1000 ):
1375
1393
x .fill (0 )
1376
1394
1377
- assert len (x .events ) < 100
1395
+ assert len (x .write_events ) < 100
1396
+ assert len (x .read_events ) == 0
1378
1397
1379
1398
# }}}
1380
1399
@@ -1618,7 +1637,7 @@ def test_get_async(ctx_factory):
1618
1637
assert np .abs (b1 - b ).mean () < 1e-5
1619
1638
1620
1639
wait_event = cl .UserEvent (context )
1621
- b_gpu .add_event (wait_event )
1640
+ b_gpu .add_write_event (wait_event )
1622
1641
b , evt = b_gpu .get_async () # testing that this doesn't hang
1623
1642
wait_event .set_status (cl .command_execution_status .COMPLETE )
1624
1643
evt .wait ()
0 commit comments