Size: a a a

Compiler Development

2020 November 08

E

EgorBo in Compiler Development
Pavel Samolysov
Поэтому в Java 7 ещё ввели tiered compilation, а в 8 включили её по дефолту чтобы быстрее начать компилировать хотя бы клиентским компилятором и не интерпретировать байткод. У нас приложение 40 минут выходит на режим нагрузки из-за jit.
подозреваю что время можно менять флажками трешхолдами для перекомпиляции 😊
источник

KR

K R in Compiler Development
Вообще по эргономике время компиляции желательно иметь < 0.5 секунды.
источник

PS

Pavel Samolysov in Compiler Development
EgorBo
подозреваю что время можно менять флажками трешхолдами для перекомпиляции 😊
Игрались, становится только хуже. Tiered compilation сильно помогает.
источник

M

MaxGraey in Compiler Development
K R
Вообще по эргономике время компиляции желательно иметь < 0.5 секунды.
А почему не 16 ms?) Что бы прям помпилироват  частотой 60 hz - порог незаметный глазу =)
источник

PS

Pavel Samolysov in Compiler Development
С с++ ситуация вообще странная, компилируется долго, комитет за стабильный ABI, но все советуют пересобирать все из исходников. Даже на последнем cppconf доклад про это был, мол пересобирайте все и ваши волосы будут мягкими и шелковистыми.
источник

KR

K R in Compiler Development
MaxGraey
А почему не 16 ms?) Что бы прям помпилироват  частотой 60 hz - порог незаметный глазу =)
Это перебор
источник

E

EgorBo in Compiler Development
MaxGraey
А почему не 16 ms?) Что бы прям помпилироват  частотой 60 hz - порог незаметный глазу =)
шутки шутками, а я согласен про 0.5сек 😊 я знаю что у ребят из Unity точно так же есть какие-то магические цифры времени итерации "чото изменил - увидел результат в плеере", они там и компилятор шарпа изменили и линкер байткода распараллелил
источник

E

EgorBo in Compiler Development
для них это прям уберважная метрика
источник

E

EgorBo in Compiler Development
в андроид мире тоже инвестировали много в Instant Run
источник

PS

Pavel Samolysov in Compiler Development
В lowlatency мире тоже очень важно, нельзя ждать когда оно там прогреется, биржа не ждёт, деньги не спят.
источник

M

MaxGraey in Compiler Development
EgorBo
для них это прям уберважная метрика
Не RAIL случаем?
https://web.dev/rail/
источник

E

EgorBo in Compiler Development
ну возможно да
источник

E

EgorBo in Compiler Development
вообще все правила UX из веб мира хорошо идут и в программирование, где прикладной программист - это пользователь, а ЯП/компилятор - вебсайт 😊
источник

KR

K R in Compiler Development
EgorBo
шутки шутками, а я согласен про 0.5сек 😊 я знаю что у ребят из Unity точно так же есть какие-то магические цифры времени итерации "чото изменил - увидел результат в плеере", они там и компилятор шарпа изменили и линкер байткода распараллелил
Ну я по своему опыту сужу - 0.3 сек Клина и 2 сек ghc- это жуткая разница
источник

M

MaxGraey in Compiler Development
EgorBo
вообще все правила UX из веб мира хорошо идут и в программирование, где прикладной программист - это пользователь, а ЯП/компилятор - вебсайт 😊
Соглашусь. Интерактив / анимация - это скорость Lang сервера отрабатывть подсказки и делать тайпчекинг в редакторе, время загрузки - это время компиляции
источник

KR

K R in Compiler Development
MaxGraey
А почему не 16 ms?) Что бы прям помпилироват  частотой 60 hz - порог незаметный глазу =)
На самом деле просто попробуйте писать что-то маленькое - у вас за 2 секунды уйдёт концентрация слегка. А за 10 - совсем.

0.5 секунды просто держат вас в состоянии потока (такое же, как при игре в quake)
источник

а

а это кто in Compiler Development
K R
На самом деле просто попробуйте писать что-то маленькое - у вас за 2 секунды уйдёт концентрация слегка. А за 10 - совсем.

0.5 секунды просто держат вас в состоянии потока (такое же, как при игре в quake)
+
источник
2020 November 09

PM

Pavel Meledin in Compiler Development
Есть ли примеры "движков" подобных движкам регулярных выражений, где с помощью машин конечных автоматов реализуют описание образца для сопоставления по набору данных, но чтоб домен был не строки как в случае с регулярками, а некий другой отличный от строк?
источник

VS

Victor Shamparov in Compiler Development
Pavel Meledin
Есть ли примеры "движков" подобных движкам регулярных выражений, где с помощью машин конечных автоматов реализуют описание образца для сопоставления по набору данных, но чтоб домен был не строки как в случае с регулярками, а некий другой отличный от строк?
Не скажу, что хорошо подходит под запрос, но ЕМНИП был проект, использующий CTL-логику на CFG.
https://coccinelle.gitlabpages.inria.fr/website/papers.html
источник

DP

Dmitry Ponyatov in Compiler Development
Pavel Meledin
Есть ли примеры "движков" подобных движкам регулярных выражений, где с помощью машин конечных автоматов реализуют описание образца для сопоставления по набору данных, но чтоб домен был не строки как в случае с регулярками, а некий другой отличный от строк?
язык Elixir не сгодится?
источник