Pull to refresh

Comments 18

Статья огонь. Правда не хватает еще видео с доклада.
Спасибо. Видео будет в самое ближайшее время!
Ну и раз уже пошла такая пьянка, то вот более простое, но не менее крутое видео от одного из разработчиков uber:
Автор ограничил доступ к видео.

А можете пояснить для новичка в Go, почему если нужна скорость не проверяли
gccgo, насколько он усокряет код, а также не использовали встроенный в него
профилирофшик (gprof)?

На данном этапе основной компилятор для Go меня устраивает. Лучшего ответа у меня нет.
Основной компилятор на то и основной. Вся разработка идет в нем. А Gccgo — это так, развлечение Ян-а, по моему мнению.
С ним все не так однозначно. По идее, он может генерировать более эффективный код, но он не умеет в Escape Analysis, что плохо сказывается на GC производительности. Да и действительно поддержка gccgo хуже, он отстает на несколько версий языка. Сколько смотрел про оптимизацию Go, не особо даже упоминают gccgo. В сфере применения Go главная проблема это как облегчить работу GC.
Да и действительно поддержка gccgo хуже, он отстает на несколько версий языка.

Всего-то одна минорная версия.


go version go1.6.2 linux/amd64
go version go1.6.1 gccgo (GCC) 6.1.1 20160501 linux/amd64
Во времена go 1.3-1.4 скомпилированный gccgo вариант на имевшихся у меня приложениях давал ощутимо более медленный код. С тех пор, правда, не сравнивал.
Конечно. И march и что-то еще, уже не помню точно за давностью.
UFO just landed and posted this here
UFO just landed and posted this here

Пора делать новую статью по версии 1.20 Интересно насколько изменилось распределение памяти в Go и Escape-анализ? Не далее как на выходных занимался тем же самым через runtime.MemStat. Внезапно обнаружил что даже при создании локальных переменных в функции и при передаче их в параметрах .. растет счечтик аллокаций в куче и количество размещенных объектов. Но пока ещё только разбираюсь, может сам не верно проанализировал результат. Хотелось бы почитать тех, кто уже разбирается в этом.

А какой тип переменной? Если это &struct, то логично, что растёт.

Да, такой вариант объясним. Пока готовлю материал, там разные, вплоть до банального int

Выложил свою первую статью на эту тему. Там уже вопросов "выше крыши", но пока лежит в песочнице. Когда замодерируется не ясно.

Sign up to leave a comment.