En fait, le problème vient surtout du matériel. Pour l'accélération 2D, à l'époque de BeOS les cartes savaient faire des copies et des remplissages de rectangles, mais aussi du tracé de lignes et d'autres opérations utiles. Déjà à l'époque certaines cartes étaient plus lentes que le CPU sur certaines opérations, et donc c'était délicat de bien utiliser ces fonctions.
Aujourd'hui, les fonctions 2D cablées ont disparu des cartes graphiques, l'accélération se fait via un GPU générique. Il faut donc un driver plus complexe permettant de programmer ce GPU et exposer une API qui va bien (OpenGL pour la 3D, OpenVG pour la 2D). Quand on aura ça, on pourra faire de nouveau de l'accélération 2D.
Le support est présent dans certains drivers (pour les vieilles cartes, donc) et on peut même utiliser les pilotes de BeOS dans Haiku puisqu'ils sont compatibles au niveau binaire. Mais l'app_server (notre équivalent de X11) n'utilise pas ces fonctions, pour les 2 raisons mentionnées: c'est plus lent et c'est moche car il n'y a pas d'antialiasing. Si quelqu'un se propose pour maintenir la version accélérée de l'app_server, les patches seraient acceptés sans problème. Mais, à mon avis, il est plus intéressant d'avoir d'abord la 3D accélérée (car là le CPU n'est pas encore assez puissant - encore que, on fait tourner de la 3D d'il y a 15 ans en rendu logiciel aujourd'hui). Pour la 2D on verra plus tard.
Enfin, quand je parle de machines "récentes", pour moi c'est "moins de 10 ans". J'ai encore un PC qui date de 2003 en état de marche (avec un peu plus de RAM qu'à l'origine il est vrai). Sur cette machine les performances de Haiku sont tout à fait acceptables (c'est un Athlon XP 2200+ avec 1Go de RAM). Je ne pense pas qu'on puisse avoir des performances acceptables sur une machine d'il y a 20 ans (un des tout premiers pentium de 1994): même si l'OS pouvait fonctionner, il serait impossible de lire une vidéo dans un format moderne (et même un MP3 ça risque d'être compliqué), ou d'afficher la moindre page web pleine de CSS et de Javascript. ça ferait donc un système rapide, mais quasi inutile.
[^] # Re: Petites machines
Posté par pulkomandy (site web personnel, Mastodon) . En réponse à la dépêche Haiku se lâche enfin. Évalué à 10.
En fait, le problème vient surtout du matériel. Pour l'accélération 2D, à l'époque de BeOS les cartes savaient faire des copies et des remplissages de rectangles, mais aussi du tracé de lignes et d'autres opérations utiles. Déjà à l'époque certaines cartes étaient plus lentes que le CPU sur certaines opérations, et donc c'était délicat de bien utiliser ces fonctions.
Aujourd'hui, les fonctions 2D cablées ont disparu des cartes graphiques, l'accélération se fait via un GPU générique. Il faut donc un driver plus complexe permettant de programmer ce GPU et exposer une API qui va bien (OpenGL pour la 3D, OpenVG pour la 2D). Quand on aura ça, on pourra faire de nouveau de l'accélération 2D.
Le support est présent dans certains drivers (pour les vieilles cartes, donc) et on peut même utiliser les pilotes de BeOS dans Haiku puisqu'ils sont compatibles au niveau binaire. Mais l'app_server (notre équivalent de X11) n'utilise pas ces fonctions, pour les 2 raisons mentionnées: c'est plus lent et c'est moche car il n'y a pas d'antialiasing. Si quelqu'un se propose pour maintenir la version accélérée de l'app_server, les patches seraient acceptés sans problème. Mais, à mon avis, il est plus intéressant d'avoir d'abord la 3D accélérée (car là le CPU n'est pas encore assez puissant - encore que, on fait tourner de la 3D d'il y a 15 ans en rendu logiciel aujourd'hui). Pour la 2D on verra plus tard.
Enfin, quand je parle de machines "récentes", pour moi c'est "moins de 10 ans". J'ai encore un PC qui date de 2003 en état de marche (avec un peu plus de RAM qu'à l'origine il est vrai). Sur cette machine les performances de Haiku sont tout à fait acceptables (c'est un Athlon XP 2200+ avec 1Go de RAM). Je ne pense pas qu'on puisse avoir des performances acceptables sur une machine d'il y a 20 ans (un des tout premiers pentium de 1994): même si l'OS pouvait fonctionner, il serait impossible de lire une vidéo dans un format moderne (et même un MP3 ça risque d'être compliqué), ou d'afficher la moindre page web pleine de CSS et de Javascript. ça ferait donc un système rapide, mais quasi inutile.