Gallium 3D
-
elgringo a écrit :
Il y a pas des choses plus importante a développer sur MOS et AOS4 qu”une couche 3D ? Pour jouer a quoi ?
Il n’y a rien de plus important à intégrer pour un OS qu’un driver de type gallium, car avec les archi moderne CPU+GPU, qu’on trouve absolument partout maintenant jusque dans les smartphones ça se passe comme ça: les couches de gestion 2D (dessins des fenetres) passe par le GPU, les couche 3D, les décodeurs video passent par le GPU, les api multimedia en général, passent par le GPU. (on peut comparer au blitter des classics qui servaient à la video comme au lecteur de disquette.)
Fab1:
Mais les résultats de Gallium 3D sont quand même si mauvais qu’il est vraiment étrange de ne pas vouloir s’en inquiéter un peu, pourtant… A ce niveau là, ce n’est pas 10% ou 20% plus lent, hein, mais un rapport de 1 à 10 ou parfois même plus.
Incroyable, Fab1 n’a pas compris ce qu’est un basculements en software, et se met à parler comme un commercial… c’est pas grâve on recommence:
Quand un shader passe en “183” fois plus lent, c’est que c’est un shader lourd qui passe en émulation software CPU complète, parce que la machine sur laquelle on le fait tourner n’a pas l’instruction gpu en hard (ou que le compiler GLSL ne gère pas une des instructions) … ça peut basculer cpu même pour des drivers proprio sous windows comme pour gallium/linux. Dans les instructions émulés, il peut y avoir des opérations du genre: vec4=exp(vec4,vec4) que même un G5 ou un intel récent ramerait à émuler, mais que la plupart des petits GPU de base savent faire les doigt dans le nez.
La rapidité et la compatibilité des drivers gallium à vocation à s’améliorer: instruction GPU par instruction GPU, le compilateur gallium va s’améliorer de version en version, je le constate déjà sous mon linux.
Franchement, gallium c’est super bien: pour avoir testé des compatibilités de shaders sur plusieurs machines, sur linux et windows, il y a beaucoup plus pourris que ça,même en propriétaire (je pense à l’affreux driver GMA windows et son GLSL qui ne sait pas faire sqrt et qui ne sait pas passer en software ! (note: ça s’est amélioré avec le GMA 4500 HD)
Sur tout les bench de fab1, on parle de programmes qui ne peuvent pas tourner du tout sur une machine en GL1 ! personne n’a donc mieux sur les amiga-like. Gallium n’a pas de “concurrent”, un driver propriétaire est (sensé) être plus optimisé, mais n’offre pas forcément OpenCL, etc…, et ne suit pas forcément les changement de version de l’os sur lequel il tourne.
Encore une fois: mon gallium linux sur ati xpress r300 réussi à décoder de la video, lancer sauerbraten en GLSL (à 20fps, merci) avec des super effets infaisable n GL1.4, donc merci gallium.
… bon pour être clair, avec gallium 3D sous amiga on va avoir ça:
Sauerbraten (Cube 2) + Gallium3D – medium quality (mattez bien les reliefs et les éclairages !!!)
déjà sur aros:
Gallium 3D on AROS, cube2 1920×1200 all details at full.
… et moi qui code des effet GPU, je vais bien m’amuser à afire des trucs de ce genre, de loin infaisable en GL1.x et cpu:
… et je pense qu’on finira par voir gallium sous morphos aussi, tout simplement parce qu’il n’y n’existe pas d’alternative à gallium pour des questions de fonctionnalités et de maintenabilités, et que certains dev morphos ne sont pas idiots.
@Krabob :
+1 je t’approuve
… et je pense qu’on finira par voir gallium sous morphos aussi, tout simplement parce qu’il n’y n’existe pas d’alternative à gallium pour des questions de fonctionnalités et de maintenabilités, et que certains dev morphos ne sont pas idiots.
Si, il y a une autre solution … réinventer la roue et perdre encore … 4 ou 5 ans MDR
@ +
AmiDARK
AmiDARK a écrit :
@Krabob :+1 je t’approuve
… et je pense qu’on finira par voir gallium sous morphos aussi, tout simplement parce qu’il n’y n’existe pas d’alternative à gallium pour des questions de fonctionnalités et de maintenabilités, et que certains dev morphos ne sont pas idiots.
Si, il y a une autre solution … réinventer la roue et perdre encore … 4 ou 5 ans MDR
@ +
AmiDARK
Réinventer la roue n’est pas forcément une mauvaise chose si et seulement si c’est pour qu’elle roule mieux. (voir le passage de la roue en bois des calèches aux roues de formule 1
RyZen Rulez 😉
si “Réinventer la roue” == faire des drivers GL2 homemade par marque et par carte , soit l’équivalent de refaire un compilo JIT pour chaque assembleur GPU différént, plus les problèmatiques habituelle des drivers GL1 et au final assumer la maintenance de cette multitude de bordel, pour au final n’avoir “que au mieux du GL2, et pas OpenVG, OpenCL et autre: beaucoup, énormément de travail en plus, … les gars qui voudraient se lancer dans ça découvriraient surement qu’il faut commencer par unifier les assemblers GPU pour rendre ça possible: exactement ce que fait gallium, et ainsi de suite… mieux vaut faire progresser le projet opensource existant et en faire profiter tout le monde.
edit: c’est bien simple: gallium est tellement bien foutu qu’il a été pensé pour permettre de porter les drivers sur n’importe quel OS. Si le problème initial n’avait été que d’unifier des drivers GL pour linux, ils auraient une architecture bien différente. Un driver proprio ou un driver homemade/reverse engeenering aurait aussi ça en moins !
Ce n’est pas un projet de blaireaux: je me rappelle que dans un des papiers ils disent vouloir implémenter des moteurs d’optmisation de compilation de très haut niveau: les compilo propriétaires de nvidia et ati sont connus pour ne pas trop optimiser les sources des shaders (exprès, pour certaines raisons): ce serait marrant qu’au final gallium soit plus rapide sur certains trucs. (possible en théorie)
mouai…
Vous parlez d’un problème de performances mais en réalité vu la “ludothèque” qu’on a sur Amiga on devrai plutôt parler d’un problème de rendement.
Peut-être que Gallium à un mauvais rendement mais je pense qu’il vaut mieux avoir beaucoup de cartes supportées avec un mauvais rendement que trois pauvres cartes datant de mathusalem. Au pire on achèteras des super cartes qui tournerons à 10% de leurs puissance mais qui surpasserons tout de même les cartes que l’on peut utiliser actuellement.
Et je ne parle même pas des ouvertures que vont nous permettre OpenCL, la gestion des shaders etc.
Enfin bon, par définition un Amigaïste est toujours mécontent donc tout va bien
A600 + 604n + RTC + Vampire V2 600, Coffin R54 / wb3.1.4.1
A1200 + Vampire V2 1200, wb3.1.4.1Au pire on achèteras des super cartes qui tournerons à 10% de leurs puissance mais qui surpasserons tout de même les cartes que l’on peut utiliser actuellement.
D’aprés la video aros du thread à coté, c’est déjà le cas… et on est certainement plus dans les 70%, et je pense que ce facteur est appelé à monter
Oui aros selon les cartes arrive a faire des choses tres interessantes
krabob a écrit :
si “Réinventer la roue” == faire des drivers GL2 homemade par marque et par carte , soit l’équivalent de refaire un compilo JIT pour chaque assembleur GPU différént, plus les problèmatiques habituelle des drivers GL1 et au final assumer la maintenance de cette multitude de bordel, pour au final n’avoir “que au mieux du GL2, et pas OpenVG, OpenCL et autre: beaucoup, énormément de travail en plus, … les gars qui voudraient se lancer dans ça découvriraient surement qu’il faut commencer par unifier les assemblers GPU pour rendre ça possible: exactement ce que fait gallium, et ainsi de suite… mieux vaut faire progresser le projet opensource existant et en faire profiter tout le monde.
edit: c’est bien simple: gallium est tellement bien foutu qu’il a été pensé pour permettre de porter les drivers sur n’importe quel OS. Si le problème initial n’avait été que d’unifier des drivers GL pour linux, ils auraient une architecture bien différente. Un driver proprio ou un driver homemade/reverse engeenering aurait aussi ça en moins !
Ce n’est pas un projet de blaireaux: je me rappelle que dans un des papiers ils disent vouloir implémenter des moteurs d’optmisation de compilation de très haut niveau: les compilo propriétaires de nvidia et ati sont connus pour ne pas trop optimiser les sources des shaders (exprès, pour certaines raisons): ce serait marrant qu’au final gallium soit plus rapide sur certains trucs. (possible en théorie)
Par réinventer la roue, je ne remettais pas en cause Gallium en soit mais plutot les drivers utilisés.
Par exemple, si c’est possible d’utiliser Gallium avec des drivers “homemade” en lieu et place de “nouveau” dans el cas des cartes Nvidia, peut etre que les performances seront plus au rendez-vous.
En somme il ne s’agirait pas de réinventer la roue de la calèche mais seulement de rempalcer son revetement en métal par un revetement en caoutchou
Krabob : Honnetement, est ce idiot ce que j’avance? Tu peux le dire franco, ca ne me dérrangera pas
PS: cela n’empéchant pas d’utiliser les drivers OpenSource si l’on prefère, voir même provisoirement avant d’avoir mieux.
RyZen Rulez 😉
krabob a écrit :
Sur tout les bench de fab1, on parle de programmes qui ne peuvent pas tourner du tout sur une machine en GL1 ! personne n’a donc mieux sur les amiga-like. Gallium n’a pas de “concurrent”, un driver propriétaire est (sensé) être plus optimisé, mais n’offre pas forcément OpenCL, etc…, et ne suit pas forcément les changement de version de l’os sur lequel il tourne.
Mais Gallium *semble* être largement plus lent pour tout ce qui est supporté actuellement. Si c’est le cas, ce serait une gigantesque régression *aujourd’hui*. A mon sens complètement inacceptable, même une fois les avantages considérés. Mais chacun a son avis.
Bien sûr, rien ne dit que tout cela ne changera pas avec le temps et les années…
soit l’équivalent de refaire un compilo JIT pour chaque assembleur GPU différént, plus les problèmatiques habituelle des drivers GL1 et au final assumer la maintenance de cette multitude de bordel
Cela fait longtemps que plus aucun travail n’est effectué sur les pilotes Virge, Permedia2, Voodoo etc…
Aujourd’hui, il n’existe plus de toute façon que les PowerVR (uniquement dans l’embarqué), les NVidia (non documentés), les Intel (pas dispo hormis pour AROS)…. et donc les Radeon. Unique famille de chips à supporter au final.
Et entre les Radeon complètement pourris (r100) et les trop récents impossibles à utiliser dans les machines actuelles, cela élague pas mal…
Bref, je n’annonce rien mais c’était juste pour signifier que si quelqu’un voulait se lancer là dedans (gigantesque tache, nous sommes d’accord) il n’y aurait tout de même pas autant de chips à supporter et de boulot à dupliquer que tu l’indiques.
@Hénès :
Donc, si je comprends bien, actuellement, personne ne travaille à l’amélioration des pilotes 3D sous MorphOS ?
Et donc, en théorie, pour MorphOS 3.0 … rien de nouveau niveau support matériel 3D ?
J’imagine que ce doit être une tâche assez vaste … Perso … je n’ai pas les compétences pour …
@ +
AmiDARK
@Hénès …
Tu as mal suivi … Je n’ai pas suivi les diverses annonces et démos de ces dernières années concernant MorphOS …
Je n’ai fait que essayer de comprendre ce que tu as marqué juste précédemment. Mais j’ai juste posé une question Hénès
EDIT :
Tu pourrais essayer d’y répondre en partant du postulat que il y a potentiellement des gens qui peuvent lire et qui n’ont pas suivi l’actualité de MorphOS et qui donc préfèreraient une réponse précise
Maintenant, si c’est top secret … je peux comprendre que tu ne veuilles pas en parler pour ne pas dévoiler de secrets sur MorphOS 3.0 Mais dans ce cas là, précise que tu ne peux rien dire sur le sujet :p
@ +
AmiDARK
Il y a déjà eu des démonstrations publiques dans divers salons et rassemblements amigaistes, plusieurs années de suite. Certaines utilisateurs ont même filmé et publié des vidéos de tout cela. En général on y voit bigfoot expliquer les changements apportés et montrer Quake3 aller X fois plus vite qu’avec l’OpenGL actuel etc…
Rien de secret pour qui suit l’actualité donc.
Je suis sûr que daff ou d’autres pourraient retrouver tout cela facilement…
Ou leo qui a certainement déjà du critiquer que tout cela est montré depuis des années sans jamais avoir été rendu disponible jusqu’ici
Sans parler de cette news ici même avec son “Les pilotes 3D pour les cartes Radeon R2xx seront améliorés”…
- Vous devez être connecté pour répondre à ce sujet.
› Forums › AmigaOS, MorphOS et AROS › Développement › Gallium 3D