Tengo una configuración de 3 monitores (cada 1680x1050) a través de una Nvidia NVS440 (2 GPU, 2 salidas por GPU con un total de 4 salidas); esto funciona bien en Windows XP, 7 pero causó dolores de cabeza considerables en Linux (Ubuntu 9.04).
Anteriormente había usado una XFX 9600GT y la XFX 9300GS a bordo para producir el mismo resultado, pero la tarjeta era ruidosa y tenía mucha potencia y esperaba que hubiera algún interruptor mágico en el NVS4400 que eliminó este molesto problema: resulta el NVS440 son solo 2 tarjetas en una PCB física :-p (busqué en la red por todas las personas que usan esta tarjeta en Linux, pero no encontré nada, en todo caso, la tarjeta usa menos energía y tiene menos ventilador, así que me beneficiaría de cualquier manera )
De todos modos, usando cualquiera de las configuraciones había 5 soluciones disponibles:
- Tener 3 instancias X separadas, todas sin unir
- Tener 3 instancias X separadas, unidas por Xinerama
- Tenga 2 instancias X separadas: una con vista doble, ambas unidas por Xinerama
- Tener 2 instancias X separadas: una con vista doble pero sin Xinerama
- Tenga una sola configuración de vista doble y deje la tercera pantalla desconectada :-p
La 4ª opción, usar 2 instancias X separadas y vista doble (pero no xinerama) fue el mejor equilibrio en términos de rendimiento y usabilidad, pero causó 2 problemas realmente molestos
- No podía controlar (sin alterar los accesos directos) en qué pantalla se abría una aplicación, y una vez abierta, no podía moverla a otra pantalla sin abrir la terminal y forzarla a moverse
- Nvidia anula o falsifica las rupturas de Xinerama y las 2 pantallas unidas por Twin view se comportan como una sola pantalla enorme que hace que se abran ventanas emergentes en el medio de ambas pantallas y maximiza el estiramiento de las ventanas al ancho de las primeras 2 pantallas
- Firefox solo puede ejecutar una instancia como el mismo usuario, por lo que tener varias ventanas de Firefox requiere al menos 2 usuarios
La segunda opción "se siente" como la opción correcta, pero OpenGL está básicamente deshabilitado y jugar cualquier tipo de juego o incluso ejecutar algo gráfico causa una gran caída de rendimiento e inestabilidad, incluso intentar ejecutar un emulador básico para gba o gens solo causa que el sistema caer sobre. Funciona lo suficiente como para mirar a su escritorio y no hacer nada, pero tan pronto como comience a hacer algo, abriendo ventanas, arrastrando cosas, ejecutando múltiples copias de Firefox, realmente se siente lento.
La última pantalla dual abierta, solo funciona, funciona perfectamente y todo funciona según lo requerido, aceleración completa de la GPU, dos espacios de pantalla lógicos, perfecto, ¡solo haz que funcione en GPU como ventanas! :-pags
De todos modos, sé que se suponía que RandR tomaría el relevo cuando introduciría objetos de GPU para permitir que varias GPU se unan para crear un gran escritorio en una capa mucho más profunda que Xinerama. Me preguntaba si esto ya se ha solucionado (noté que X server 1.7 está fuera) y si alguien lo ha hecho funcionar correctamente.
De nuevo, mis requisitos son:
- Un escritorio enorme para arrastrar cualquier ventana
- Maximización de ventanas en cada pantalla (como lo hace XP)
- Ejecutar aplicaciones de pantalla completa en la pantalla principal y deshabilitar el mouse para que no se mueva a los demás o a los 3 estirados
Finalmente como nota al margen; Soy consciente del divisor de cabezales triple (y doble) de Matrox, pero incluso el precio que pagan en eBay es más de lo que puedo pagar, mi argumento: no debería tener que comprar hardware adicional para que algo funcione en Linux cuando es algo que ha existido en el mundo de Windows durante mucho tiempo (¿puedes decir que no sigo con X :-p); Si tuviera el efectivo, ya habría comprado la última versión de esta caja (la nueva versión finalmente admite resoluciones grandes como las pantallas que tengo 1680x1050 cada una).