• Peredvizhnikov Engine เป็นเอนจินเกมแบบ lock-free ที่พัฒนาด้วย C++20
  • เอนจินนี้ใช้ actor model of concurrent computation บนแนวคิด primitive ของ coroutine ใน C++20 ทำให้สามารถพัฒนาโลจิกที่ซับซ้อนและทำงานแบบขนานได้
  • เอนจินที่มีการใช้งานแบบ lock-free มอบข้อดีหลายอย่าง เช่น การรับประกันความคืบหน้า, ปราศจากเดดล็อก, เวลาแฝงที่คาดการณ์ได้, และความทนทานต่อความขัดข้องสูง
  • ความทนทานต่อความขัดข้องนั้นแข็งแกร่งถึงขั้นที่แม้ worker thread ใด ๆ จะหยุดทำงานแบบอะซิงโครนัส เอนจินก็ยังคงทำงานต่อได้
  • การออกแบบของเอนจินผสมผสานแนวคิดการเขียนโปรแกรม lock-free ทั้งแบบดั้งเดิมและแบบนวัตกรรม โดยมีทั้งการติดตั้งใช้งาน Software Transactional Memory แบบเฉพาะตัว, lock-free queue ชนิดใหม่, และ lock-free std::atomic_shared_ptr
  • เพื่อทำความเข้าใจอัลกอริทึม lock-free ที่ใช้ เหตุผลด้านการออกแบบ และเบนช์มาร์กอย่างครอบคลุม ผู้อ่านควรอ่านเอกสาร Peredvizhnikov Engine: Design and Implementation of a Completely Lock-Free Scheduler
  • ขณะนี้ เอนจินรองรับเฉพาะแพลตฟอร์ม Linux และต้องใช้ Clang++ 16 ในการ build ซอร์ส
  • ซอร์สโค้ดของ Peredvizhnikov Engine เผยแพร่ภายใต้ไลเซนส์ GPLv3 แต่ผู้เขียนอาจอนุญาตให้ใช้บางส่วนหรือทั้งหมดของโค้ดภายใต้ไลเซนส์อื่นได้เป็นกรณีไป
  • Eduard Permyakov ผู้เขียน เปิดรับการติดต่อเกี่ยวกับซอร์สโค้ด อัลกอริทึมพื้นฐาน และโอกาสการจ้างงานที่เป็นไปได้ อีเมลติดต่อของเขาคือ edward.permyakov@gmail.com

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น