L'éternel site
xlr8yourmac nous livre quelques détails croustillants sur le Mac livré aux développeurs pour qu'ils puissent commencer leur travail de recompilation sur x86.
Pour commencer, la machine est un PowerMac G5 équipé entièrement par du matériel Intel : contrôleurs, carte graphique GMA 900 intégrée qui supporte Quartz Extreme, et bien sûr Pentium 4 660 (3,6 Ghz) simple core. Si ce processeur est capable d'accepter les instructions 64 bits, Apple n'en tient pas encore compte.
Il est tout à fait possible de rajouter une autre carte graphique plus puissante, mais pour le moment il n'existe aucun autre driver. La balle est donc dans le camp d'ATI et d'nVidia.
Si nous savons que les Mactel de l'année prochaine ne posséderont plus d'Openfirmware, le Mactel de développement possède lui un BIOS Phoenix, tout ce qu'il y a de plus classique. Reste à savoir si Apple utilisera aussi un BIOS dans la version finale des Mactel, ou quelque chose de plus avancé et de moins limitatif comme
EFI.
Grâce au BIOS et aux composants standards, il est tout à fait possible de faire tourner Windows XP sur cette machine. Espérons que cette compatibilité matérielle sera préservée. On aurait alors deux ordinateurs pour le prix d'un !
La machine est équipée du FireWire 400 mais pas 800, et de l'USB 2. Il est possible de booter sur l'USB2 mais pas sur le FireWire. Le Netboot par contre fonctionne.
Pour la mémoire, Apple utilise de la RAM DDR-2 à 533 MHz et du SATA-2 (3 Gb/s théoriques) pour le disque dur. Les documentations d'Apple précisent que le disque des Mactel utilisera un autre système de partitionnement que les MacPPC, sans plus de précisions.
Cette machine de développement n'est donc rien d'autre qu'un banal PC avec les dernières nouveautés technologiques qui ne reflètent malheureusement en rien la version qui sera commercialisée du Mactel. Pour le processeur par exemple, on ne trouvera jamais ce modèle dans nos macs, mais plus probablement des processeurs de dernière génération (64 bits et multicores) dont les derniers Pentium M pour les portables (les ressources des derniers outils développeurs y font d'ailleurs allusion).
La question a aussi été posée concernant le choix d'Intel plutôt qu'AMD. Apple répond en disant qu'AMD connaît les mêmes soucis de production qu'IBM, même si leurs processeurs sont aujourd'hui plus performants. De même, le CELL d'IBM n'est pas adapté à une utilisation PC. Les applications tourneraient moins vite que sur x86 ou PPC, et surtout le travail pour les développeurs aurait été beaucoup plus important qu'il ne l'est pour passer au x86. Le choix ne s'est donc pas fait sans mûre réflexion et il ne reste plus qu'à faire confiance à Apple pour nous proposer l'année prochaine LE Personal Computer que tout le monde attendait et en profiter pour couper l'herbe sous le pied de Longhorn...
[Maj]Pour les curieux,
O'Grady's PowerPage publie quelques photos de la bête :

On peut aussi noter que toutes les applications livrées avec Mac OS X sont natives x86, sauf iTunes qui est encore développé avec Codewarrior. Il serait intéressant de savoir comment Apple va procéder, s'ils vont partir du code Windows ou du code Mac... Cela ferait une bonne étude de cas pour les développeurs.
Apple commence a distribuer aux développeurs les documentations qui leur permettront d'effectuer une transition en douceur vers l'architecture x86. Dans l'une d'entre elles, nommée
Universal Binary Programming Guidelines, Apple nous en apprend un peu plus sur Rosetta, le super émulateur PowerPC pour Intel.
Tout d'abord,
cnet vient de confirmer que Rosetta avait été développé conjointement avec
Transitive, une compagnie créée par des universitaires anglais, dont les technologies avancées d'émulation sont déjà utilisées par SGI entre autre.
Rosetta permet donc de traduire à la volée du code PowerPC en x86. A la différence d'un émulateur plus classique, Rosetta permet de buffériser le code avant qu'il soit exécuté. Ainsi, le code est traduit en binaire x86 par bloc, puis est exécuté. La technologie de Transitive permet en plus d'optimiser ces bouts de codes en fonction de leur utilisation. Plus ils seront utilisés, plus ils seront optimisés en plus d’êtres disposés en mémoire cache (donc déjà traduits). Le gain de performance est donc significatif.
Rosetta dispose cependant de quelques limitations :
- Impossible d'exécuter du code Altivec
- Impossible d'exécuter une application Mac OS 9
- Impossible d'exécuter du code spécifique au G4 ou G5. Seul le G3 est émulé.
- Impossible d'interagir avec une extension du kernel ou d'émuler une telle extension.
- Impossible de faire tourner les applications trop gourmandes en temps machine comme les grosses applications 3D ou de raytracing.
Rosetta sera aussi utilisé dans le cas où l'application, même si elle est universelle et contient du code x86 et PPC, fait appel à des plugins uniquement PPC.
Mais le principal avantage dans cette technologie est que comme pour l'émulateur 68k intégré à Mac OS 9 à son époque, les applications se lancent de manière totalement transparente pour l'utilisateur et partagent l'espace de travail avec les applications natives x86.
Même si la vitesse n'est pas phénoménale, l'utilisation reste donc souple et suffisamment confortable pour qu'Apple réussisse une cohabitation en douceur. D'autant que Transitive possède dans ses cartons la technologie inverse, c’est-à-dire qu'elle est capable de fournir à Apple la possibilité de traduire du code x86 pour un processeur PowerPC.
Et si Apple s'affranchissait complètement du processeur et continuait à vendre indifféremment des PowerPC et des x86 pour les nombreuses années à venir ?
Au delà du choc provoqué par l'annonce du passage au Mactel, qui déjà commence à s'estomper, un autre problème continue de tarabuster de très nombreux lecteurs. Faut-il encore acheter un Mac à base de Power PC ou pas ?
Commençons par récapituler ce que nous savons.
Le premier Mactel devrait arriver dans un an, et la gamme sera totalement switchée un an plus tard.
Apple par la voix de Steve Jobs s'ent engagé à supporter encore longtemps le Power PC. L'expérience du passé prouve qu'Apple a toujours supporté les anciennes machines au moins pendant deux ans et presque toujours plus, comme par exemple avec le G3 disparu en octobre 2003 qui supporte Tiger et aura au moins droit à toutes les mises à jours pendant encore au moins un an. Au delà on ne sait pas si Mac OS X 10.5 supportera le G3, mais nous le pensons.
Ensuite passons aux spéculations probables.
- Les dernières machines à migrer seront sans doute les G5, car ce seront les plus pointues, et il y a déjà un fort écart entre ces machines et le reste de la gamme.
- Pour le Mac mini et les portables, surtout le Powerbook, il est plus facile de les lancer. La technologie Centrino est aboutie, et fait un énorme tabac sur le marché. Ceci explique probablement le choix d'Apple entre Intel et AMD.
Donc, en mélangeant faits, expérience et spéculations, on peut considérer que les G4 seront encore supportés au moins jusqu'en 2009 et les G5 en 2010. Sachant que G4 et G5 sont très proches, on peut tabler pour un support jusqu'en 2010 pour les deux.
Dans ce contexte, et en considérant le cycle d'obsolescence d'un ordinateur, la machine sera dépassée bien avant cette date butoir, sachant qu'elle pourra continuer à faire tourner les applications prévues pour elles bien au delà faute d'avoir droit à de nouveaux logiciels.
C'est probablement pourquoi Apple a annoncé tellement en avance sa migration. Seule une faible partie des clients voulant changer de machines dans la période aura la possibilité de retenir son achat aussi longtemps. Nous ne parlons pas là d'acheteurs particuliers voulant en avoir pour très longtemps, mais des autres qui ont besion d'une machine toujours plus puissante.
Rambus est une société ayant de très nombreux brevets sur la RAM. Mais elle est bien plus connue pour les dizaines de procès qu'elle a intenté en tous sens il y a quelques années. Depuis, la société s'était calmée et profitait des royalties tirés de ses inventions.
Mais difficile de cacher longtemps sa vraie nature. Rambus vient d'attaquer son principal partenaire, Samsung en justice.
Pourtant tout semblait fonctionner entre eux, Samsung payant pour les brevets utilisés. Mais visiblement ce n'était pas suffisant.
Rambus a probablement la grosse tête car ses brevets ont le vent en poupe, étant donné qu'ils sont indispensables pour fabriquer la XDR, mémoire spécifique de la Playstation 3.
Une question nous trotte dans la tête depuis que Steve Jobs a expliqué que le portage d'une Application sur Wintel sur Mactel serait très simple.
Est-ce que ce sera également le cas de certains virus ?
Nous ne parlons pas là des virus utilisant des failles de Windows ou des fonctions spécifiques à ce système, mais à ceux plus rares et plus puissants écrits en assembleur et capables de faire de gros dégâts.
Nous n'avons pas la réponse à cette question, mais nous serions curieux d'avoir celle d'Apple.
Voilà une question que pas mal de gens se posent depuis lundi soir, que ce soit chez les mac addict, chez les power-users comme une bonne partie des membres de macbidouille, chez les utilisateurs courants, mais aussi dans les entreprises, chez les développeurs, chez la concurrence :) ... C'est une question qui concerne tout le monde en somme.
Prenons un peu de recul et regardons devant nous! Que peut nous apporter Intel demain?
Pour la première fois, nous n'avons plus de souci sur le développement hardware de nos macs. En effet, Intel est un monstre qui, quoi qu'il arrive, avancera. S'il ne le fait pas, tout le monde stationne et attend la suite des évènements, y compris les véritables concurrents directs d'Apple que sont Dell, HP, Sony et dans une autre mesure Microsoft. C'est quelque chose de nouveau pour nous, mac users. Nous n'avons pas connu ça depuis bien longtemps... probablement depuis les premiers G3. Et je dois avouer que ça soulage, non seulement nous, mais aussi le staff Apple qui peut ainsi maintenant regarder devant et se consacrer à ce à quoi il excelle, le software.
Les chips Intel ne sont certes pas des exemples de bon développement hardware. L'architecture actuelle est vieillissante. Leurs puces comportent encore des registres 16bits pour DOS et on y voit débarquer des technologies telle NX faites pour "boucher" des problèmes de sécurité par buffer overflow, ce qui est complètement aberrant sur un processeur. Leur consommation, donc dissipation thermique, est aussi hors-norme sur les Pentium 4E. Mais il faut savoir que depuis l'arrivée de son nouveau CEO il y a 2 ans, Intel a pris un nouveau départ. L'architecture NetBurst utilisée dans la gamme "actuelle" de Pentium 4 pour desktop sera abandonnée au profit du Pentium M, descendant du Pentium 3 et qui fait des merveilles sur les portables. Celle-ci a déjà plus que fait ses preuves sur les portables PC. Voilà pourquoi Apple pourra fournir dès 2006 des portables et des Mac Mini équipés de cette technologie. Avec le centrino, l'autonomie grimpera en flèche par rapport aux Powerbook actuels. Du côté des desktops, le Pentium M pourrait arriver en masse d'ici 2006. Les roadmaps d'Intel annonceraient des quadri core pour 2007 en standard et des 32 cores pour les chips les plus évolués! Le 64bits fait aussi partie des prérogatives d'Intel. Apple attend ces chips avec impatience pour remplacer le PowerPC 970, et avec raison ! En face, IBM nous promettait 3GHz pour il y a plus d'une année, de même les G5 pour portables étaient soi-disant prévus pour 2004. Vous avez vu venir quelque chose ? Moi pas ! Un processeur dont il est impossible de baisser la consommation est un processeur mort, qui ne peut que stagner en fréquence. Intel nous l'a démontré avec son architecture NetBurst.

Il va falloir donc changer nos habitudes et commencer à fouiner sur les sites de nos confrères PCistes pour mettre à niveau nos connaissances sur les technologies qu'ils ont à nous apporter, et sur le futur de leurs (nos) processeurs.
Un seul souci toutefois de ce côté, les DRM. En effet, Intel les intègre désormais à ses puces. Apple va-t-il en profiter pour sécuriser son marché musical ? Ou au contraire, vont-ils s'y refuser?
Et pourquoi pas AMD me direz-vous? Figurez-vous que je poserais bien la question à Steve :). Pour ma part je ne peux qu'émettre quelques suggestions. Tout d'abord Apple a subi à deux reprises des lourds revers avec ses processeurs (G4 et G5). Il est peut-être plus sécurisant de se retrouver sous l'aile d'Intel, un géant qui sait tout faire, de la carte mère au CPU en passant par le PCI-Express, qu'avec AMD, qui est nettement plus petit et dont l'avenir reste à la place du second. Par ailleurs, AMD n'a pas vraiment de technologie satisfaisante au niveau des portables. Or c'est un marché très important pour Apple. Non seulement c'est un hit dans les ventes, mais en plus c'est ce qui véhicule le mieux l'image de la marque. Vous ne voyez pas des gens avec des Powerbooks et iBooks partout, dans le train, dans les bars et dans les écoles?
Quoi qu'il en soit, IBM vient de prendre une baffe, volontairement ou non, en perdant la firme "hype" qui mettait en avant ses puces. Eux préfèrent se tourner vers les consoles de jeux, comme nous le savons. Leur image en prend un mauvais coup, de même pour le PowerPC dont on peut désormais se demander quel est son avenir dans les serveurs moyen de gamme de cette firme. Bref, tant pis pour eux, ils font partie désormais du passé... proche du musée. Il est vrai que le PowerPC était un choix plus audacieux, plus élégant, plus intéressant que celui du géant Intel. Apple a voulu y croire et nous y avons cru, mais aujourd'hui, le PowerPC est mort, vive le PowerPC!
Comme vous l'aurez compris je pense que le choix d'Apple jusque-là est excellent. Intel nous offre soudain ce dont nous rêvions, un avenir matériel. Mais ceci implique une multitude de changements au niveau software. Notre OS roulant déjà sur x86, les librairies composant les fondements de Mac OS X y sont déjà fonctionnelles. Cependant, il y a plusieurs catégories de code qui ne seront plus utilisables sur x86, en particulier toutes celles qui touchent directement le hardware : les spécificités du processeur et de la carte mère. Hormis les instructions altivec, ces bouts de code sont rares. En effet, le génie logiciel d'aujourd'hui permet, grâce à de très nombreuses librairies, de programmer proprement et efficacement à un niveau suffisamment élevé pour ne pas dépendre directement du matériel. Les rares programmes qui nécessiteront une refonte (partielle ou globale) sont ceux qui ont été particulièrement optimisés pour notre plateforme en ayant été codés en bas niveau. Je pense en particulier à distributed.net, Photoshop, les iApps et consorts qui utilisent tous altivec, ou de l'assembleur PowerPC. Il en est de même pour les jeux. De ce côté les développeurs ont du travail... mais ils bénéficieront sans aucun doute des expériences de leurs collègues de bureau, qui travaillent sur les versions Windows x86 de ces logiciels. Il ne faut pas croire que ce sera facile ! Mais ce sera sans commune mesure avec le passage d'OS9 à OSX, beaucoup plus facile et beaucoup moins fatigant que les premiers portages de jeux optimisés pour les plateformes Intel vers PowerPC, la partie bas niveau n'étant plus à refaire. Comme les jeux demandent en général des configurations plutôt performantes, la développement de ceux-ci pour PowerPC ne se fera probablement plus. Ce ne sera sans doute pas le cas des logiciels courants, qui pouront être compilés pour les deux plateformes grâce au support des Fat Binaries qu'apporte Mac OS X.
Entre nous, ça permettra peut-être aussi d'avoir une version de Photoshop utilisant CoreImage ;), donc une vraie bombe pour ceux qui ont eu la chance d'utiliser cette technologie.
Il faut aussi ajouter que les méthodes de développement restent les mêmes, comme les librairies. Seul quelques rares développeurs rattachés aux sources touchant le hardware devront se mettre à niveau. Il va sans dire qu'une grande partie des développeurs baissant aujourd'hui les bras sont défaitistes. Et d'ailleurs pourquoi se plaindraient-ils d'avoir du travail? ;) D'une part, les règles du développement logiciel font de la portabilité une des qualités majeure de l'application. Apple vient de le montrer en faisant tourner leur OS sur une plateforme tierce. Les programmes ne suivant pas un minimum de règles dans ce sens sont rares. Le langage C et C++ n'ont d'ailleurs pas été normés pour rien. D'autre part les outils fournis par Apple sont impressionnants pour cette migration. xCode en est la clé. Il permet de détecter les portions de code incompatibles et de compiler directement pour PowerPC et x86. Il est important que les développeurs utilisent dès aujourd'hui ces outils.
Mais qu'est ce que cela va changer pour nous, utilisateurs ?
Au premier abord, rien ! On aura toujours notre boîte, avec un clavier, une souris, un écran et Mac OS X en arrière-plan. Il est probable que certains programmes mettront du temps à passer le cap, mais ce ne seront sûrement pas les mieux développés, et probablement pas les plus intéressants. En outre, le marché du soft sur OS X est un marché assez dynamique. Quand on regarde les perles que nous sortent les groupes comme Omni, Apple et du côté du logiciel libre, je crois qu'il ne faut pas trop nous en inquiéter. Bien au contraire! On va peut-être voir disparaitre quelques monstruosités (restons optimistes :) ).
L'utilisation de la compilation "mixte" PowerPC et Intel permettra de garder une compatibilité descendante sur les logiciels nouvellement développés, pour autant que ceux-ci ne soient pas de trop bas niveau. Il n'y a donc pas de raison pour les utilisateurs courants de ne pas acheter un Mac aujourd'hui.
Je vais refroidir tout de suite les ardeurs de ceux qui croient que le MacTel pourra faire tourner Windows nativement, ou que le nombre de périphériques et de cartes vidéos va augmenter : la ROM restera sans aucun doute propriétaire, c'est une obligation pour la survie d'Apple. N'espérez pas non plus faire tourner Mac OS X sur du non MacTel ! L'OS sera profondément blindé contre ce genre de transplantation. Même si cela devait réussir, je doute que cela aille bien loin. OpenFirmware quant à lui disparait (Apple n'a pas précisé au profit de quoi) et nous passerons sur du Little Endian. Rassurons-nous, une grande partie des périphériques ne nécessiteront qu'une recompilation des drivers avec de très légères retouches du code (du moins pour les drivers en "user-level" comme les imprimantes, les scanners, etc). Pour ce qui est des cartes SCSI, ATA, tout ce qui possède un logiciel interne c'est encore un peu tôt pour le dire, leur driver interne (firmware) étant écrit en FORTH pour l'OpenFirmware de nos PowerPC. Je ne vais pas m'avancer plus sans savoir ce qu'Apple a prévu à ce niveau.
Ceux qui croient qu'un éventuel émulateur Windows permettrait d'atteindre de bonnes performances sur un MacTel, plus particulièrement pour les jeux, se trompent. Ce serait oublier entre autre DirectX, technologie propriétaire de Microsoft "in-émulable" ; et il ne faut pas croire qu'Apple va leur laisser créer un émulateur capable de prendre en charge complètement la carte graphique, de manière à utiliser DirectX "from scratch".
Il ne faut pas trop croire non plus à un surcoût de développement à cause de cette migration, donc à un surcoût pour le consommateur. En effet, les logiciels bas niveau qui doivent être modifiés profiteront des sources de leurs cousins sur Wintel. Ceux qui ne nécessitent pas de modifications ne demandent qu'une recompilation. Il faut peut-être émettre une réserve sur les programmes écrits en Carbon qui sont encore assez courants particulièrement dans les grosses suites. Mais je suis sûr qu'Apple restera à l'écoute des demandes et fera tout son possible pour les satisfaire. Il est fortement probable que les coûts d'achat des Mac baissent avec cette transition, donc quelque part on s'y retrouvera ;).
De plus, Apple nous fournit Rosetta, un émulateur PowerPC pour x86 qui semble nettement plus avancé et performant que ce qu'est Classic aujourd'hui, du moins sur le Pentium 4 3,6GHz monoprocesseur de la démonstration, alors d'ici là sur du multi-core...
Du côté des professionnels, en particulier des indépendants, le taux de renouvellement des machines approche les 3 ou 4 ans. Pour les entreprises, tout dépend de la politique, mais en général c'est un peu plus court. Le taux de renouvellement des logiciels professionnels (coûteux) se situe également dans ces eaux-là, bien que certaines entreprises possèdent des leasing faisant office de licenses (donc possibilité de renouveler chaque année les programmes). Le choix d'acheter un Mac sur PowerPC aujourd'hui reste un choix tout à fait valable pour eux. Le support sera fourni par Apple pour quelques années encore (plus de 3 ans après la sortie des premiers MacTel sans doute). Ces machines ne seront pas moins dépassées après la sortie des MacTel qu'aujourd'hui le sont nos macs avec ceux de demain. De plus et pour la première fois, les clients d'Apple savent enfin où va la firme de Cupertino ! C'est ce que leur réclamaient beaucoup d'entre nous qui utilisons notre machine comme outil de travail. Ce type de clientèle choisira au cas par cas le comportement à adopter.
Les grands consomateurs de Xserve ont un taux de renouvellement des machines beaucoup plus long que les professionnels : un cluster se garde au moins cinq ans, si ce n'est plus. Il est dévoué à des tâches spécifiques qu'une migration générale ne devrait pas influencer. Par ailleurs, la gamme Xserve est promise à un bon avenir, Mac OS X étant le système idéal pour grignoter les parts de marché Windows et surtout Linux. Pour cela il faudra qu'Apple fasse encore un effort sur les performances interne du kernel et de la couche BSD.
En tant que Mac Users restons optimistes! Nous n'avons rien à perdre, mais tout à gagner. Cette migration est beaucoup moins risquée que celle qu'on a vécue entre le 68k et le PowerPC, de par le hardware qui nous attend, et la robustesse de Mac OS X.
Le premier amour de mon père était un 68k, le mien un PowerPC.... et celui de nos enfants ? Qu'importe ! Si nous sommes en train de lire ces lignes c'est que notre passion c'est Apple et Mac OS !
L'abandon du PowerPC m'a clairement mis un coup, mais ce n'est que de l'émotion, pas ma raison. Comme on dit par ici "Une bonne cuite et ça repart !!". Pour la première fois, j'ai un aperçu de ce que sera mon Mac dans 2 ou 3 ans.