Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 27 reacties
Bron: Mozilla Developer News, submitter: Little Penguin

Door Little Penguin worden we gewezen op de tweede alphaversie van Firefox 3.1, die door de ontwikkelaars van Mozilla afgelopen week werd uitgebracht. "Van de populaire browser Firefox is inmiddels versie 3.1 alpha 2 uitgebracht. Deze versie bevat diverse verbeteringen. Hierbij gaat het onder meer om de ondersteuning voor het video-element die deel uitmaakt van de html5-specificaties. Verder is er ondersteuning voor 'web worker threads', waarmee het mogelijk is om Javascript op de achtergrond uit te voeren zonder dat de browser kan bevriezen. Ten slotte heeft Mozilla de mogelijkheid om aero-style 'glass'-areas in XUL te definiëren.

Hoewel nog niet aanwezig in deze alpha-release, zal Firefox 3.1 ook gebruik gaan maken van een snellere Javascript-engine, die door het leven gaat als Tracemonkey. Met deze nieuwe engine zal het uitvoeren van javascriptcode vele malen sneller gebeuren dan met de huidige browser(s) mogelijk is:"

The second developer milestone of the next release of Firefox - code named Shiretoko Alpha 2 - is now available for download. Shiretoko is built on pre-release version of the Gecko 1.9.1 platform, which forms the core of rich internet applications such as Firefox. Please note that this release is intended for developers and testers only.

This Alpha of Shiretoko / Gecko 1.9.1 introduces several new features: Anyone interested in Shiretoko should read the release notes, as well as the “Firefox 3.1 For Developers” article on the Mozilla Developer Center before downloading. Please use the following links to download Shiretoko:
Moderatie-faq Wijzig weergave

Reacties (27)

Met deze nieuwe engine zal het uitvoeren van javascriptcode vele malen sneller gebeuren dan met de huidige browser(s) mogelijk is.
Google Chrome heeft in hun huidige browser (hoewel ook nog officieel beta), eenzelfde concept ingebouwd voor het compileren van javascripts (V8 genaamd als ik me niet vergis). Tracemonkey is dus niet meer de enige :)

[Reactie gewijzigd door Bosmonster op 8 september 2008 16:34]

Google Chrome heeft in hun huidige browser (hoewel ook nog officieel beta), eenzelfde concept ingebouwd voor het compileren van javascripts (V8 genaamd als ik me niet vergis). Tracemonkey is dus niet meer de enige
Dat beweer ik ook helemaal niet, hoewel je dat misschien wel zou kunnen denken. Met de huidige generatie browsers doel ik op browsers die op dit moment non-beta zijn.

Google Chrome is op dit moment nog in beta en Fx 3.1 zelfs in alpha (verder moet je ook een nightly build downloaden als je van TraceMonkey gebruik wil maken, in Fx3.1a2 is TraceMonkey (TM) namelijk niet aanwezig).

Ten opzichte van Fx 3.0, IE7, Safari 3 et al, geeft TM echter wel een enorme versnelling. In de SunSpider test is TM zelfs sneller als V8, hoewel op pure JS-performance V8 weer sneller is dan de huidige versie van TM.

Voor Firefox is het versnellen van JavaScript overigens dubbel belangrijk, omdat een groot gedeelte van de UI in JavaScript geschreven is. In Mozilla 2 zal dat alleen maar toenemen en is het dus erg belangrijk dat de snelheid waarmee JS uitgevoerd wordt ook toeneemt. (Op dit moment zit men met TM voor een aantal taken al op het niveau van niet geoptimaliseerde C++ code, met ruimte voor verbetering - dus dat gaat ook goed komen ;) )
Die nightly's van Firefox - met TraceMonkey - kunnen trouwens hier worden gevonden :)
Nu moet je in die nightlies nog wel een configuratie-optie instellen om gebruik te maken van de Tracing JIT. Dat doe je via about:config en het instellen van de volgende variable javascript.options.jit.content. Deze moet je dan op 'TRUE' zetten, hoewel dat hopelijk wel duidelijk zal zijn.

Als je overigens door de vele bomen in bovenstaande link het bos niet meer ziet, een wat directere link naar een Firefox met TraceMonkey:
http://ftp.mozilla.org/pu...ghtly/latest-tracemonkey/

Inmiddels zou het JIT'ten van de chrome-javascript code (bovenstaande optie geldt alleen voor JavaScript op "normale" websites) ook stabiel genoeg moeten werken. Dat is aan te zetten door de javascript.options.jit.chrome op 'TRUE' te zetten. Met die optie word alle JavaScript die door Firefox zelf gebruikt wordt (die de XUL-based UI) ook door TraceMonkey uitgevoerd.

Met dank aan de volgende nieuwsposts van Brendan Eich van Mozilla:
TraceMonkey: JavaScript Lightspeed
TraceMonkey Update


Edit: Link naar Fx+TM aangepast

[Reactie gewijzigd door Little Penguin op 8 september 2008 22:38]

En als je (tenminste in Fx3) geen oerlelijke pagina's wilt aanschouwen kun je beter hier kijken. :*)
Het kan nog steeds wel sneller zijn dan Chrome... maar inderdaad, het staat raar
Welke uiteindelijk de snelste is moet nog blijken idd, maar beiden 'claimen' door het compileren van de javascripts vele malen sneller zijn dan interpretatie.

Hier zijn overigens al wel een aantal tests beschikbaar:
http://ejohn.org/blog/javascript-performance-rundown/

[Reactie gewijzigd door Bosmonster op 8 september 2008 17:17]

Op zich is dit ook niet zo gek: Java (en C# geloof ik ook) doet iets soortgelijks. In het begin heb je wat cpu power nodig voor het compilen, en daarna wat ruimte in je main memory om de gecompileerde objecten op te slaan. De eerste keer (tijdens het compilen dus) is er een performancehit. Daarna echter, kan de code veel sneller worden uitgevoerd omdat het al machinetaal is, en dus geen interpretatie behoeft.

Nu zullen er vast ook wel caching technieken bestaan voor interpreted javascript, maar zelfs dan gaat het bovenstaande nog op (hoeveel weet ik echter niet precies).
Wat VMWare en VirtualBox doen heeft niets te maken met de manier waarop V8 en TraceMonkey JavaScript omzetten in machinecode/traced code...

Virtualisatie is een complete andere tak van sport...
Google Chrome heeft in hun huidige browser (hoewel ook nog officieel beta), eenzelfde concept ingebouwd voor het compileren van javascripts (V8 genaamd als ik me niet vergis). Tracemonkey is dus niet meer de enige :)
Tracemonkey gaat verder qua optimalisaties dan V8 op dit moment.
Nee, het tegenovergestelde. Tracemonkey is nog lang niet klaar en veel onderdelen zijn nog niet geimplementeerd.

[Reactie gewijzigd door Bosmonster op 8 september 2008 17:21]

En je wilt beweren dat V8 wel allang klaar is? Tracemonkey / V8 is slecht het begin van wat er mogelijk is met behulp van JIT.
Hoewel ik niet zal beweren dat V8 al klaar is, denk ik wel dat er aan TraceMonkey in de huidige staat meer te optimaliseren is dan dat met V8 mogelijk is.

Aan de andere kant kan het wel zo zijn dat men in de DOM e.d. bij Google Chrome nog een aantal efficiency slagen kan maken...
Hoewel ik niet zal beweren dat V8 al klaar is,
Dat zeg ik ook niet dat jij dat zegt :+ Dat sloeg op de post van Bosmonster.
denk ik wel dat er aan TraceMonkey in de huidige staat meer te optimaliseren is dan dat met V8 mogelijk is.
Zoals ik de discussie heb begrepen, denk ik ook dat Tracemonkey sneller is (en blijft). Zeker als Tracemonkey recursive tracing krijgt. Dan moet ie ongeveer net zo snel worden als V8 op Google's benchmark

Je weet dat er een aparte tracemonkey-branch is neem ik aan?
Note TraceMonkey performing poorly: It's unable to benefit from any of the tracing due to the lack of recursion tracing (as explained above)
Bron: http://ejohn.org/blog/javascript-performance-rundown/

Ik vind Chrome een prima proof-of-concept, echter dat Google actief beta-software aan hordes gebruikers aanraad, blijf ik raar (lees: verkeerd) vinden. Maar goed, dat is een andere discussie.

Hoe dan ook, het blijven interessante tijden op browser gebied.

[Reactie gewijzigd door Smithers.83 op 8 september 2008 22:00]

You can now drag and drop tabs between browser windows
Hier zat ik op te wachten _/-\o_ Tab ordening binnen verschillende FF vensters mis ik soms wel. Zat me er gisteren nog aan te ergeren.
Heb eens naar die bug gekeken, aangezien ik hier echt met tabs kan slepen... In de oude (Firefox 2 en 3.0) implementatie kun je tabs wel verslepen naar een nieuw venster, maar maakt daar een nieuwe tab aan en laadt de url upnieuw. In de nieuwe situatie zal de originele tab dus verplaatst worden (history/cached pagina). Geen reload dus ;)

Maar lekker slepen met je tabs moet je dus al kunnen ;)
Mooi, deze jongen gaat weer eens Sandboxen oftewel stoeien met deze nieuwe versie. :)

Kijken of er nog wat bug-jes te vinden zijn! :9
De 100% CPU bug al opgelost m.b.t. Flash?

Doet er eigenlijk ook niet zoveel toe, de nieuwe bookmarks indeling is buitengewoon irritant. Je hebt totaal geen controle over het beheer ervan hoe jij het ingedeeld wilt hebben (teveel witruimte bijvoorbeeld en met geen mogelijkheid weg te krijgen en bepaalde vooringestelde folders die niet weg te krijgen zijn).

In het algemeen is Fx3 een enorme CPU vreter. Ik blijf mooi bij 2.
Ach, het uiterlijk is gewoon gewenning. Ik vind ff3 "over het algemeen" juist geen CPU vreter, ook al zitter er "specifiek" misschien nog wat bugjes hier en daar.
Ben je zeker dat het geen Flash-probleem is?

Ik dacht gelezen te hebben dat bij de release van Flash 10 (beta) de cpu-belasting sterk verminderd was ten opzichte van versie 9.
ja niet zo vreemd :) in flash 10 zet flash je gpu (videokaart) aant werk ;)
Doet er eigenlijk ook niet zoveel toe, de nieuwe bookmarks indeling is buitengewoon irritant. Je hebt totaal geen controle over het beheer ervan hoe jij het ingedeeld wilt hebben (teveel witruimte bijvoorbeeld en met geen mogelijkheid weg te krijgen en bepaalde vooringestelde folders die niet weg te krijgen zijn).
In de nieuwe indeling kun je de "folders" Labels en "Ongesorteerde bladwijzers" inderdaad niet verwijderen (misschien wel via een about:config hack overigens).

Voor de rest kun je volgens mij alles precies zo indelen als je het in Fx 2.0 ingedeeld hebt. Ik ben zelf echt enorm tevreden met de mogelijkheid om bladwijzers van een labeltje te voorzien en ik gebruik die optie dan ook met veel plezier...
Support voor Aero, hm. Ik hoop niet dat alle plugins nu schermpjes krijgen die bijna helemaal van glas zijn :)
Proof of concept is iets anders dan uiteindelijke toepassing he ;)
Sommige plugin-makers vinden het compleet noodzakelijk om helemaal los te gaan in het "designen" van een GUI ;)

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True