JägerMonkey: przyspieszanie SpiderMonkey

JavaScript stała się tak ważnym językiem dla rozwoju WWW, że trwa swoisty wyścig zbrojeń między przeglądarkami, w którym każdy stara się wydatnie zwiększyć prędkość działania programów w JS. Mozilla wykonuje kolejny krok w tym wyścigu.

Prace nad JägerMonkey trwają od 2 miesięcy. Ich celem jest przyspieszenie w tych przypadkach, gdzie TraceMonkey nie daje dużych efektów, tzn. gdzie kodu nie da się dokładnie śledzić.

Strategią JägerMonkey jest kompilacja JIT metod. Daje to wprawdzie mniejszy przyrost wydajności niż przy śledzeniu, ale też jest bardziej uniwersalne, dlatego oba te mechanizmy się uzupełniają, a nie wykluczają. Integracja obu jeszcze nie nastąpiła, ale jest planowana.

Z powodów technicznych deweloperzy wykorzystali w nim JIT Nitro z WebKita zamiast nanojit z TraceMonkey. Już obecnie, bez specjalnej optymalizacji, test SunSpider w trybie “Jäger mode” wykazuje wyniki o 18% lepsze niż standardowy interpreter JavaScriptu w Firefoksie.

żadnych reklam, sama wiedza.

Zarejestruj się na BEZPŁATNY NEWSLETTER i raz w tygodniu otrzymuj najważniejsze wiadmości
ze świata IT, nowych technologii i kryptowalut.

Bez reklam.

  1. Awatar grz
    grz

    Dziwne to problemy techniczne, które powodują, że łatwiej wykorzystać fragment silnika JavaScript z innej przeglądarki niż z własnego 😉 Ale nie można przedstawiać tego jako wadę, na tym polega wg mnie open source, że wykorzystuje się dobry kod, by stworzyć jeszcze lepszy 🙂

    1. Awatar kocio
      kocio

      Nigdzie nie sugerowałem, że to wada – MSZ to fajnie, że nie mają „syndromu NIH”. A powód jest dokładnie taki (pod linkiem):

      Nanojit does a fair number of compiler backend optimizations, like dead store elimination and common subexpression elimination, which allows to generate faster code, but makes it take longer to generate that code. We don’t expect those optimizations to help much in the Jäger domain, so we wanted something simpler and faster.

  2. Awatar jarek
    jarek

    > Dziwne to problemy techniczne, które powodują, że łatwiej wykorzystać
    > fragment silnika JavaScript z innej przeglądarki niż z własnego

    Oh, modularnosc i "reusability" gecko i tej calej wesolej ferajny
    jest juz legendarna. Od wersji 1.0 FF bodajze slyszymy o wydzieleniu
    gecko tak, zeby mozna bylo go wspoldzielic miedzy aplikacjami.
    Za ruski miesiac.

    1. Awatar ja
      ja

      Co to jest FF?

    2. Awatar Ajnsztajn
      Ajnsztajn

      To ciekawe, bo ja jakoś mam wydzielone Gecko i instaluje mi się jako zależność przeglądarki a nie razem z nią ;).

      1. Awatar me
        me

        xulrunner to chyba więcej niż tylko gecko

  3. Awatar mount fuji
    mount fuji

    Well this type of info is actually worth searching for, good info for readers and absolutely shows quality writing. Its cool to have these types of posts about to help keep the information flow. Assisting these who really enjoy this, wonderful operate! Thanks once again for taking the time to place this on-line. I unquestionably liked each portion of it.

  4. Awatar guitar cables
    guitar cables

    I’m impressed, I ought to say. Genuinely hardly ever do I encounter a web site that is each educative and entertaining, and let me let you know, you have hit the nail around the head. Your imagined is excellent; the issue is a thing that not ample persons are speaking intelligently about. I am rather blissful that I stumbled all the way through this in my look for 1 issue referring to this

  5. Awatar bag
    bag

    It is my belief that mesothelioma is definitely the most dangerous cancer. It has unusual features. The more I really look at it the more I am persuaded it does not behave like a real solid flesh cancer. If mesothelioma is usually a rogue virus-like infection, in that case there is the probability of developing a vaccine in addition to offering vaccination to asbestos subjected people who are at high risk with developing long term asbestos connected malignancies. Thanks for sharing your ideas for this important ailment.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *