Новата библиотека JS-SIMD ускорява изчисленията до 10 пъти, но засега работи само с Asm.js
В нощните сборки на Firefox е включена библиотеката JS-SIMD (Single Instruction, Multiple Data), която позволява паралелна обработка на данни чрез SIMD инструкции на процесора. Това съобщиха от Mozilla. Новият API позволява с една инструкция да се обработват множество данни, което значително ускорява изчисленията.
Ограничена съвместимост и бъдещи планове
Засега JS-SIMD функционира само с приложения, използващи Asm.js – подмножество на JavaScript на ниско ниво. API не е обвързан с конкретна процесорна архитектура и може да използва SIMD инструкции както на Intel, така и на ARM. От Mozilla планират в бъдеще библиотеката да работи и с обикновен JavaScript код, без нужда от Asm.js. В момента се работи и по поддръжка на JS-SIMD в компилатора Emscripten, което ще позволи C/C++ SIMD механизми да бъдат транслирани в JavaScript.
Демонстрация на производителността
За илюстрация на предимствата от Mozilla са показали построяването на Манделбротовото множество със и без използване на SIMD. При използване на JS-SIMD се наблюдава четворно увеличение на производителността, а при други тестове скоростта нараства до 10 пъти. Тези резултати показват потенциала на технологията за значително ускоряване на изчисленията в уеб среди.