Chronos a écrit 3 commentaires

  • [^] # Re: Poubelle X11.

    Posté par  . En réponse à la dépêche Effervescence autour de la pile graphique libre. Évalué à 1.

    ... Non non, on s'est mal compris. J'ai dit au contraire que X11 est parfait et irremplaçable. Que la pile graphique libre est optimale et que toute tentative de l'améliorer me parait présenter un risque inutile. Je m'interrogeais également sur le bien-fondé de travailler sur Wayland dans de telles conditions. Tout le reste n'est que du plaisir de jouer au troll. Voilà, bonne soirée.

  • [^] # Re: Poubelle X11.

    Posté par  . En réponse à la dépêche Effervescence autour de la pile graphique libre. Évalué à 9.

    X est un système qui a de grandes qualités, la première étant sa robustesse. Si c'était pas le cas, on ne continuerait pas à utiliser un serveur graphique conçu à une époque où les carte graphiques étaient dotées d'un processeur 24 bits, sans mémoire propre et où "l'accélération 3D" n'avaient pas été imaginée même par les auteurs de science-fiction les plus audacieux.

    Seulement la robustesse c'est pas tout. X, aujourd'hui ne "convient" pas : il "suffit". Il est suffisant pour afficher un environnement de bureau et encore, bien péniblement parce qu'il faut voir quels bidouillages insensés sont nécessaires pour qu'un programme destinée à tourner sur X11 garde un comportement prévisible. Il est suffisant pour faire tourner un bureau en cube ou des singeries de ce genre. Mais il n'a tout simplement pas été pensé originellement pour gérer l'affichage de programmes tels ceux qui sont développés aujourd'hui. D'où la nécéssité au fil du temps de le patcher et le repatcher dans tous les sens avec la perte de consistence et l'accroissement de la lourdeur que cela implique. Pendant ce temps, le matériel et les programmes conçus pour l'exploiter continuent à évoluer et on réclame à un brontosaure déjà bien essoufflé de continuer à suivre.

    Comme disent ironiquement les historiens militaires : "la vitesse de déplacement d'une colonne en marche est égale à la moitié de la vitesse de déplacement de son élément le plus lent". C'est pareil pour la pile graphique libre. Non pas que X11 soit lent en lui-même (il est même plutôt rapide effectivement) mais il ne peut pas (il n'a pas été conçu pour) gérer de manière efficace et avec une grande qualité de résultat les commandes qui lui arrivent de douzaines de programmes en même temps comme les systèmes modernes le réclament; la seule de façon d'assurer un minimum de stabilité et de prévisibilité à ces programmes, en garantissant que X11 qui travaille de manière largement asynchrone fera toujours son boulot de la façon que l'utilisateur (qui ne voit rien de tout ça) attend est de les ralentir (!) par tout un tas de bricolages plus ou moins propres.

    Alors oui, X11 est un système qui marche bien et qui est solide, tant qu'on ne lui demande que le minimum (le genre de choses qu'on pouvait lui demander en 87). Ses temps de latence sont très faibles dans des conditions de test en laboratoire. Mais qu'on le mette un tant soit peu sous pression avec des "effets de bureau" à la Compiz et on devine vite à quelques papillotements de l'image quels bricolages les développeurs ont du mettre en place pour contourner les faiblesses qui sont apparues depuis : X11 s'est alourdi pour répondre aux exigences des systèmes actuels et les programmes ont du être alourdis pour palier aux alourdissements de X11. C'est là que c'est nul.

    En fait, la meilleure preuve que X11 est un système extraordinaire, c'est que malgré tout ça, il tourne encore. Mais il ne tourne pas "bien" : il tourne. Tout dépend de ce qu'on l'on veut. Si on veut quelque chose de fiable est qu'on est pas exigeant sur l'esthétique du rendu final, pour doter un serveur d'un gestionnaire de fenêtre basique, alors c'est sûr, X11 est parfait : c'est pour cela qu'il a été conçu. Mais on ne peut pas continuer indéfiniment à exiger de plus en plus de lui. Si ce qu'on veut c'est rejoindre la qualité graphique des systèmes professionnels pour faire du jeu en 3D, faudra bien finir par arrêter de le patcher et le mettre à la benne pour le remplacer par quelque chose de neuf.

  • # Poubelle X11 ! :)

    Posté par  . En réponse à la dépêche Effervescence autour de la pile graphique libre. Évalué à 9.

    La transparence réseau est utile (je bosse avec ssh) mais je doute que ce soit irremplaçable pour commencer. Et s'il n'y a que ça...

    Faut dire les choses telles qu'elles sont : X11 est un brontosaure dont la dernière version (la X11) date de 1987. Je sais pas si on réalise : X11 a été développé pour rester compatible avec des processeurs 16 bits (le processeur 32 bits "grand public" n'avait que 4 ans !) pour bosser avec des cartes graphiques qui n'avaient pas de mémoire propre ou alors une mémoire minimaliste. Pour palier à la lenteur du matériel de l'époque, X11 a été conçu pour être "flexible". "Flexible", c'est la façon polie de le dire. La façon malpolie c'est "X11 gère les instructions qui lui arrive n'importe comment dans n'importe quel ordre".

    Ok, X11 c'est libre, c'est le serveur graphique "historique" des Unices, c'est cool... mais faut pas défendre l'indéfendable comme on le voit parfois. Faut coder en Qt pour se rendre compte de la misère qu'est X11. Et il faut lire à ce sujet la documentation de Qt. En gros : "Vous pouvez concevoir votre programme aussi bien que possible, vous pouvez être sûr qu'il y a quelque part sur la planète un autre utilisateur de X11 chez qui ça marchera mal, de manière complètement différente et qui viendra se plaindre".

    De l'aveu même des gens du MIT qui s'occupent encore vaguement de la maintenance de X11, il n'est pas question de faire un jour un X12. Au fil du temps, le code est devenu un bordel si innomable que personne n'ose s'y attaquer. Quand un problème vraiment sérieux est rapporté, ils patchent le code en bidouillant un "workaround" plutôt que de tenter de le résoudre; c'est devenu infaisable. Une chatte n'y retrouverait pas ses petits.

    Voilà l'état de la "pile graphique libre" : Tout en bas, des drivers libres comme Nouveau qui commencent à être très sérieux et avoir des performances similaires aux drivers proprio. le noyau Linux qui les gère très bien. Eventuelle une couche OpenGL (ou XRender) qui a fait ses preuves. A l'autre bout de la chaîne, des interfaces graphiques comme KDE qui ont de moins en moins ou même plus rien à envier en termes d'esthétique aux interfaces "professionelles" comme Windows. Une couche Qt qui contient les bibliothèques graphiques les plus portables, les plus efficaces et les plus simples d'utilisation du marché.

    Et au milieu de tout ça un mammouth rhumatisant à moitié fossilisé au bout de 23 ans d'existence ( 23 ans sans évolution majeure, rapportée à l'échelle de l'évolution de l'informatique !) dont la lourdeur est seulement masquée par la vitesse du matériel actuel.

    Franchement, le jour où X11 ira rejoindre le cimetierre de l'informatique, je verserai une larme pour la forme mais pas beaucoup plus. Si Wayland (ou un autre) vient le remplacer dès l'année prochaine, ça ne pourra être que très avantageux.