Mi Lenovo T420S tiene una tarjeta gráfica discreta con tecnología nvidia optimus. Lo que básicamente estoy tratando de lograr es lo siguiente:
- use una segunda pantalla, conectada a través de DVI / viewport , en el trabajo (VGA está borrosa)
- lograr un rendimiento de batería moderado a bueno mientras viaja (2 horas)
Por lo que descubrí, tengo las siguientes opciones:
- deshabilite Optimus, use gráficos internos exclusivamente
- deshabilite Optimus, use nvidia exclusivamente
- habilite Optimus, use bumblebee ( página de inicio ) / ironhide
(1) descalifica a medida que leo (y tengo experiencia) que DVI / viewport técnicamente no se puede usar a través de gráficos internos
(2) realmente no lo he intentado hasta ahora, solo una instalación de prueba rápida que se inició en una pantalla negra después de agregar los controladores nvidia :-(
(3) siguió este blog , usó abejorros en lugar de ironhide. Bumblebee funcionó (puedo ver impresionantes FPS en glxgears), pero no pude reconocer la segunda pantalla . También me sentí perdido en el nvidia-driver-hell y no tuve oportunidad de ejecutar nvidia-xconfig, simplemente porque no estaba instalado. ¿No tiene idea de si se supone que una segunda pantalla debe reconocerse de fábrica? ¿Necesito instalar más? ¿Necesito jugar con mi xorg.conf? Muchas preguntas, pocas respuestas.
Entonces, ¿qué puedo hacer para lograr mis objetivos? ¿Qué camino seguir y cuáles son los próximos pasos?
Cualquier pista es bienvenida :-)
Actualización : Gracias a todos los que respondieron. Migraré mi entorno de trabajo a una instalación "discreta", y usaré "optimus / bumblebee" como un proyecto de juego paralelo y veré qué tan lejos llego ... Publicaré futuras preguntas en nuevos hilos.
fuente
He logrado conectar dos monitores externos (además del panel incorporado) a mi ThinkPad T430 en Ubuntu 13.04, con Optimus ("Gráficos intercambiables") habilitados (opción 3 en su lista). Los monitores están conectados a través de la interfaz DVI, uno de ellos está girado. A diferencia de otras soluciones, todos los monitores están conectados al mismo administrador de ventanas, por lo que las ventanas se pueden mover libremente entre los monitores. Esto logra el objetivo de mejorar la duración de la batería si está desconectado y usar monitores externos si está conectado.
La idea clave aquí es:
El principal beneficio sobre otras soluciones es que todas las pantallas son (aparentemente) parte de la misma sesión X, por lo que puede mover libremente las ventanas entre las pantallas.
Hasta ahora no he notado penalización de rendimiento.
Instrucciones
Debes hacer lo siguiente:
Para la mayoría de las acciones, necesitará un terminal, un editor de texto y acceso root (
sudo
). Las instrucciones detalladas se dan a continuación.Instalar abejorro
Siga la sección "configuración básica" de las instrucciones . Ejecutar como root, el último comando realmente inicia el reinicio:
¿No intentas ejecutar abejorro solo con el controlador nouveau? . Desde mi experiencia, no funciona, al menos no en esta configuración.
Validación
Deberías poder correr
optirun glxgears
.Instalar una versión parcheada de
xserver-xorg-video-intel
Opción 1: Instalar desde mi PPA (actualmente solo Ubuntu 13.04)
Ejecute lo siguiente como root:
Opción 2: compila e instala tu propio paquete
Elija el parche más reciente para
xserver-xorg-video-intel
. Haga clic en el archivo, haga clic en el botón "Sin procesar", copie la URL en el navegador. Al momento de escribir, esto era https://raw.github.com/liskin/patches/master/hacks/xserver-xorg-video-intel-2.20.14_virtual_crtc.patch .Validación (1), para ambas opciones
El comando
debería mostrar la versión parcheada (
+virtual
sufijo) y la versión original de Ubuntu.Necesario para 13.04, para ambas opciones
Agregue lo siguiente a su
/etc/X11/xorg.conf
, cree si es necesario:Validación (2), para ambas opciones
Después de reiniciar, ejecutar
xrandr
en una terminal. La salida debe enumerar dos pantallas virtuales adicionales.Descargar y construir screenclone
Obtenga el fork de screenclone de puetzk y sus dependencias, y compílelo .
Validación
El archivo
screenclone
existe y es ejecutable. (Sin embargo, aún no se ejecutará).Editar
xorg.conf.nvidia
/etc/bumblebee/xorg.conf.nvidia
en un editor de texto, como rootUseEDID
oUseDisplayDevice
Section "ServerLayout"
, agregue una entradaScreen "Screen0"
Al final del archivo, agregue lo siguiente:
Reiniciar
Pruebas
Mi configuración supone un monitor de paisaje conectado al primer puerto DVI de la estación de acoplamiento y uno vertical conectado al segundo puerto DVI. Ejecute los siguientes comandos en un terminal desde el directorio donde se encuentra screenclone , adapte según sea necesario.
Observe cómo la rotación de la pantalla debe definirse dos veces. Puede omitir la segunda invocación de
xrandr
si no se desea rotación (y, por supuesto, la--rotate left
de la primera invocación).Al terminar
screenclone
con Ctrl + C (que se ha puesto en primer plano nuevamente usandofg
), el adaptador de gráficos discretos se apaga. Puedes verificar esto concat /proc/acpi/bbswitch
. Aún así, el espacio de pantalla está reservado para los dos monitores ahora desconectados. Para volver solo a la pantalla de la computadora portátil, useLimpiar
Copiar
screenclone
a un directorio que está en elPATH
(por ejemplo,/usr/local/bin
)Cree una
bash
secuencia de comandos para automatizar el inicio y el apagado de las pantallas externas. Este script configurará las pantallas externas al inicio y cambiará a la pantalla de la computadora portátil solo al salir (por ejemplo, presionando Ctrl + C).Opción alternativa: Mi colección de scriptlets contiene dos scripts
extmon-start
yextmon-stop
, que habilitan y deshabilitan el segundo y el tercer monitor. Edite elextmon-start
script para adaptarlo a su configuración.Referencias
Mi respuesta se basa en gran medida en los siguientes recursos:
fuente
xorg-xserver-video-intel
controlador de stock , no es necesario usar mi PPA o el parche. Tampoco es necesario editarxorg.conf
, los CRTC "virtuales" se crean bajo demanda. El resto debería ser similar. Ahora hay incluso una herramienta que reemplazascreenclone
, se llamaintel-virtual-output
y se integrará más fácilmente con la configuración de pantalla de su escritorio. Haré una escritura una vez que obtenga mi configuración de tres cabezales con rotación para que funcione correctamente.xrandr --newmode
; lacvt
herramienta ayuda a calcular la línea de modo) y asignarlo a la pantalla virtual (xrandr --addmode
). El modo debe coincidir con el de su pantalla real. Vea si una segunda pantalla virtual se crea automáticamente. Esto es lointel-virtual-output
que hace la herramienta por sí misma, y parece que los últimos problemas que se han solucionado o están por solucionarse.No sé acerca de T420S, pero mi T420 puede durar hasta 9 horas con
Y sí, esta es la batería predeterminada. Por lo tanto, debería obtener fácilmente 2 horas, entonces:
(2) En /etc/X11/xorg.conf Pruebe con la opción "ConnectedMonitor" "DFP-0" para el controlador nvidia.
(3) Para usar su segunda pantalla, necesita un abejorro modificado xorg.conf Consulte https://github.com/Bumblebee-Project/Bumblebee/issues/77 para obtener más información.
fuente
Yo uso un T420 en el trabajo con una estación de acoplamiento tipo 4438. Puedo usar dos monitores panorámicos (sin el monitor principal) o 1 monitor panorámico con el monitor principal utilizando los puertos DVI en la estación de acoplamiento.
Simplemente desactivé optimus y lo configuré para usar siempre la tarjeta NVIDIA. Luego ejecuté nvidia-xconfig y utilicé la configuración de nvidia para configurar los monitores duales, guardé la configuración en el archivo xorg.conf y reinicié la máquina.
Puedo obtener un poco más de 2 horas de duración de la masa de esta manera (sin ninguna otra modificación para permitir una mayor duración de la batería). El principal problema que tengo es que no cambia automáticamente a un monitor cuando se reinicia desde la estación de acoplamiento o se retira de la estación de acoplamiento. Sin embargo, no he tenido tiempo de investigar esto.
Intentaré Bumble Bee más adelante esta semana para ver si puedo hacer que funcione. Intentaré recordar publicar aquí si puedo hacerlo funcionar.
fuente
Tengo el mismo problema. He investigado un poco y lo he resuelto parcialmente. Todavía estoy trabajando en una solución completa.
El hardware: Thinkpad T420s con base para Thinkpad de gráficos Intel HD 3000 Nvidia 4200M +.
El síntoma: los T420 no pueden reconocer la pantalla externa que se conecta a ningún puerto DVI en la base. Puede reconocer la pantalla externa a través del puerto VGA en el dock. Sin embargo, la calidad es pobre.
La causa raíz: 1. El T420s tiene una tarjeta Nvidia que se conecta al puerto DVI mientras que la tarjeta Intel al puerto VGA en el dock. 2. A diferencia de Win 7, Ubuntu no puede cambiar entre la tarjeta Nvidia y la tarjeta Intel. Por defecto, solo se está usando la tarjeta Intel.
La solución: 0. Coloque el T420s en la base y conecte la pantalla externa al puerto DVI. 1. Vaya a BIOS, busque "Pantalla", cambie la configuración a "Tarjeta discreta" y "Deshabilite Nvidia Optimus". Ahora T420s se ve obligado a usar la tarjeta Nvidia. 2. Descargue e instale el controlador Nvidia para Linux. Google las instrucciones detalladas. 3. Después de la instalación, haga "sudo nvidia-settings". 4. En la ventana emergente, "Configuración de pantalla del servidor X", haga clic en "Detectar pantallas". Podrá ver la pantalla externa ahora. 5. En la misma página, cambie la configuración a "TwinView", la resolución "Auto" o la resolución nativa de T420s, por ejemplo, 1600x900. 6. Haga clic en "Aplicar", podrá ver el escritorio de la pantalla externa. 7. Haga clic en "Guardar en archivo de configuración X".
[Actualizar]
Con Disper, puedo alternar la pantalla del T420s y la pantalla externa manualmente. Todavía no es la mejor solución, pero creo que es lo suficientemente bueno para mí.
Por lo tanto, intente la combinación de gráficos discretos + disper de Nvidia.
fuente
La salida VGA de mi T520 funciona muy bien (no es borrosa) usando gráficos integrados (configuración de BIOS de Intel), pero tengo que configurar el monitor 1920x1200 para que solo muestre 1600 píxeles de ancho, de modo que obtengo rayas negras en ambos lados. Sin esa configuración, el monitor extiende los 1600 px en toda la pantalla de 1920 y sí, las cosas se ven borrosas.
Hice una pregunta similar hace unos días. y sigo confundido por estas respuestas. Parece que @Anonymous Coward está ejecutando solo un monitor externo, pero yo (y creo que el OP) quiero poder ejecutar la pantalla de la computadora portátil (en Intel) y un monitor externo a través de DisplayPort / DVI (en nvidia). Así que creo que puede ser necesario Optimus / Bumblebee.
Si descubro este problema de visualización, ciertamente publicaré mis hallazgos; haga lo mismo si llega primero a la línea de meta.
fuente