4 ms·
Despite the uninteresting title, this is a pretty large release from Nvidia. Release summary: * There are now Maxwell powered Tesla GPUs! The M40 is the K40/K
by lightcatcher 11y ago
Despite the uninteresting title, this is a pretty large release from Nvidia.
Release summary:
* There are now Maxwell powered Tesla GPUs! The M40 is the K40/K80 upgrade, has 12GB of RAM and 24 SM's of compute capability 5.2. The new M4 GPU is a low power consumption Tesla that looks like it's targeted at video transcoding. The M4 has 4GB and 8 SM's (CC 5.2).
* Nvidia added GPU support to ffmpeg. This looks like it makes it significantly easier to encode videos on Nvidia's GPUs. I think this will work with any Kepler or Maxwell GPU.
* GPU REST Engine. This looks like a framework that maps REST requests into GPU tasks. I'm not exactly sure why these concepts aren't orthogonal, but the documentation suggests this is non-trivial because it balances work across multiple GPUs overlaps data fetching, data transfer, and compute.
* NVIDIA Image Compute Engine. An image resizing service built on top of GPU REST Engine framework.
* Nvidia is working with Mesosphere to add GPUs as a resource to Mesos. This will allow Mesos task proposals to request GPUs.
* There is some sort of better integration of CUDA with Docker now.
My thoughts on this:
* I'm interested to see the price point of the M4 since the "low power Tesla" is a new product for Nvidia. I'm interested in how it compares in price and power consumption to GeForce cards.
* GPU support for Mesos is exciting, because this + some non-trivial modifications to TensorFlow would be an awesome framework to train neural networks.
- martinpw 11y agoThanks for the summary. Quick question on video encoding & transcoding - what is the best bang for the buck hardware for encoding or transcoding large numbers of of video streams? In the past when researching it, I got the impression that the dedicated hardware on Nvidia GPUs was only a small part of the die area so getting GPUs just for transcoding seemed like overkill. Similarly with CPUs there is Intel's QuickSync, but again that dedicated hardware is only a small part of the total processor die area.
- lightcatcher 11y agoI don't know much about video encoding (I have more familiarity with GPU computing from the neural net side). I would figure out if you are looking for bang for the buck with respect to hardware cost or energy cost. The options for video encoding seem to be pure software on CPU or GPU, dedicated hardware on CPU or GPU (such as nvenc or QuickSync), FPGA, or maybe an ASIC if it exists. If using CPU or GPU hardware encoding, I believe you could get better utilization by also running CPU or GPU software encoding at the same time (for GPU, this would involve writing an encoder using CUDA). For FPGA, you might be able license blocks that do encoding, and then fill up the FPGA with these blocks.