Who is providing the DMA engine in this case? Has the GPU access to PCIe device memory?
GpuScan and SSD-To-GPU Direct DMA
11–20 of 28 posts
Re: GpuScan and SSD-To-GPU Direct DMA
#12There is no explanation how it works. Does it work on top of existing APIs in user space? Or is there a custom kernel driver bypassing user space? I've done some high throughput streaming from HD/SSD to GPU before, and it's pretty easy to beat the naive solution but getting the most out of it would require kernel space code. I was doing random access streaming of textures using memory mapped files for input and copyi…
Re: GpuScan and SSD-To-GPU Direct DMA
#13Re: GpuScan and SSD-To-GPU Direct DMA
#14This would be incredibly useful for distributed machine learning - imagine a Tensorflow implementation that almost entirely bypasses CPU.
You also lose the flexibility of doing any sort of data modification or augmentation. One domain where your data usually doesn't fit in RAM is image recognition, but often you want to do things like apply random flips, crops and change hues before training to make the neural net less sensitive to those changes, which you can't really do with this.
Re: GpuScan and SSD-To-GPU Direct DMA
#15This would be incredibly useful for distributed machine learning - imagine a Tensorflow implementation that almost entirely bypasses CPU.
I was thinking the same thing, but is SSD to GPU faster than RAM to GPU? In many (not all) cases you buy a tonne of RAM and load your entire dataset into memory once and then iterate over it as necessary. You also lose the flexibility of doing any sort of data modification or augmentation. One domain where your data usually doesn't fit in RAM is image recognition, but often you want to do things like apply random fli…
Data pre-processing is indeed an issue, but hue adjustment/flipping/cropping could be implemented as Tensorflow operations, on the GPU. Similarly with input decompression - it would either have to be done on GPU, or the data would have to be stored uncompressed.
Re: GpuScan and SSD-To-GPU Direct DMA
#16Re: GpuScan and SSD-To-GPU Direct DMA
#17See also https://developer.nvidia.com/gpudirect and to some extent https://en.wikipedia.org/wiki/NVLink . NVLink is in the Power9 servers Google is using.
AFAIK Intel is stonewalling NVLink on their CPUs so they can (try to) sell Knight's landing. Quite a shame, although it might hurt then in the long run if they drive more institutes to buy ARM plus Tesla or Power plus Tesla clusters.
(Disclaimer: I don't have any way to verify whether the parent post is true, but I think the point stands regardless of whether this specific case is true or not.)
Re: GpuScan and SSD-To-GPU Direct DMA
#18Re: GpuScan and SSD-To-GPU Direct DMA
#19Direct Direct Memory Access? That's pretty direct.
Re: GpuScan and SSD-To-GPU Direct DMA
#20This would be incredibly useful for distributed machine learning - imagine a Tensorflow implementation that almost entirely bypasses CPU.
The question would be whether we can turn the crank on the design of models to make it possible to do something really cool given access to very high-speed SSD storage.