Linux 4.10 has been released. This release adds support for virtualized GPUs, a new ‘perf c2c’ tool for cacheline contention analysis in NUMA systems, a new ‘perf sched timehist’ command for a detailed history of task scheduling, improved writeback management that should make the system more responsive under heavy writing load, a new hybrid block polling method that uses less CPU than pure polling, support for ARM devices such as the Nexus 5 & 6 or Allwinner A64, a feature that allows to attach eBPF programs to cgroups, an experimental MD RAID5 writeback cache, support for Intel Cache Allocation Technology, and many other improvements and new drivers. Here is the full list of changes.
Why in the summary it’s written ‘4.6’? Isn’t it 4.10?
What benefit is this?
Is this about containers or something?… like dividing up your GPU’s memory and shaders and assigning a portion of it to various containers or something?
http://www.linux-kvm.org/images/f/f3/01x08b-KVMGT-a.pdf
It’s better than the other two options… IE passthrough and API translation. Since it works with the native driver in the VM you get full access to the GPU and all it’s ABIs directly. It’s basically allowing you to do everything you can do with GPU passthrough…. while not requiring you to dedicate a graphics card to that VM only.
Looks like it is about a 5-15% perf hit which isn’t too bad.
There are lots of use cases for GPU in a VM… even web browsers use the GPU these days.
https://www.kraxel.org/blog/2017/01/virtual-gpu-support-landing-upst…
For 4.10 there is still a fairly major bug. Of not being able to have the output of the virtual machine sent to a texture that can be displayed in a window.
http://www.phoronix.com/scan.php?page=news_item&px=Intel-GVT-g-Main…
Those bench numbers are a little old from 2014 and there have been lot of changes tagged as fixing performance issues. Phoronix is looking at doing a new set of benchmarks when the integration stuff lands in the kernels after 4.10 being hopefully 4.11 or 4.12.
Mxgpu AMB solution to share gpu with virtual machine is also working on going mainline.
The one without a mainline plan should be totally predictable it is Nvidia again.
Really this is going to make choosing a GPU that much harder.
–There are lots of use cases for GPU in a VM… even web browsers use the GPU these days.–
Lot of things are using GPU these days that are not graphical like some database engines. So virtual machine without functional GPU support is becoming very limited. So 4.10 helps with the non graphical cases more.