Lo hice en una situación de alto rendimiento y logré un rendimiento lo suficientemente cercano al nativo para las aplicaciones que estábamos ejecutando. Esto no es tanto un 'aquí está cómo hacerlo', sino dos ejemplos de dónde lo hice y logré un rendimiento adecuado y resolví un problema.
Para ciencia de datos y desarrollo de software
Mis estaciones de trabajo actuales (una computadora portátil y mi estación de trabajo) tienen Windows 10 y Ubuntu instalados uno al lado del otro en dos particiones separadas. Al arrancar mi máquina, puedo seleccionar Windows o Ubuntu y arrancar en cualquier sistema operativo. Dentro de Ubuntu, uso VirtualBox para arrancar la partición nativa de Windows y ejecutarla como cualquier otra máquina virtual ( ver aquí ).
Todo funciona: arrastrar y soltar, portapapeles compartido y compartir archivos. Ejecuto grandes hojas de cálculo de Excel multiproceso constantemente (no dispare, ¡no las construí!) En mi máquina virtual y todo está muy bien.
Para trabajos geofísicos, geológicos y de ingeniería
Hace unos años, construí una configuración similar usando CentOS y Windows 7. Esto fue para que mis colegas pudieran ejecutar simulaciones geofísicas costosas y hambrientas de rendimiento en Linux sin dejar de tener acceso a software de mapeo 2D y 3D de alto rendimiento en Windows 7 (junto con Outlook y el resto de la suite de Microsoft). Probamos VirtualBox, pero con dinero para gastar, finalmente resolvimos el problema usando VMware Workstation y la transferencia de GPU (el costo era trivial en comparación con los salarios y las licencias de software). Para nuestras aplicaciones, logramos un rendimiento lo suficientemente cercano al nativo en Windows y todos estaban muy contentos con la configuración.
Estas eran máquinas bastante carnosas para su tiempo (alrededor del 2010): Quadro 4000, Xeons de doble núcleo y 32 GB de memoria. La parte más ardua del ensamblaje de estas configuraciones (por lo que recuerdo), fue algo relacionado con un controlador RAID de hardware. Mantuve aproximadamente una docena de máquinas usando esta configuración y nunca tuvimos un solo problema durante la vida útil del proyecto por el que se compraron estas máquinas (~ 2 años). ¡Este fue un resultado fantástico para nosotros porque si una sola máquina estuviera fuera de servicio por una semana, eso nos hubiera costado más en pérdida de productividad que la estación de trabajo en sí!
Conclusión
Puede lograr un rendimiento muy bueno con la opción de arranque dual descrita anteriormente. Lo hice usando VirtualBox y VMware en diferentes ocasiones, usando una combinación en distribuciones de Linux (Mint, Ubuntu y CentOS) y versiones de Windows (7, 10), y siempre logré un rendimiento adecuado para mis necesidades.
La otra ventaja de esta configuración es que puede destruir cualquier partición y dejar atrás Windows o Linux si a) sus circunstancias cambian, o b) esta configuración no es adecuada para sus necesidades. Si el rendimiento no es suficiente, también tiene la posibilidad de arrancar directamente en el sistema operativo donde necesita un poco más de rendimiento.
Finalmente, una nota sobre las licencias: si inicia Windows de forma nativa , verá hardware diferente y lo interrogará sobre las licencias. Este es un problema menor con Windows 10, que simplemente te molestará a medida que te lleves bien con tu trabajo. No recuerdo cómo resolvimos esto para esas estaciones de trabajo geofísicas; Recuerdo que teníamos una licencia por volumen y posiblemente alguna ayuda de un representante de Microsoft.
Epílogo: Remote X y VirtualGL
También he configurado estaciones de trabajo usando VirtualGL y un clúster de GPU para simulaciones de petróleo de alto rendimiento. Incluso hice esto en AWS, pero no lo recomiendo por varias razones: costo, rendimiento y conveniencia.