Библиотека C/C++ разработчика | cpp, boost, qt
19.6K subscribers
1.96K photos
60 videos
16 files
4.21K links
Все самое полезное для плюсовика и сишника в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/d6cd2932

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5bac324c8ba6dcaa1ad17
Download Telegram
🍖 Рализация своего ECS движка
Если std::map убивает весь перформанс, cache miss-ы на каждом шагу..., то пора задуматься о ECS подходе. Возможно это то что тебе нужно.


💡 Автор статьи решил не сдаваться и полностью переписал архитектуру памяти своей ECS, применив data-oriented design на полную катушку.

❗️ Ключевые моменты статьи:

• compile-time разметка памяти через constexpr — никаких накладных расходов в рантайме
• организация данных в сектора — фиксированные блоки памяти, где компоненты лежат плотно друг к другу
• chunk-аллокатор со степенями двойки вместо делений
• сортировка по entityId для последовательного доступа и дружбы с CPU-префетчером

Основной фокус — как устроить память так, чтобы процессор угадывал ваши намерения и подтягивал данные заранее, превращая случайные обращения в линейное чтение.
Особенно актуально для разработчиков игровых движков и высоконагруженных систем, где каждый cache miss стоит дорого.

👉 Статья

🔹Курс «Алгоритмы и структуры данных»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹Сайт Proglib

Библиотека C/C++ разработчика

#свежак
2👍2🥰1