Jump to content

Firefox ускорява WebAssembly чрез стрийминг компилация


Recommended Posts

sprint_competition_fast_speed_start-100746074-large.jpg


Браузърът Mozilla Firefox 58 , който ще бъде пуснат на 23 януари, разполага с компилационна технология, предназначена да направи портативния формат WebAssembly още по-бърз.

Това повишаване на производителността е активирано чрез стрийминг компилация, в която браузърът компилира WebAssembly код, дори когато се изтегля. Кодът започва да се компилира  и по този начин завършва изпълнението по-рано. Firefox 58 също така разполага с нов двуслоен компилатор, с новият компилатор за базисна линия, който компилира кодовете от 10 до 15 пъти по-бързо от оптимизиращия компилатор.

Комбинацията от поточно предаване и двустепенно компилиране води до това, че кодът за WebAssembly се компилира по-бързо, отколкото може да бъде доставен от мрежата. Mozilla отбелязва, че на настолен компютър е успяла да компилира от 30 до 60 мегабайта код за WebAssembly в секунда. На "средно" мобилно устройство кодът на WebAssembly се компилира на 8 мегабайта в секунда, което е по-бързо от скоростта на изтегляне за почти всяка мобилна мрежа, каза Лин Кларк, старши специалист на Mozilla.

Кларк обясни, че декодирането на WebAssembly е по-лесно и по-бързо от анализа на JavaScript. Това декодиране и компилация може да бъде разделено на множество нишки, което прави съставянето на базовата линия по-бързо. Базовият компилиран код може да започне да се изпълнява върху главната нишка без пауза за компилация. Другите нишки, междувременно, работят върху по-оптимизирана версия на кода, която след това може да бъде заменена. така, че кодът е по-бърз.

Бъдещите планове изискват декодиране и компилиране на първо натоварване на страницата и кеширане на кода на машината в HTTP кеша. Когато се изисква URL адрес, се изпраща прекомпилиран код на машината, което премахва времето за зареждане за последващи зареждания на страници. Докато  JavaScript се кешира по този начин в Firefox 58, все още трябва да се работи, за да се кешира машинния код за WebAssembly файлове.

Разработчиците, които използват Firefox Nightly или beta, могат да изпробват технологията на собственото си устройство oт тук

Източник: itworld.com

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...