Бенчмаркая Enumerable.Chunk: почему батчей меньше, а проход до ×2,7 дольше

#Бенчмаркая #Enumerable #Chunk #List #Читать
Бенчмаркая Enumerable.Chunk: почему батчей меньше, а проход до ×2,7 дольше

Chunk делит коллекцию на массивы — одна строка кода. Но есть размер чанка, после которого он замедляется в разы при тех же данных и той же памяти. А на массиве и на List<int> внутри разный код, и в самой строке этого не видно. Читать далее

Уважаемые читатели, в этой статье я хочу разобраться, что происходит с Enumerable.Chunk на крупных батчах, — и представить свои выводы.

Chunk создаёт под каждый чанк отдельный массив. На мелких чанках это ни на что не влияет. Но массив на 25 000 int занимает 100 024 байта, а объекты от 85 000 байт рантайм размещает в куче больших объектов. Её очищает сборка второго поколения.

Поэтому увеличение батча с 20 000 до 25 000 записей даёт обратный результат: вызовов меньше, а времени тратится в 1,52–2,74 раза больше. Разница в выделенной памяти — 0,66 КБ на миллион элементов. Ни компилятор, ни анализаторы про это не сообщают.

Будет 6 историй:

Похожие статьи

Двач
Двач

Наконец-то полезные лайфхаки

Наконец-то полезные лайфхаки

Двач
Аргументы и Факты
Аргументы и Факты

В Алматы перенесли концерт Канье Уэста после масштабного блэкаута

Концерт Канье Уэста в Алматы перенесли на 15 августа.

Аргументы и Факты
Аргументы и Факты
Аргументы и Факты

Евгения Чикунова выиграла золото ЧЕ по водным видам с рекордным результатом

Россиянка Чикунова завоевала золотую медаль чемпионата Европы по водным видам, установив рекордный результат.

Аргументы и Факты
Спорт-Экспресс
Спорт-Экспресс

«Зенит» поздравил пловчиху Чикунову с золотом чемпионата Европы

Пресс-служба «Зенита» поздравила российскую пловчиху Евгению Чикунову с победой на чемпионате Европы по водным видам спорта.

Спорт-Экспресс
На молодого парня завели дело за то, что он искал музыку в интернете: новости 14 августа E1.ru
E1.ru

На молодого парня завели дело за то, что он искал музыку в интернете: новости 14 августа

Что произошло за сутки

E1.ru
Аргументы и Факты
Аргументы и Факты

Психолог Метелева дала советы по подготовке детей к возвращению в школу

Психолог Татьяна Метелева заявила, что за неделю до начала учебы в школе стоит возвращать привычный режим дня ребенка.

Аргументы и Факты