Size: a a a

2020 July 29

ИИ

Иванов Иванов... in ErlangRus
Danil Zagoskin
в моей картине мира этот тезис несколько противоречит существованию erlang:statistics(reductions).
ну так-то да. но редукции они же используются для шедулинга. и они точно вечные или на каких-то интервалах сбрасываются?
источник

s

snakeduse in ErlangRus
Ноды как таковой нет. Есть просто функционал - набор функций, надо померить их по времени работы и посмотреть, сколько памяти выделяется.
источник

ИИ

Иванов Иванов... in ErlangRus
опять же может храниться максимально выделенное количество памяти, но не суммарно последовательное. зачем вообще такая информация (хранить ее)?
источник

DZ

Danil Zagoskin in ErlangRus
Иванов Иванов
ну так-то да. но редукции они же используются для шедулинга. и они точно вечные или на каких-то интервалах сбрасываются?
я не знаю, но мне кажется, даже сбрасывающаяся раз в неделю метрика хороша для анализа. Ну и можно старшие биты сбрасывать в соседний счётчик, а потом склеивать
источник

DZ

Danil Zagoskin in ErlangRus
Иванов Иванов
опять же может храниться максимально выделенное количество памяти, но не суммарно последовательное. зачем вообще такая информация (хранить ее)?
мне кажется, такая информация была бы очень полезна.
Порефакторил — нагрузка на аллокаторы уменьшилась в 3 раза. Отличная метрика, особенно для многопроцессорных систем.
источник

ИИ

Иванов Иванов... in ErlangRus
Danil Zagoskin
мне кажется, такая информация была бы очень полезна.
Порефакторил — нагрузка на аллокаторы уменьшилась в 3 раза. Отличная метрика, особенно для многопроцессорных систем.
количество аллокаций тогда имеет значение. общая сумма этих аллокаций какая-то температура на обратной стороне луны. ну ок. пусть такая статистика нужна.
источник

SP

Sergey Prokhorov in ErlangRus
память тоже разная бывает. Может быть process heap и stack, может быть shared binary может быть ETS может ьыть где-то в NIF или в VM
источник

DZ

Danil Zagoskin in ErlangRus
Иванов Иванов
количество аллокаций тогда имеет значение. общая сумма этих аллокаций какая-то температура на обратной стороне луны. ну ок. пусть такая статистика нужна.
количество важнее, да. Но в случае с бинарями там всё не так очевидно.
источник

a

arikai in ErlangRus
Это конечно лучше изучить, но ЕМНИП с замерами памяти в Эрланге всегда было достаточно грустно
Тот же instrument появился относительно недавно.
источник

ИИ

Иванов Иванов... in ErlangRus
Danil Zagoskin
количество важнее, да. Но в случае с бинарями там всё не так очевидно.
а что можно сделать с этой информации кроме как разделить сумму на количество аллокаций? с редукциями понятно, с числом аллокаций понятно, с пиковым потреблением тоже.  я даже соглашусь про средний размер аллоцируемого буфера.
источник

DZ

Danil Zagoskin in ErlangRus
Иванов Иванов
а что можно сделать с этой информации кроме как разделить сумму на количество аллокаций? с редукциями понятно, с числом аллокаций понятно, с пиковым потреблением тоже.  я даже соглашусь про средний размер аллоцируемого буфера.
больше, наверное, ничего. Но средний размер — это оно и есть
источник

ИИ

Иванов Иванов... in ErlangRus
snakeduse
Ноды как таковой нет. Есть просто функционал - набор функций, надо померить их по времени работы и посмотреть, сколько памяти выделяется.
можно вывести красивую статистику как изменилось состояние системы (аллокаторов) после выполнения.  можно врежиме -instr запустить и вывести erlang:memory() (maximum)
но вот чтобы просуммировать - не знаю
источник

ИИ

Иванов Иванов... in ErlangRus
Danil Zagoskin
больше, наверное, ничего. Но средний размер — это оно и есть
но без статистических расчетов ведь это будет температура на обратной стороне луны.
источник

DZ

Danil Zagoskin in ErlangRus
Иванов Иванов
но без статистических расчетов ведь это будет температура на обратной стороне луны.
лучше, чем ничего :)
источник

ИИ

Иванов Иванов... in ErlangRus
Danil Zagoskin
лучше, чем ничего :)
ты напомнил мне постгре - там при промахах мимо буфера под временные данные выводится мессадж. и типа можно оптимально под свою предметную область буфера(ы) настроить
источник

SP

Sergey Prokhorov in ErlangRus
я в своей бенчмаркалке ограничился process_info(memory) https://github.com/seriyps/rebar3_bench/blob/20ef911e1564152ed3d09370654161ee1e2bab44/src/rebar3_bench_runner.erl#L193-L200
источник

SP

Sergey Prokhorov in ErlangRus
но в итоге ни разу не интересовался что оно там по памяи намеряло
источник

SP

Sergey Prokhorov in ErlangRus
process_info(memory) вроде показывает сколько у процесса в его личном heap используется места
источник

SP

Sergey Prokhorov in ErlangRus
кстати, вроде бы если включить трассировку на события garbage collect то в трейсы включена статистика по показателям памяти. Но это не точно
источник

SP

Sergey Prokhorov in ErlangRus
источник