SIMD.js : la programmation parall�le s�invite dans JavaScript
Mozilla pr�sente les �volutions de l�API

Le gain de performances qu�apportent les architectures multiprocesseurs n�est pas encore exploit� par le langage JavaSctipt qui ne permet pas de pratiquer la programmation parall�le.

Plusieurs g�ants de l��cosyst�me de l�IT, dont Intel, Google et Mozilla ont travaill� de concert pour faire du parall�lisme une r�alit� pour les applications JavaScript.

C�est ainsi qu�est n� le projet SIMD.js, une API qui introduit de nouveaux types et fonctions pour permettre aux d�veloppeurs JavaScript de booster les performances de leurs applications, gr�ce � l�exploitation du parall�lisme.

SIMD.js permet aux d�veloppeurs de cr�er de nouvelles classes d�applications de calcul intensif telles que les jeux, des animations, etc. en JavaScript, sans avoir besoin de s�appuyer sur des extensions ou du code natif � non portable �.

L�API repose sur le projet open source d�Intel baptis� SIMD (Single Instruction Multiple Data), qui permet d�acc�l�rer les performances des applications gr�ce � l�utilisation du parall�lisme pour traiter simultan�ment la m�me op�ration sur plusieurs �l�ments de donn�es. SIMD est une technique tr�s populaire pour acc�l�rer le calcul dans les graphiques, l�audio, les codecs, la cryptographie, les simulations en physique et bien plus.

SIMD.js permet donc d�exposer des interfaces de haut niveau SIMD aux applications JavaScript. Actuellement, le projet supporte les plateformes x86 et les plateformes ARM NEON et ESS. Des travaux sont cours pour l��tendre � plusieurs autres plateformes.

� l�origine, le projet est d�riv� de la sp�cification Dart SIMD. Il a �volu� rapidement pour devenir une API plus g�n�rale, avec de nouveaux cas d�utilisation. L�API a �t� approuv�e par le comit� ECMA International TC39, responsable de la standardisation de la norme ECMAscript. Elle pourrait donc �tre prise en compte dans la prochaine sp�cification du langage JavaScript.

Une version de SIMD.js peut �tre test�e dans Firefox Nightly. Le projet est en cours d�examen par l��quipe Internet Explorer de Microsoft et un prototype est en cours de d�veloppement sur une branche de Chrome. Des d�monstrations effectu�es lors de la conf�rence IDF14 sont �galement disponibles en ligne.

La sp�cification de l'API SIMD.js

Les d�mos de SIMD.js � l'IDF14

Source : Mozilla


Et vous ?

Que pensez-vous de SIMD.js ? L�avez-vous test� ?