- Peredvizhnikov Engine, C++20 kullanılarak geliştirilen lock-free bir oyun motorudur.
- Bu motor, C++20'nin coroutine primitive kavramları üzerine actor model of concurrent computation kullanarak karmaşık ve paralel mantıkların geliştirilmesini mümkün kılar.
- Lock-free olarak uygulanmış bu motor; garantili ilerleme, deadlock-free çalışma, öngörülebilir gecikme ve yüksek hata toleransı gibi çeşitli avantajlar sunar.
- Hata toleransı, worker thread'lerden herhangi biri asenkron olarak sonlansa bile motor çalışmaya devam edecek kadar güçlüdür.
- Motorun tasarımı, geleneksel ve yenilikçi lock-free programlama fikirlerini harmanlayarak kendine özgü bir Software Transactional Memory uygulaması, yeni tür lock-free queue'lar ve lock-free
std::atomic_shared_ptr gibi bileşenler içerir.
- Kullanılan lock-free algoritmaların kapsamlı şekilde anlaşılması, tasarım gerekçesi ve benchmark'lar için okurların Peredvizhnikov Engine: Design and Implementation of a Completely Lock-Free Scheduler belgesini incelemesi önerilir.
- Şu anda bu motor yalnızca Linux platformunu desteklemektedir ve kaynak kodu derlemek için Clang++ 16 gereklidir.
- Peredvizhnikov Engine'in kaynak kodu GPLv3 lisansı altında sunulmaktadır; ancak yazar, duruma göre kodun bir kısmının veya tamamının farklı bir lisans altında kullanılmasına izin verebilir.
- Yazarı Eduard Permyakov, kaynak kodu, temel algoritmalar ve olası iş fırsatlarıyla ilgili sorulara açıktır. İletişim e-postası: edward.permyakov@gmail.com.
Henüz yorum yok.