Cải thiện Blender’s Cycles rendering trên Windows 10

Khi sử dụng CUDA GPU rendering, Cycles render nhanh hơn đáng kể trên Linux so với Windows 10. Vậy đâu là nguyên nhân dẫn đến điều đó.


Thử nghiện chạy trên Titan X (Maxwell) với AMD Ryzen 7 CPU. Nhưng các GPU thế hệ Maxwell cũng cho kết quả tương tự.
Còn đây là so sánh trên 1080Ti (Pascal generation):

Chúng tôi nhận thấy cùng một kết quả (Win 10 render chậm hơn) bất kể GPU có được dùng để hiển thị hay không (Render bằng dòng lệnh)
Vậy đâu là lý do khiến cho Windows 10 render chậm hơn so với Linux
Hóa ra từ Windows 8 trở lên, mọi lệnh hiển thị từ Blender phát ra đều phải đi qua Windows Display Driver Model (WDDM). Lớp trình điều khiển này chịu trách nhiệm xử lý tất cả các thiết bị hiển thị, nhưng nó thường bổ sung thêm một chi phí đáng kể cho các tác vụ tính toán. Mô hình này là một thành phần cốt lõi của Windows và không thể vô hiệu hóa một cách đơn giản.
May mắn thay, những người thông minh ở Nvidia đã có một giải pháp cho nó. Để vượt qua hoàn toàn WDDM, chúng tôi cần đặt GPU là “Nhóm tính toán Tesla” hoặc viết tắt là TCC. Khi chúng tôi bật tính năng này, GPU không còn hiển thị dưới dạng thiết bị hiển thị trong Windows nữa. Nhưng ứng dụng CUDA vẫn có thể truy cập được. Chúng tôi đã chạy tất cả Blender benchmark một lần nữa và đây là kết quả:

Với TCC được kích hoạt, hiệu suất của Windows10 hoàn toàn giống với Linux!

Đây là tin xấu.

  • TCC chỉ có trên dòng Geforce Titan và Geforce Quadro của GPU, nó không khả dụng cho dòng Geforce GTX.
  • Nó chỉ hoạt động nếu bạn có một GPU khác để điều khiển đầu ra màn hình (vì các thiết bị TCC không thể được sử dụng để lái bất kỳ màn hình nào)

Nhưng nếu bạn phải gắn bó với môi trường Windows và có một GPU riêng biệt, TCC có thể chỉ là những gì bạn cần để có được hiệu năng thêm 30% đó.

Với các thiết bị AMD sử dụng OpenCL không có sự khác biệt về hiệu năng.

Lược dịch từ: thepixelary.com

2 Likes