CUDA / OpenCL dentro de una Máquina Virtual / Hipervisor


Cualquiera sabe de cualquier solución de virtualización que permita el acceso de CUDA/OpenCL directamente o implemente la abstracción de CUDA/OpenCL.

ACTUALIZACIÓN: Gracias a los que comentaron. Mientras que la virtualización clásica del 'escritorio' sería agradable, sospecho que los gustos de Xen estarían más cerca de la marca.

Author: Bolster, 2011-03-14

5 answers

NVIDIA anunció la virtualización de GPU en las nuevas tarjetas Kepler este verano en GTC.

Http://www.nvidia.com/object/vgx-boards.html

Http://www.gputechconf.com/page/home.html

No solo lo anunciaron, lo demostraron en vivo

 9
Author: ccook,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-10-01 11:05:49

Puede usar Xen VGA passthrough para tener acceso y control completos sobre su tarjeta gráfica dentro de una VM. Puede encontrar más información sobre esto aquí: http://vfio.blogspot.com / (busque VFIO GPU How To series parts 1-5).

Lo hice un par de veces, no es muy fácil de configurar, pero da muy buenos resultados (casi nativo). Aquí hay un video de una experimentación que hice que muestra un paso dual VGA usando Xen: http://www.youtube.com/watch?v=Gtmwnx-k2qg

No he probado OpenCL o CUDA, pero estoy bastante seguro de que funcionaría.

 9
Author: alarouche,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-03-06 08:36:35

VirtualBox tiene PCI-passthrough, que le permite usar CUDA u OpenCL dentro de una Máquina virtual.

 2
Author: Muis,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-11-17 00:24:32

Descargo de responsabilidad: vGPU es uno de los proyectos en los que estaba trabajando...

Si desea acceder a la GPU a través de API CUDA u OpenCL, le sugiero que eche un vistazo a http://www.zillians.com/vgpu

Simplemente implementando SR-IOV en GPU no va a funcionar no solo debido a la falta de soporte en hardware, sino también a la viabilidad de usar recursos de GPU virtualizados bajo hipervisor. Pregunta simple: ¿cuántas GPU puede caber en su chasis? y compártalos para cada VM instancia, que degradará mucho el rendimiento y tendrá enormes requisitos de ancho de banda en el conmutador PCI-E...¿eso tiene algún sentido?

Es por eso que Amazon EC2 solo proporciona instancias de GPU dedicadas y también la razón por la que elegimos implementar VGPU para hacer de la GPU una unidad informática compartida y escalable.

 -2
Author: user1057170,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-11-21 05:10:45

Parallels Workstation Extreme.

 -5
Author: bubbadoughball,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-11-03 18:09:30