mirror of
https://github.com/tinygrad/tinygrad.git
synced 2026-01-09 15:08:02 -05:00
15
extra/ring_copy.py
Normal file
15
extra/ring_copy.py
Normal file
@@ -0,0 +1,15 @@
|
||||
from tinygrad import Tensor, Device, GlobalCounters
|
||||
from tinygrad.helpers import Timing
|
||||
|
||||
N = 512
|
||||
GPUS = 5
|
||||
ds = tuple([f"{Device.DEFAULT}:{i+1}" for i in range(GPUS)])
|
||||
t = [Tensor.ones(N, N, N, device=d).contiguous().realize() for d in ds]
|
||||
|
||||
for _ in range(10):
|
||||
GlobalCounters.reset()
|
||||
with Timing():
|
||||
for ti in t:
|
||||
ti.to_(ds[(ds.index(ti.device)+1+len(ds))%len(ds)])
|
||||
# ti.to_(ds[(ds.index(ti.device)-1+len(ds))%len(ds)]) # reversed order
|
||||
ti.realize()
|
||||
Reference in New Issue
Block a user