Разработка собственного графического движка на Vulkan API неизбежно упирается в многопоточность: параллельную сборку командных буферов, стриминг мешей и генерацию кадров. В этой статье мы разберём архитектуру изолированной low-latency библиотеки задач shuttle_async на базе бесстековых корутин C++23, обсудим децентрализованный балансировщик Work Stealing на деках Chase-Lev и разберём коварный баг синхронного инлайна, который едва не нарушил инварианты Structured Concurrency.
Результаты финального Release-бенчмарка (-O3)
Масштабный стресс-тест проводился на процессоре Intel Core i9-14900KF (24 ядра, 32 потока) в конфигурации компиляции Release с максимальной оптимизацией. В коде отсутствуют какие-либо логи или диагностический вывод, что позволило замерить чистую производительность lock-free алгоритмов.
