- Peredvizhnikov Engine là một engine game lock-free được phát triển bằng C++20.
- Engine này cho phép phát triển logic phức tạp và song song bằng cách sử dụng actor model of concurrent computation trên các nguyên thủy coroutine của C++20.
- Một engine với triển khai lock-free mang lại nhiều lợi ích như bảo đảm tiến triển, không có deadlock, độ trễ có thể dự đoán và khả năng chịu lỗi cao.
- Khả năng chịu lỗi đủ mạnh để engine tiếp tục chạy ngay cả khi bất kỳ worker thread nào kết thúc bất đồng bộ.
- Thiết kế của engine kết hợp các ý tưởng lập trình lock-free truyền thống và đổi mới, bao gồm một triển khai Software Transactional Memory độc đáo, một loại hàng đợi lock-free mới và
std::atomic_shared_ptr lock-free.
- Để hiểu toàn diện về các thuật toán lock-free được sử dụng, cơ sở thiết kế, benchmark và hơn thế nữa, độc giả được khuyến nghị xem tài liệu Peredvizhnikov Engine: Design and Implementation of a Completely Lock-Free Scheduler.
- Hiện tại, engine chỉ hỗ trợ nền tảng Linux và cần Clang++ 16 để build mã nguồn.
- Mã nguồn của Peredvizhnikov Engine được cung cấp theo giấy phép GPLv3, nhưng tác giả có thể trong một số trường hợp cấp quyền sử dụng một phần hoặc toàn bộ mã theo giấy phép khác.
- Tác giả Eduard Permyakov sẵn sàng trao đổi về mã nguồn, các thuật toán cốt lõi và các cơ hội tuyển dụng tiềm năng. Email liên hệ của ông là edward.permyakov@gmail.com.
Chưa có bình luận nào.