Size: a a a

Compiler Development

2020 June 09

IR

IC Rainbow in Compiler Development
λoλdog
Вы прям программист-медиум
в смысле уже не джун, но ещё не сеньёр? 😁
источник

λ

λoλdog in Compiler Development
Это уже на ваше усмотрение )
источник

p

polunin.ai in Compiler Development
λoλdog
Вы прям программист-медиум
А как по-другому если на бенчмарках все читерят?😁
источник

λ

λoλdog in Compiler Development
Как как, писать самому
источник

MO

Mar Ort in Compiler Development
polunin.ai
А как по-другому если на бенчмарках все читерят?😁
Делать самому
источник

λ

λoλdog in Compiler Development
Никто не умеет бенчмаркать
источник

p

polunin.ai in Compiler Development
λoλdog
Никто не умеет бенчмаркать
Из этого следует что человек "сам" тоже не умеет бенчмаркать
источник

IR

IC Rainbow in Compiler Development
Не надо бенчмаркать, надо профилировать.
источник

YS

Yaroslav Schekin in Compiler Development
polunin.ai
А как по-другому если на бенчмарках все читерят?😁
Сайт не просто так называется "The Computer Language Benchmarks Game". ;)
И "делать самому" — это не решение (какой-то "Вы" может напороть ещё хуже).
Решение — делать качественные (что, насколько я помню, изучается в университетах, и есть даже более одного относящегося к делу предмета).
источник

λ

λoλdog in Compiler Development
polunin.ai
Из этого следует что человек "сам" тоже не умеет бенчмаркать
Именно
источник

M

MaxGraey in Compiler Development
Вообще то большинсто действитеьлно не умеют делать бенчмарки
источник

M

MaxGraey in Compiler Development
Просто делают ужаснейшие веши и очень поспешные выводы. Про прогрев и тем более t-критерий Стьюдента и как правильно агрегировать несколько замеров я уже вообще молчу
источник

AT

Alexander Tchitchigi... in Compiler Development
источник

AT

Alexander Tchitchigi... in Compiler Development
Как видно, в ряде случаев даже программы на C не показывают устойчивого поведения.
источник

AT

Alexander Tchitchigi... in Compiler Development
Т.е. у нас "всё плохо" по всему стеку от процессора и выше.
источник

YS

Yaroslav Schekin in Compiler Development
Вот что самое неприятное в отношении популярных benchmarks, IMHO (прямо из https://t.me/CompilerDev/67795 , подчёркнутое):

The microbenchmarks we use are as follows: binary trees, spectralnorm, n-body, fasta, and fannkuch redux from the Computer Language Benchmarks Game (CLBG) Bagley et al. [2004]; and Richards. Readers can be forgiven for initial scepticism about this set of microbenchmarks. They are small and widely used by VM authors as optimisation targets.

Т.е. авторы соответствующих продуктов начинают "затачивать" их именно под эти benchmarks (иногда методами, которые и близко нельзя назвать честными, т.е. бесполезными (а то и вредными) почти во всех остальных случаях).
источник

AT

Alexander Tchitchigi... in Compiler Development
> Т.е. авторы соответствующих продуктов начинают "затачивать" их именно под эти benchmarks (иногда методами, которые и близко нельзя назвать честными, т.е. бесполезными (а то и вредными) почти во всех остальных случаях).

Это тоже немножко overstatement. "Авторы соответствующих продуктов" если уж и оптимизируют, то с необходимостью — относительно ограниченного набора сравнительно "простых и ограниченных" бенчмарков. В этом смысле, любой набор бенчмарков — нерепрезентативный, но репрезентативного просто не бывает, и реалистично оптимизировать можно только относительно нерепрезентативного.

В этом плане, все авторы ВМ находятся в равных условиях — они все оптимизируют "не то". Но это всё, что мы можем сделать на практике.
источник

AT

Alexander Tchitchigi... in Compiler Development
Ultimate solution, конечно — оптимизировать ВМ под свой конкретный production workload. И некоторые компании могут себе такое позволить.
источник

AT

Alexander Tchitchigi... in Compiler Development
С другой стороны, если в какой-то момент это станет "трендом" (вероятно, в силу объективной необходимости) — у нас всех появится больше интересной работы. 😃
источник

YS

Yaroslav Schekin in Compiler Development
Alexander Tchitchigin
> Т.е. авторы соответствующих продуктов начинают "затачивать" их именно под эти benchmarks (иногда методами, которые и близко нельзя назвать честными, т.е. бесполезными (а то и вредными) почти во всех остальных случаях).

Это тоже немножко overstatement. "Авторы соответствующих продуктов" если уж и оптимизируют, то с необходимостью — относительно ограниченного набора сравнительно "простых и ограниченных" бенчмарков. В этом смысле, любой набор бенчмарков — нерепрезентативный, но репрезентативного просто не бывает, и реалистично оптимизировать можно только относительно нерепрезентативного.

В этом плане, все авторы ВМ находятся в равных условиях — они все оптимизируют "не то". Но это всё, что мы можем сделать на практике.
Смотря в какой отрасли. В некоторых, где от этого зависят продажи продукта — "точат" ещё как. ;)

> В этом плане, все авторы ВМ находятся в равных условиях — они все оптимизируют "не то".

Я писал в общем, не относительно только VM.
Проблема в том, что усилия тратятся на то, что на практике мало кому нужно (это не считая "благородной" цели этих усилий). ;)
источник