Tôi đã có một số kinh nghiệm với CUDA và lập trình cờ vua (không phải lập trình động cơ). Câu hỏi này cũng đến với tôi nhiều lần. Đây là ý kiến của tôi, tôi không bao giờ nghiên cứu điều này.
Chà, đầu tiên, gần như chắc chắn rằng với thiết kế hiện tại của động cơ cờ vua, điều đó là không thể. Nếu không thì ai đó sẽ làm điều đó.
Cho dù bạn có thể sử dụng nó trong thiết kế hoàn toàn mới, đó là một câu hỏi lớn hơn. Không có vấn đề gì với các hoạt động số nguyên, nhưng rõ ràng có một điều rất lớn là bạn phải chạy mã nguyên thủy mà không phân nhánh nghiêm trọng trên nhiều thực thể.
Theo tôi tất cả các tính toán cây nên chạy trên CPU.
Nhưng tôi có thể tưởng tượng (tôi không nói là có thể) một số chức năng đánh giá một phần chỉ thực hiện càng nhiều đánh giá về các vị trí càng tốt, để cho CPU có thêm thời gian, để giúp anh ta xây dựng cây theo cách tốt hơn, giả sử một chức năng như vậy có thể tính toán mức độ nghiêm trọng nên được thực hiện trên mỗi vị trí.
Bạn có thể tính toán số lượng hình vuông bị tấn công, mảnh bị tấn công, hỏa lực xung quanh các vị vua và trong một số tiểu vùng trên tàu, những thứ liên quan đến cấu trúc cầm đồ, bạn có thể tạo mã tối ưu hóa GPU cho những thứ này. Bạn có thể có thể nhận được rất nhiều thông tin hữu ích miễn phí (không mất thời gian CPU, không phải chờ CPU), nhưng bạn sẽ phải là thiên tài thực sự để sử dụng toàn bộ mã lực của GPU hiện đại cho những việc nhỏ như vậy.
Có lẽ không phải là điều rất thú vị để tạo ra thiết kế động cơ hoàn toàn mới để có được tốc độ tăng thêm 30%. Và để có thể nói tốc độ tăng gấp 20 lần trên các GPU hiện đại, bạn sẽ phải làm cho các chức năng đánh giá thực sự xa lạ.
Và điều cuối cùng về điều này tôi thấy là một vấn đề. Bạn có thể chạy một mã trên CPU mà không cần suy nghĩ nhiều, nhưng trong kịch bản CPU + GPU, bạn sẽ phải đối phó với các tỷ lệ CPU và GPU thực sự khác nhau. tốc độ và số lượng cốt lõi. Bạn sẽ cần mã khác nhau cho cụm 16 lõi có GPU yếu hơn so với CPU chậm với GPU siêu nhanh để sử dụng toàn bộ khả năng của phần cứng. CPU điểm chuẩn so với GPU và sau đó chạy nhiều mã hơn trên máy nhanh hơn sẽ là điều mong muốn. Tuy nhiên, tôi nghĩ rằng bạn sẽ không thể tiếp cận được việc nuôi 3000 con thú chỉ bằng chức năng đánh giá.
Chỉnh sửa: Chỉ để làm cho mọi thứ rõ ràng, CPU sẽ thường xuyên gửi các mảng vị trí GPU để đánh giá một phần. Có lẽ điều đó không rõ ràng từ những gì tôi đã viết.
Nhiều vấn đề để làm cho công việc này.