Size: a a a

2020 April 04

а

а кто это in rust_offtopic
объективно и с пруфами
источник

DS

Doge Shibu in rust_offtopic
В горячем цикле это дофига лишней логики
источник

SP

Stanislav Popov in rust_offtopic
Doge Shibu
Я вот вполне вижу улучшение перформанса в своем коде от убирание лишних вызовов маллока.

Вполне себе ощутимое улучшение, причём
вот это и смешно что всякие лоулевел чуваки расказывают об улучшениях в циклах с миллионами итераций, а потом скриптодети берут и применяют
источник

p

polunin.ai in rust_offtopic
ну я хз как сейчас аллоцируют память нынешние ОС, но вроде искать в памяти место куда можно впихнуть твоб последовательность байт это долго
источник

p

polunin.ai in rust_offtopic
особенно если эта последовательность большая
источник

DS

Doge Shibu in rust_offtopic
polunin.ai
ну я хз как сейчас аллоцируют память нынешние ОС, но вроде искать в памяти место куда можно впихнуть твоб последовательность байт это долго
Вон выше как раз описание логики я скинул ссылкой
источник

DS

Doge Shibu in rust_offtopic
Stanislav Popov
вот это и смешно что всякие лоулевел чуваки расказывают об улучшениях в циклах с миллионами итераций, а потом скриптодети берут и применяют
И да, с тредами и тредпулами можешь показать бенчмарк, о котором говоришь, потому что пока я нахожу только бенчмарки где разница на порядок между созданием тредов и взятием их из тредпула
источник

p

polunin.ai in rust_offtopic
Doge Shibu
Вон выше как раз описание логики я скинул ссылкой
сохранил в покете, потом почитаю, спасибо
источник

SP

Stanislav Popov in rust_offtopic
а кто это
объективно и с пруфами
ну если я напишу тест который просто в цикле будет прогонять миллион маллоков (пока что, смело) я ожидаю не сильно больше отставание от того же цикла который создает миллион обьектов на гц
источник

PK

Pavel Kvasnikov in rust_offtopic
пасиб
источник

SP

Stanislav Popov in rust_offtopic
Doge Shibu
И да, с тредами и тредпулами можешь показать бенчмарк, о котором говоришь, потому что пока я нахожу только бенчмарки где разница на порядок между созданием тредов и взятием их из тредпула
на порядок это скока? в два раза? это приемлимо вполне
источник

PK

Pavel Kvasnikov in rust_offtopic
Я помню кто-то приводил в пример NGinx и его пользовательский менеджер памяти типо очень эффективно
источник

DS

Doge Shibu in rust_offtopic
Stanislav Popov
на порядок это скока? в два раза? это приемлимо вполне
В том бенче, что я нашел - там 100 раз
источник

SP

Stanislav Popov in rust_offtopic
тоже норм, кек
источник

DS

Doge Shibu in rust_offtopic
И два раза - это нифига не ерунда
источник

SP

Stanislav Popov in rust_offtopic
потому что взятие из пула это полторы инструкции
источник

p

polunin.ai in rust_offtopic
Stanislav Popov
ну если я напишу тест который просто в цикле будет прогонять миллион маллоков (пока что, смело) я ожидаю не сильно больше отставание от того же цикла который создает миллион обьектов на гц
ну давай подумаем. Создать объект для гц - это:
1. инкремент счетчика ссылок.
2. Инициализация памяти.
А создание объекта без гц это еще и выделение памяти.
источник

p

polunin.ai in rust_offtopic
то есть без гц уже априори дольше
источник

SP

Stanislav Popov in rust_offtopic
polunin.ai
ну давай подумаем. Создать объект для гц - это:
1. инкремент счетчика ссылок.
2. Инициализация памяти.
А создание объекта без гц это еще и выделение памяти.
и то и то это "выделение памяти"
источник

DS

Doge Shibu in rust_offtopic
Stanislav Popov
потому что взятие из пула это полторы инструкции
Ну когда у тебя код выполняется (там причем код с нагрузкой вычислительной) в 100 раз медленее - это плохо
источник