Mise en oeuvre du boîtier Matrox TripleHead2Go Digital
20 mai, 2009 - 09:22 | Ulhume | Matériel Vidéo Article

Basiquement, le TripleHead2Go de Matrox est un petit boîtier permet avec une seule sortie vidéo de gérer jusqu'à trois écrans. La force de cette solution par rapport à Xinerama est qu'elle permet d'avoir un bureau unifié réparti sur toutes les dalles sans aucune perte de performance. Maintenant, comme beaucoup de périphériques, la TripleHead2Go n'est prise en charge que pour Windows et MacOS, mais comme nous allons le voir, elle fonctionne aussi très bien sous Linux.

Déjà, pourquoi trois écrans ?

Pour les gamers la raison est évidente mais pour les autres, la question peut en effet se poser lorsque l'on voit la taille des écrans disponibles. A l'origine ce fût pour moi un simple calcul financier du prix au pixel qui m'avait amené à considérer qu'il était plus rentable de cumuler trois écrans de 17" ce qui donne la surface d'un 30" plutôt que de dépenser une fortune sur un seul 24". Un calcul qui j'imagine est encore aujourd'hui valide mais pour des diagonales bien supérieures.

A l'argument du coût au pixel s'ajoute celui de l'ergonomie du poste de travail. Si un grand écran valait trois de moindre taille, il y a longtemps que l'on aurait changé cela dans les salles de marché et autres postes de supervision. Pour le développement, un grand n'est là aussi pas très intéressant La plupart du temps, et c'est encore plus vrai avec les applications WEB, nous avons en permanence un EDI (ex. eclipse), le navigateur et une fenêtre de traces serveur. Et il est tout de même plus simple d'avoir tout ce beau monde visible en même temps. Dans ce cas, il est globalement plus intéressant d'avoir une surface très large et moins haute que ne le permettrait un seul grand écran. Maintenant ceci est variable d'un métier à l'autre et n'est absolument pas vrai pour un graphiste ou un photographe par exemple.

L'argument énergétique, lui, n'a pas tenu bien longtemps mais en revanche il est faux de penser que 3 écrans consomment plus qu'un écran de plus grande taille. La raison est assez simple à comprendre, en attendant que l'OLED ne se démocratise, une dalle LCD a besoin d'un éclairage arrière. Et la puissance de cet éclairage est proportionnel à la surface traitée, soit en moyenne 0.03W au cm^2.

En revanche, là où le triple écran se distingue c'est dans la modularité des allumages. Vous pouvez en effet n'allumer que les écrans utiles, par exemple en lecture d'une vidéo. Mais je dois bien avouer que c'est le seul cas qui m'amène à le faire. Au fond, là aussi trois écrans ou un seul revient au même, dans les deux cas il faut proscrire les beaux économiseurs d'écrans énergivores pour coller dans votre xorg.conf les lignes magiques qui coupent l'éclairage dès que vous avez le dos tourné :

Section "ServerLayout"
    ....
    Option "SuspendTime" "720"
    Option "OffTime" "840"
    Option "StandbyTime" "360"
EndSection    
section ServerLayout de /etc/X11/xorg.conf

En somme, trois écrans, au delà de la forte impression de Wow que cela décroche chez les copains/copines, sont avant tout extrêmement pratiques à l'usage et cette disposition devient rapidement très addictive.

Animation des trois écrans

Pour mettre en oeuvre trois écrans avec Xorg, il n'y a pas 36 solutions :

  • L'utilisation d'une carte PCI supplémentaire. Le premier inconvénient de cette approche est de trouver la dite carte PCI qui commence à se faire très rare dans les boutiques. En plus cela ajoute de 20 à 40W sur la facture énergétique soit plus que la consommation d'un 17" (en gros 27w). Enfin pour unifier les trois écrans, il faut passer par Xinerama qui est d'une grande lenteur.
  • Acheter une carte 4 sorties, genre une nVidia Quadro NVS 4xx. Pourquoi pas mais elles sont assez chères.
  • Utiliser les GPU déportés via DisplayLink. C'est une bonne solution mais demande à changer les écrans et surtout ce n'est pas encore disponible sous GNU/Linux, mais ça arrive.
  • Le gluttage d'un portable/netbook avec la station de travail via SSH/Synergy. Là aussi ça marche très bien mais point du bureau unifié dans ce cas.
  • Enfin, Le boîtier Matrox qui cumule à peu prés tous les avantage mais qui reste encore assez cher, même s'il l'est un peu moins qu'une carte Quadro NVS.

Après avoir utilisé tour à tour chacune de ces solutions (sauf la quadro) j'ai donc fini par craquer pour le boîtier Matrox avec une certaine appréhension classique pour les Linuxiens : « encore un bidule pris en charge pour Windows et MacOS => des heures de galère sous GNU/Linux ». Et bien pas du tout...

La TripleHead 2 go - Digital edition

Une fois déballé, ce boiter tout métal surprend déjà par l'absence d'alimentation externe, le jus étant pris directement sur le bus USB par le câble fournit avec. Dans le lot, on trouve aussi un câble VGA et un câble DVI Dual-Link. Pas de doc, juste un CD... pour Windows.

Le principe technique de ce boîtier est de s'intercaler entre la carte graphique d'un côté et les écrans de l'autre. La carte voit alors le boîtier comme un écran d'une résolution équivalente aux trois écrans cumulés. Ainsi pour trois 1280x1024, la boite donne une résolution de 3840x1024. Il faut évidement que la carte soit en mesure de prendre en charge cette résolution, ce qui se teste facilement en allant ici.

Le boîtier n'a ensuite plus qu'à séparer le signal pour le répartir sur les trois sorties. A noter que l'édition digital dispose d'une entrée VGA, d'une entrée DVI et de 3 sorties DVI. Le câble dual-link permet quant à lui de prendre en charge de plus fortes résolutions et me concerne donc assez peu. A noter que ce boîtier existe aussi en analogique ou pour deux écrans.

Les branchements se font rapidement et on ne manquera pas de pester contre le câble dual-link qui pour le prix pourrait être un peu plus long. Une fois l'ensemble connecté, câble USB compris, redémarrage de la machine et là, pouf, que dire... ça marche tout seul. Les trois écran s'animent de concert pour offrir la page de démarrage la plus étrange qui m'ait été donné... étalé au format Minitel sur trois dalles... assez déroutant...

Quelques secondes plus tard (vive le SSD), voilà avec X11 lancé avec une belle boite de connexion, elle aussi étalée sur trois écrans, pas terrible... Retour donc en mode console (CTRL-ALT-F1), autentification, et là on commence le paramétrage.

Paramétrage de Xorg

La première étape consiste déjà à faire dans la section Monitor de /etc/X11/xorg.conf. Il n'y a pas grand chose à faire en réalité que d'en mettre le moins possible pour laisser Xorg détecter la résolution automatiquement renvoyée par la boite.

Section "Monitor"
    Identifier "TripleHead2Ho"
    VendorName "Matrox"
EndSection
section Monitor de /etc/X11/xorg.conf

A ce stade, tout doit marcher au redémarrage à un détail prés. X11 s'imagine avoir un seul écran de grande taille. Ainsi même si la résolution sera la bonne sur chaque écran, la maximisation d'une fenêtre se faira sur les trois écrans. En l'absence d'un logiciel de gestion pour Linux nous avons deux solutions : passer par le pilote nVidia, ou passer par compiz-fusion.

Le faux Xinerama de nVidia

L'astuce consiste ici à utiliser le faux module Xinerama du pilote nVidia de sorte à faire croire à X11 que l'on a bien trois écrans avec trois placements différents. Cela se fait dans la section Device de /etc/X11/xorg.conf :

Section "Device"
    Identifier "nVidia"
    VendorName "nVidia Corporation"
    BoardName "NVIDIA GeForce 8600 GT"
    Driver "nvidia"
    Option "DPMS"
    Option "DynamicTwinView" "false"
    Option "AddARGBGLXVisuals"
    Option "TwinviewXineramaInfo"     "True"
    Option "TwinViewXineramaInfoOverride" "1280x1024+0+0, 1280x1024+1280+0, 1280x1024+2560+0"
EndSection
section Device de /etc/X11/xorg.conf

L'utilisation d'une option "twinview" sans activer TwinView peut sembler étonnante mais cela marche parfaitement. Chaque coordonnée indiquée par l'option TwinViewXineramaInfoOverride représente d'abord la taille de l'écran physique, puis le décalage horizontal et vertical.

Ceci fait, il ne reste plus qu'à sauver le fichier de configuration et à relancer X11 pour apprécier à quel point tout cela marche bien.

Les bureaux de compiz-fusion

Autre possibilité si vous n'avez pas de carte nVidia, utiliser compiz-fusion qui permet la séparation d'un grand écran en plusieurs bureaux. Pour cela, vous devez ouvrir le panneau de configuration de compiz et vous diriger vers Général/Options Générales/Display Settings. Vous y trouverez une zone d'édition nommée Sorties qu'il suffit de renseigner un peu comme le faux Xinerama de nvidia

1280x1024+0+0
1280x1024+1280+0
1280x1024+2560+0

Ceci étant fait, allez dans l'onglet Desktop Size pour définir la Taille virtuelle horizontale à 1 (comme les autres paramètres de la page). Validez l'ensemble et c'est gagné.

Conclusion

Même si l'on regrettera l'absence de logiciel de paramétrage dynamique (surtout pour les joueurs) et le fonctionnement étrange en mode texte rendant la console système assez inutilisable, ce boîtier est juste parfait :

  • Le bureau est réellement unifié sur les trois écrans ce qui n'était pas le cas pour SSH/synergy
  • Par rapport à Xinerama, les performances sont strictement les mêmes que pour un seul écran.
  • La consommation est réduite à moins de 500mA ce qui est mieux que toutes les autres solutions (carte PCI ou machine séparée).
  • Le boitier pendre en charge le DPMS ce qui permet d'éteindre les trois écrans d'un coup automatiquement en période d'inactivité.
  • Enfin c'est d'une simplicité de mise en œuvre absolument déconcertante, à se demander pourquoi je me suis embêté avec les autres solutions pendant deux ans...

Commentaires

freeflyer, le 20 mai, 2009 - 09:06

J'ai une question bête..
As-tu essayé de faire fonctionner l'utilitaire windoz de paramétrage sous wine ?

Ulhume, le 20 mai, 2009 - 09:26

Niet, pour la simple et bonne raison que pour l'instant je n'ai pas les paquets Wine 64 bits sur la 2009.1. Ceci étant dis, je ne sais pas bien si Wine gère les périphériques USB. A l'époque où j'avais essayé pour ma souris Razer, ça avait un peu fait choucroute...

malic, le 5 août, 2009 - 10:28

Pas de gestion de l'USB sous wine. Donc pas d'utilitaire de gestion de hard en USB. C'est comme ça.
Il n'en reste pas moins que c'est un des meilleurs logiciel que j'utilise quotidiennement, le wine.

djib, le 1 août, 2009 - 13:59

Je ne sais pas ce qu'il en est pour Wine car sur mon PC de jeux j'ai encore
un Windows comme OS principal. J'ai trop de matos et de jeux qui ne sont
malheureusement pas compatibles avec Linux (ou tout du moins pas
compatibles sans transpirer un peu). Toujours est-il que l'utilitaire de
Matrox apporte beaucoup d'options de configuration intéressante :
* possibilité de régler le comportement de l'écran à diverses
résolution (par exemple demander à ce que les résolutions 4:3 ne
s'affichent par défaut que sur un écran) et éviter donc l'aspect
horrible de l'écran du Bios étalé sur trois écrans dont tu parles ;
* possibilité de configurer l'écran maître pour que les affichages 4:3
non étalés se fassent sur l'écran du milieu et pas un écran des bords ;
* possibilité d'enregistrer des profils de configuration (mon écran du
milieu ayant une meilleure résolution que les deux autres, je bascule
régulièrement de 1600x1200 à 3840x1024 à l'aide d'une pression de
touche) ;
* faire une correction "bezel" qui consiste à décaler l'affichage des
écrans extérieurs pour simuler la présence de pixels sous les bordures
des écrans (très utile dans les jeux pour donner une réelle impression
de continuité entre les dalles) ;
* possibilité d'ouvrir une fenêtre à cheval sur les trois écrans (pour
regarder un films, soyons fous, ou tout simplement pour la retouche photo).
Je ne sais pas faire ça sous Linux, et je n'arrive donc pas à profiter
du plein écran sur trois écrans dans les jeux… c'est dommage ;
* et j'en oublie sûrement.

Toujours est-il que tu as eu raison de faire le grand saut vers le Matrox
TH2Go, cette bête est une tuerie. C'est un réel confort, comme tu le
dis, pour le développement, et aussi la bureautique au quotidien. Je te
recommande aussi fortement de faire l'expérience du « surround gaming »
avec par exemple X-Plane (natif sous Linux), ou des FPS comme Doom 3 (aussi
sous Linux mais qu'il faudra bidouiller un peu pour adapter la FOV, cf
widescreengamingforum.com). L'expérience de jeu est tout simplement
hallucinante et les jeux en 4:3 me paraissent maintenant vraiment fades…

Ulhume, le 10 août, 2009 - 07:58

Merci pour tout ces infos, je pense qu'elle trouveront preneur :) De mon côté n'ayant aucun licence windows, j'ai peu de chance de voir un jour les merveilles dont tu parles...

Poster un nouveau commentaire

Si vous avez détecté une erreur, coquille ou bêtises du même ordre, merci de plutôt passer par le formulaire de contact
Pour vous abonner au flux des commentaires sur cet article, clickez ici.
Pour répondre à quelqu'un, utilisez plutôt le lien répondre qui se trouve en haut (ou en bas) à gauche de son commentaire.
Le contenu de ce champ sera maintenu privé et ne sera pas affiché publiquement. Si vous avez un compte gravatar, l'utilisez pour afficher votre avatar.
  • To highlight piece of code, just surround them with <code type="language"> Your code &tl;/code>>. Language can be java,c++,bash,etc... Everything Geshi support.
  • Tags HTML autorisés : <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <blockquote> <div> <p> <br>
  • Les lignes et les paragraphes vont à la ligne automatiquement.
  • Les adresses de pages web et de messagerie électronique sont transformées en liens automatiquement.
  • Every instance of custom tags in the input text will be replaced with a specific tool shortcut.

Plus d'informations sur les options de formatage

Êtes-vous humain ?
Cette question est là pour déterminer si vous êtes humain ou pas...