Suivez-nous

Prospective

Réflexions sur Quartz Extrême

Itoo

Publié le

 

Par

image 100 x 88

 Les réactions souvent exarcerbées de certains d’entre vous à propos de l’accélération graphique appelée Quartz Extrême implémentée dans la version Jaguar de Mac OS X m’ont incité à chercher quelques renseignements sur la question. Au cours de mes balades, j’ai fini par tomber sur les réflexions de Lowell Stewart à ce sujet. Elles m’ont paru pleines de bon sens aussi ai-je décidé de vous en faire profiter en les traduisant (librement parfois, vous me le pardonnerez ) dans notre bonne vieille langue.
Lowell Stewart a publié ses réflexions sous la forme d’une contribution sur le site Insanely-Great dans un fil de discussion qui faisait suite à un article sur Quartz Extrême. Vous trouverez l’article original et la discussion en question à cette adresse :
Un regard sur Quartz Extrême

En voici la traduction :

Une des raisons pour laquelle Quartz est toujours si lent avec 10.1.x tient à sa nature profonde : Il s’agit d’un modèle de composition graphique et non pas d’un modèle traditionnel. Pour dire les choses simplement, chaque pixel dans un modèle traditionnel (Mac OS 9 ou antérieur, Win 9x/NT) “appartient” exactement à une application et à une seule, et c’est à cette application que revient la tâche de dessiner à l’écran le pixel qui lui appartient. La plupart des accélérateurs 2D actuels tiennent cet état de fait pour acquis et sont fabriqués en présupposant que la trame de dessin à l’écran appartient à un processus et à un seul.

Dans le modèle de composition graphique de Mac OS X, il en va tout autrement. Le comportement de chaque pixel à l’écran peut être en effet influencé par un nombre indéterminé d’applications tierces (transparence, ombres portées etc.). Ce n’est pas parce qu’une application veut dessiner un pixel en blanc, qu’il sera blanc pour autant au final puisqu’une autre fenêtre peut porter une ombre sur lui par exemple et changer ainsi son comportement. En réalité, chaque espace de dessin d’une application devient une “couche” sur le bureau et c’est au système que revient l’immense tâche de déterminer la façon dont chaque pixel apparaîtra vraiment à l’écran en “composant”, c’est à dire en mariant les différentes “couches” tout en tenant compte de leurs interactions et des priorités diverses de l’interface. Aucun des accelérateurs 2D actuels n’est capable d’accomplir cette tâche monstrueuse qui est répétée pour chaque pixel dessiné à l’écran à chaque instant.

En revanche, les cartes d’accelération 3D du marché possèdent certaines fonctionnalités qui, dans une certaine mesure, peuvent faciliter ce travail de composition. Parmi celles-ci, on peut penser que Quartz Extrême utilise sans doute les capacités d’application de texture (texture mapping), d’antialiasing et de composition et mixage alpha (alpha blending/compositing) des cartes graphiques modernes. Disons simplement que Quartz Extrême dispose chaque “couche” genérée par les diverses applications dans un plan particulier d’un espace à 3 dimensions et qu’il utilise l’accelérateur 3D pour arranger le “mariage” de ce plan avec les autres.

Une approche similaire est d’ailleurs envisagée par Microsoft pour sa prochaine version de Windows dont le nom de code est “Longhorn” (en réference à une race particulière de bétail qui hante les grandes plaines américaines depuis la conquête de l’Ouest). A ce sujet, les documentations techniques de Longhorn (que vous pouvez consulter à cette adresse) éclairent la controverse actuelle sur les exigences matérielles requises par Quartz Extrême, d’un jour particulier. A cet égard, un document de Microsoft sur les pré-requis en matière de bande passante graphique estime à 0.93 GB par seconde, le débit de données necéssaires pour faire fonctionner le modèle graphique de Longhorn et seulement lui. Cela suppose un port AGP 4x au minimum.
A la lumière de ces quelques eléments, on peut donc s’estimer plutôt satisfait qu’Apple ait réalisé l’exploit de se contenter d’un port AGP 2x pour gérer un modèle que Microsoft ne pourra lancer sur le marché avant 2004 au mieux.

Si le sujet vous intéresse, vous trouverez quelques renseignements à propos de Quartz sur le site d’Apple à cette adresse :
Technologies graphiques au sein de Mac OS X

et à celle-ci :
OpenGL