js engine performance

14
JavaScript Engine Performance Studierea performantei JavaScript Engine la diferite browsere 24.05.2022 Performanta JSE Cristina Mariniuc

Upload: george-frame

Post on 22-May-2015

381 views

Category:

Technology


2 download

DESCRIPTION

A few words about javascript engine implemented by the most popular browsers

TRANSCRIPT

Page 1: Js engine performance

12.04.2023

JavaScript Engine Performance

Studierea performantei JavaScript Engine la diferite browsere

Performanta JSECristina Mariniuc

Page 2: Js engine performance

12.04.2023

JS Engine

JavaScript Engine( sau interpretorul JavaScript / implementarea JavaScript ) este un software care interpreteaza si executa javaScript.

Exista mai multe utilizari pentru JavaScript Engine, insa este cel mai frecvent utilizat in browserele web.

Deoarece JavaScript este folosit frecvent in WEB 2.0, performanta JavaScript critica pentru toti producatorii marilor browsere, incluzand Mozilla Firefox, Google Chrome, si Microsoft Internet Explorer

Performanta JSECristina Mariniuc

Page 3: Js engine performance

12.04.2023

JS Engines -1

• In continuare vom prezenta implementarile de JSE pentru cele mai cunoscute browsere.

• Mozilla: 1. Rhino2. SpiderMonkey3. TraceMonkey4. JagerMonkey5. IonMonkey6. Tamarin

Performanta JSECristina Mariniuc

Page 4: Js engine performance

12.04.2023

JS Engines -2

• Explorer:1. Chakra

• Opera:2. Carakan3. Tuthark

• Chrome:4. V8

• Safari:5. JSCore

Performanta JSECristina Mariniuc

Page 5: Js engine performance

12.04.2023

Mozilla-JS Engine: Rhino

este un JavaScript Engine open source. Acesta este dezvoltat in intregime in Java si este gestionat de Fundatia Mozilla.

converteste scripturi JavaScript in clase.

este destinat utilizarii in aplicatii server-side, prin urmare, nu exista nici un suport built-in pentru browsere care sunt frecvent asociate cu JavaScript.

Performanta JSECristina Mariniuc

Page 6: Js engine performance

12.04.2023

Mozilla-JS Engine: TraceMonkey

este primul compilatorul JIT scris pentru limbajul JavaScript.

compilatorul a fost lansat ca parte a  SpiderMonkey (primul motor JavaScript) la Firefox 3.5, oferind“imbunatatiri de performanta cuprinse intre 20 si 40 de ori mai rapid" decat interpretorul din Firefox 3.

Performanta JSECristina Mariniuc

Page 7: Js engine performance

12.04.2023

Mozilla-JS Engine: JägerMonkey

pe plan intern numit MethodJIT,  concepute pentru a imbunatati performanta in cazurile in care TraceMonkey nu poate genera cod nativ stabil

acesta a fost lansat cu Firefox 4

functioneaza foarte diferit de alte compilatoare din clasa sa avand avantajul de a fi extrem de rapid, ceea ce este util pentru JavaScript, deoarece este frecventa recompilarea cauzata de schimbarea variabilelor.

Performanta JSECristina Mariniuc

Page 8: Js engine performance

12.04.2023

Explorer-JS Engine: Chakra

este un Jscript Engine dezvoltat de Microsoft pentru Internet Explorer 9.

teste efectuate de SunSpider pe 18 nov 2009 arata ca versiunea PDC a IE9 scriptul de executare e mult mai rapid decat IE8, dar mai lent decât Firefox 3.6,Chrome 4, şi WebKit Nightly .

aceeaşi test efectuat pe 15 martie 2010 a aratat primul Anunt IE9 Platform (folosind versiunea in acel moment de Chakra) pentru a fi mai rapid decât Firefox (cu SpiderMonkey), dar mai lent decât Safari (cu SquirrelFish Extreme), Chrome (cu V8), şi Opera (cu Carakan).

Performanta JSECristina Mariniuc

Page 9: Js engine performance

12.04.2023

Google Chrome V8

V8 este un JS Engine de la google si este open source. V8 este scris in C++ si este folosit de Google Chrome, Browserul open source de la Google. V8 implementeaza ECMAScript asa cum este specificat in

ECMA-262, 3rd edition si ruleaza pe sisteme Windows XP si Vista, Mac OS X 10.5 (Leopard), si Linux care folosesc procesoare IA-32 sau ARM.

V8 este dedicat executiei aplicatiilor JavaScript de dimensiuni mari

Performanta V8 este data de cei trei factori de mai jos:1. Acces Rapid la proprietati2. Generare dinamica de cod masina3. Garbage Collection eficient

Performanta JSECristina Mariniuc

Page 10: Js engine performance

12.04.2023

JSE Benchmarks

Performanta JSE pe diferite browsere, poate fi masurata folosind diferite programe benchmark, ca:

1. SunSpider: testeaza doar performanta JSE2. V8 Benchmark: testeaza doar performanta JS3. Dromaeo: testeaza JS, DOM, si JavaScript

Library performance.

Performanta JSECristina Mariniuc

Page 11: Js engine performance

12.04.2023

Teste cu SunSpider

Chrome este cel mai rapid in aceste teste

Rezultatele de la TraceMonkey nu sunt incluse

Performanta JSECristina Mariniuc

Page 12: Js engine performance

12.04.2023

Google Chrome Benchmark

Google Chrome a dezvolata propriul benchmark pentru analiza performantei

Google Chrome decimeaza celelalte browsere in aceste teste

Performanta JSECristina Mariniuc

Page 13: Js engine performance

12.04.2023

Dromaeo

Rezultate pentru masurare performantei JavaScript, DOM, si librariei de test.

Performanta JSECristina Mariniuc

Page 14: Js engine performance

12.04.2023

Concluzie: In toate testele prezentate,reiese ca Google Chrome este cel mai rapid.

Performanta JSE

Cristina Mariniuc