The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Для WebKit реализован JIT-компилятор на основе наработок LLVM"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Для WebKit реализован JIT-компилятор на основе наработок LLVM"  +/
Сообщение от opennews (??) on 15-Май-14, 23:48 
Разработчики браузерного движка WebKit представили (https://www.webkit.org/blog/3362/introducing-the-webkit-ftl-jit/) FTL (Fourth Tier LLVM), новый режим работы JIT-компилятора, использующий оптимизатор LLVM для генерации эффективного машинного кода. FTL оценивается как стабильный и активирован по умолчанию компанией Apple для OS X и iOS.

Использование оптимизатора LLVM позволило применить для JavaScript методы изощрённой оптимизации, ранее доступные только для компилируемых языков, таких как C++ и Objective-C.  По сравнению с ранее доступным в WebKit JIT-компилятором DFG (Data Flow Graph), FTL в среднем обеспечивает прирос производительности на 35%.  Наибольшая эффективность FTL наблюдается для длительно выполняющихся web-приложений, а также кода, использующего расширение Asm.js.

<center><a href="http://www.webkit.org/blog-files/ftl-jit/four_tier_performan... src="http://www.opennet.dev/opennews/pics_base/0_1400181471.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;max-width:100%;" title="" border=0></a></center>
<center><a href="http://www.webkit.org/blog-files/ftl-jit/ftl_pipeline.png&qu... src="http://www.opennet.dev/opennews/pics_base/0_1400182491.png" style="border-style: solid; border-color: #606060; border-width: 1px;max-width:100%;" title="" border=0></a></center>

<center><a href="http://www.webkit.org/blog-files/ftl-jit/ftl_timeline.png&qu... src="http://www.opennet.dev/opennews/pics_base/0_1400182000.png" style="border-style: solid; border-color: #606060; border-width: 1px;max-width:100%;" title="" border=0></a></center>


URL: https://www.webkit.org/blog/3362/introducing-the-webkit-ftl-jit/
Новость: http://www.opennet.dev/opennews/art.shtml?num=39784

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  –10 +/
Сообщение от Аноним (??) on 15-Май-14, 23:48 
После демарша гугла, эпл начинает потихоньку открывать разработки. Вообще, несмотря на более тормозной движок и отсутствие ряда фич, WebKit выглядит более привлекательно, ибо не является комбайном, которым рулит лишь узкая группа лиц из корпорации добра.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

6. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +16 +/
Сообщение от Аноним (??) on 16-Май-14, 00:35 
Эй парень, они взяли другой проект с открытым исходным кодом, поэтому не имеют право закрывать его. А именно KHTML из Konqueror. В те годы всему миру было начихать на технические превосходства веб-движков, так как у 99% всё равно IE5/IE6. Поэтому интересную разработку никто не замечал. И тут пришла Apple и сделала на его основе Webkit. Именно поэтому Konqueror 4.3 KHTML заменили на Webkit. Это была эволюция, а не как с Opera 12.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

15. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +2 +/
Сообщение от Константавр (ok) on 16-Май-14, 11:51 
Блеен... Прям в сердце ёкнуло, вспомнился Konqueror, было же время... А не у него ли первого вкладки появились? Фича - которую никак было не втолковать пользователям IE

А теперь некому толкать паровоз, да и интернет уже не тот. Хочу машину времени.

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

16. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  –2 +/
Сообщение от iZEN (ok) on 16-Май-14, 12:09 
> А не у него ли первого вкладки появились?

Первые вкладки появились где-то в 1998-99гг в Mozilla Firebird v.0.97.

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

19. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +3 +/
Сообщение от Andrey Mitrofanov on 16-Май-14, 14:48 
> Первые вкладки появились где-то в 1998-99гг в Mozilla Firebird v.0.97.

iZEN даже при чтении википепии вслух врёт. Бе-е-едный!

Не первые, не в морзиле, не в 98-99.
""Mozilla 0.9.5 in October 2001, Phoenix 0.1 (now Mozilla Firefox) in October 2002
en.wikipedia.org/wiki/Tab_(GUI)

Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

22. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  –2 +/
Сообщение от iZEN (ok) on 16-Май-14, 19:20 
>> Первые вкладки появились где-то в 1998-99гг в Mozilla Firebird v.0.97.
> iZEN даже при чтении википепии вслух врёт. Бе-е-едный!
> Не первые, не в морзиле, не в 98-99.
> ""Mozilla 0.9.5 in October 2001, Phoenix 0.1 (now Mozilla Firefox) in October
> 2002
> en.wikipedia.org/wiki/Tab_(GUI)

Видишь, как интересно. Я не нашёл фактоидов, а ты нашёл. ;)


Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

34. "Для WebKit реализован JIT-компилятор на основе наработок..."  +1 +/
Сообщение от arisu (ok) on 17-Май-14, 15:25 
>> А не у него ли первого вкладки появились?
> Первые вкладки появились где-то в 1998-99гг в Mozilla Firebird v.0.97.

opera смотрит на тебя как на изю.

Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

18. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +/
Сообщение от rshadow (ok) on 16-Май-14, 14:44 
Им не надо втолковывать. Идеалогия винды - многооконность на одном рабочем столе.
Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

20. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +/
Сообщение от rob pike on 16-Май-14, 16:54 
Какие новости.
Вообще-то у них изначально был http://en.wikipedia.org/wiki/Multiple_document_interface
от которого только совсем недавно (всего 15 лет назад) отказались по просьбам пользователей
Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

11. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  –2 +/
Сообщение от Аноним (??) on 16-Май-14, 06:52 
> комбайном, которым рулит лишь узкая группа лиц из корпорации добра.

А чем эппл принципиально от гугли отличается?

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

14. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +10 +/
Сообщение от 1 (??) on 16-Май-14, 10:45 
Одни причиняют добро, другие наносят пользу.
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

17. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +3 +/
Сообщение от Константавр (ok) on 16-Май-14, 12:20 
Шуточки? Чойта я не слышал про Эппл Саммнр оф Коде. У Эппла только:
"Кто похвалит меня лучше все-е-ех,

   тот

     получит

        вкусную конфету!"


Блин, советские мультики добру учили.

Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

25. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  –1 +/
Сообщение от Аноним (??) on 16-Май-14, 20:25 
Эппл как минимум активно контрибьютит в LLVM/Clang, Webkit и BSD libc и cups, не считая всякой мелочевки.
Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

29. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +/
Сообщение от Константавр (ok) on 17-Май-14, 11:49 
В этих проектах Эппл заинтересован непосредственно. Тоже самое Андроид, Хромиуи и пр. для Гугла.
Ответить | Правка | ^ к родителю #25 | Наверх | Cообщить модератору

30. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  –1 +/
Сообщение от Куяврег on 17-Май-14, 13:12 
Как бы это и есть то самое "впрягли корпорастов. работают на себя - работают на всех".
Ответить | Правка | ^ к родителю #29 | Наверх | Cообщить модератору

33. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +/
Сообщение от Константавр (ok) on 17-Май-14, 15:16 
> Как бы это и есть то самое "впрягли корпорастов. работают на себя
> - работают на всех".

В том и отличие Google Summer Of Code, Гугл в данном случае является спонсором и меценатом не связанных с ним открытых проектов, в отличие от.

Ответить | Правка | ^ к родителю #30 | Наверх | Cообщить модератору

37. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  –1 +/
Сообщение от rob pike on 18-Май-14, 07:45 
Гугл, разумеется, не является в полном смысле меценатом - GSoC по сути это очень дешевый способ head hunting-а перспективной молодежи. То что при этом что-то делается для каких-то проектов - побочный эффект, не более.
Ответить | Правка | ^ к родителю #33 | Наверх | Cообщить модератору

31. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  –1 +/
Сообщение от Куяврег on 17-Май-14, 13:16 
> Чойта я не слышал про Эппл Саммнр оф Коде.

Так ещё и не вечер. Тут же вопрос стоит именно так: либо опенсорц даёт эффективные методы заработка, и тогда "все там будут", вопрос только кто раньше созреет. Либо есть "патологические враги опенсорц". Я думаю - первое. С одним "но". Сейчас уже видно, что революцию надо распространять на хардварь.

Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

32. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +/
Сообщение от Константавр (ok) on 17-Май-14, 14:50 
Вопрос стоял:

>А чем эппл принципиально от гугли отличается?

Так что отпрыгни.

Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

2. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +/
Сообщение от Аноним (??) on 15-Май-14, 23:51 
время бурного роста абы как, прошло, наступило время оптимизации. во многих проектах заметно, что внедрение качественных универсальных инструментов дает очень быстрый и хороший результат.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +6 +/
Сообщение от Аноним (??) on 16-Май-14, 00:28 
бгг, аббревиатура faster than light совершенно незаметна
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +2 +/
Сообщение от yaleks (??) on 16-Май-14, 00:31 
Мир сходит с ума - сначала перегоняем в JS при помощи LLVM, а затем им же JS в машинный код.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

10. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +1 +/
Сообщение от Аноним (??) on 16-Май-14, 06:41 
Блин, поздно. Qt уже на Blink же переходить стал и неизвестно сколько он оперативки после этого начнет жрать.
Мне Эппловский вебкит гораздо больше в этом плане нравится, начиная где-то с 10.8 он даже более-менее стабильно работать стал и без всякого 1 процесс на вкладку/плагин. Вот этот жор 2-3 гигов Private Memory в Blink/Webkit на 10-15 вкладках дико утомляет, Эппловский не уступает по скорости(но был их JS-engine был проприетарным блобом) и жрет в 2-3 раза меньше.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

12. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +1 +/
Сообщение от Аноним (??) on 16-Май-14, 08:24 
Продолжай доделывать QtWebkit
У тебя еще есть время
Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

21. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  –1 +/
Сообщение от Аноним (??) on 16-Май-14, 18:03 
>Qt уже на Blink же переходить стал

Оно и к лучшему. Этот полупроприетарный LLVM в Qt нафиг не упёрся.

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

23. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  –2 +/
Сообщение от iZEN (ok) on 16-Май-14, 19:23 
>>Qt уже на Blink же переходить стал
> Оно и к лучшему. Этот полупроприетарный LLVM в Qt нафиг не упёрся.

Правильно! На С++ давно уже есть JIT — Sun HotSpot ( http://ru.wikipedia.org/wiki/HotSpot ). :))


Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

26. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +/
Сообщение от rob pike on 16-Май-14, 21:12 
Ладно б ты еще про Zing упомянул, говоря про приличный JIT.
Который, кстати, на LLVM строят.
Ответить | Правка | ^ к родителю #23 | Наверх | Cообщить модератору

24. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +/
Сообщение от Аноним (??) on 16-Май-14, 20:12 
А ничего, что у конкурента тож BSD licence? http://changelogs.ubuntu.com/changelogs/pool/universe/libv/l...
Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

28. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +/
Сообщение от Аноним (??) on 17-Май-14, 06:56 
LuaJIT уже рвёт? (без asm.js-мухлежа)
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

35. "Для WebKit реализован JIT-компилятор на основе наработок..."  +/
Сообщение от arisu (ok) on 17-Май-14, 15:37 
> LuaJIT уже рвёт? (без asm.js-мухлежа)

да оно и с мухлежом не особо. а если сравнить размер кодовой базы… нет, лучше не надо.

Ответить | Правка | ^ к родителю #28 | Наверх | Cообщить модератору

36. "Для WebKit реализован JIT-компилятор на основе наработок LLV..."  +/
Сообщение от rob pike on 18-Май-14, 07:37 
>"With proper design and engineering, there's no reason a JS JIT compiler couldn't compete with LuaJIT."
>--Mike Pall
Ответить | Правка | ^ к родителю #28 | Наверх | Cообщить модератору

38. "Для WebKit реализован JIT-компилятор на основе наработок..."  +/
Сообщение от arisu (ok) on 18-Май-14, 15:23 
>>"With proper design and engineering, there's no reason a JS JIT compiler couldn't compete with LuaJIT."
>>--Mike Pall

осталось найти того, кто это сделает. СуперМайк не заинтересован.

Ответить | Правка | ^ к родителю #36 | Наверх | Cообщить модератору

39. "Для WebKit реализован JIT-компилятор на основе наработок..."  +/
Сообщение от rob pike on 18-Май-14, 15:27 
Заинтересован, но его не зовут. Потому злорадствует.

>Umm, but LuaJIT does loop peeling and LICM. Or rather an equivalent that actually works for dynamic languages and provides both code hoisting and unswitching. It's 300 lines of code. Oh, and it performs selective unrolling, too.
>Sure, let's go down the list of advanced compiler optimizations! Muchnick to the rescue ... LuaJIT also does: constant folding, constant propagation, copy propagation, algebraic simplifications, reassociation, common-subexpression elimination, alias analysis, load-forwarding, store-forwarding, dead-store elimination, store sinking, scalar replacement of aggregates, scalar-evolution analysis, narrowing, specialization, loop inversion, dead-code elimination, reverse-linear-scan register allocation with a blended cost-model, register hinting, register renaming, memory operand fusion.
>Due to the nature of a trace compiler, it implicitly performs partial and interprocedural variants of all of them. And many traditional optimizations, like straightening or unreachable code elimination are unnecessary.
>All of that in 120KB for the VM and 80KB for the JIT compiler. And I didn't need 15 years and a billion dollar budget for that, either.
>I'm planning to add value-range propagation, array-bounds-check elimination, escape analysis, allocation sinking, if conversion, hyperblock scheduling and auto-vectorization. Anything I forgot? I'll see what I can do. :-)

Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

40. "Для WebKit реализован JIT-компилятор на основе наработок..."  +/
Сообщение от arisu (ok) on 18-Май-14, 15:32 
> Заинтересован, но его не зовут.

я имел в виду «не заинтересован делать это бесплатно». а денег на jsjit корпорасты ему не несут, предпочитая оные деньги весело просирать.

впрочем, я бы вообще все попытки сделать jit'ы для js уничтожал бы вместе с авторами.

Ответить | Правка | ^ к родителю #39 | Наверх | Cообщить модератору

41. "Для WebKit реализован JIT-компилятор на основе наработок..."  –1 +/
Сообщение от rob pike on 19-Май-14, 04:09 
>все попытки сделать jit'ы для js уничтожал бы вместе с авторами

Потому что технологии бывают вредные, полезные и антинародные, да?

> Кибернетика является, таким образом, реакционной механистической теорией, стремящейся отбросить современную научную мысль, основанную на материалистической диалектике, далеко вспять — к изжитой и опровергнутой более ста лет назад механистической философии.
> — «Наука современных рабовладельцев», «Наука и жизнь», июнь 1953, стр.42

Ответить | Правка | ^ к родителю #40 | Наверх | Cообщить модератору

42. "Для WebKit реализован JIT-компилятор на основе наработок..."  +/
Сообщение от arisu (ok) on 19-Май-14, 09:07 
>>все попытки сделать jit'ы для js уничтожал бы вместе с авторами
> Потому что технологии бывают вредные, полезные и антинародные, да?

нет. потому что дебилы-хипстеры пытаются впихнуть невпихуемое.

Ответить | Правка | ^ к родителю #41 | Наверх | Cообщить модератору

43. "Для WebKit реализован JIT-компилятор на основе наработок..."  +/
Сообщение от rob pike on 19-Май-14, 19:06 
Так ведь по просьбам трудящихся. Всё для рабочего человека.
Ответить | Правка | ^ к родителю #42 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру