You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
// Create data for all memory combinations and operations
356
+
constmemCombinations= [
357
+
{hostA:"GPU", hostB:"GPU"},
358
+
{hostA:"GPU", hostB:"CPU"},
359
+
{hostA:"CPU", hostB:"GPU"},
360
+
{hostA:"CPU", hostB:"CPU"}
361
+
];
362
+
363
+
constops= ["PULL", "PUSH"];
364
+
constgpuBandwidthBarData= [];
365
+
366
+
for (constmemof memCombinations) {
367
+
for (constopof ops) {
368
+
constentry=gpuBandwidthForDate.find(d=>
369
+
d.op=== op &&
370
+
d.hostA_mem===mem.hostA&&
371
+
d.hostB_mem===mem.hostB
372
+
);
373
+
// Arrow direction: → for PULL (A pulls from B), ← for PUSH (A pushes to B)
374
+
constarrow= op ==="PULL"?"→":"←";
375
+
gpuBandwidthBarData.push({
376
+
category:`${mem.hostA}${arrow}${mem.hostB}`,
377
+
throughput: entry ? entry["MiB/s"] /1024:0
378
+
});
379
+
}
380
+
}
381
+
```
382
+
383
+
The following graph shows the GPU bandwidth for different memory locations on each host.
384
+
HostA and HostB refer to the two processes on distinct nodes.
385
+
Host A is always the sender of an RPC to Host B. The latter issues the RDMA transfer (PUSH or PULL). Hence "GPU←CPU" means that Host B issues a PUSH from its CPU memory to Host A's GPU memory. "GPU→CPU" means that Host B issues a PULL from Host A's GPU memory to Host B's CPU memory.
0 commit comments