August 6, 2022 Ngoc Quynh

Tối ưu hóa bộ nhớ GPU để render nhanh hơn trên V-ray

Tùy thuộc vào thiết lập cảnh, GPU V-Ray có thể đạt mức tiêu thụ VRAM cao do độ phức tạp của cảnh, điều này có thể dẫn đến lỗi Hết bộ nhớ Out-Of-Memory error. Thêm card GPU có nhiều VRAM hơn vào máy luôn là lựa chọn tốt nhất để giải quyết vấn đề. Nhưng không phải lúc nào cũng dễ dàng để đầu tư thêm card GPU mới và tích hợp vào máy tính của bạn. Vì vậy, có thể sử dụng các kỹ thuật sau để tối ưu hóa bộ nhớ GPU, giảm VRAM được sử dụng và cuối cùng hiển thị cảnh mà không bị lỗi Out-Of-Memory.

Có một số cách để theo dõi việc sử dụng và phân bổ bộ nhớ GPU nếu cần:

  • GPU V-Ray báo cáo lượng bộ nhớ được sử dụng cho Textures / Geometry / Light Cache / etc trong  V-Ray log. 
  • Các tiện ích của bên thứ 3 như MSI Afterburner và EVGA Precision cũng cung cấp thông tin chi tiết về việc sử dụng và sử dụng bộ nhớ GPU
  • Tiện ích dòng lệnh Nvidia-SMI đi kèm với cài đặt trình điều khiển Nvidia cũng là một lựa chọn để theo dõi bộ nhớ GPU. 

Sử dụng dịch vụ iRender Cloud

Và giải pháp đầu tiên và cũng là tối ưu nhất để tránh gặp lỗi hết bộ nhớ khi render là sử dụng dịch vụ iRender Cloud Rendering. Đây là một lựa chọn tuyệt vời để hiển thị các dự án không thể vừa với bộ nhớ của máy cục bộ, sẽ giúp bạn hiển thị cảnh mà không cần đầu tư thêm phần cứng hoặc mất thời gian tối ưu hóa cảnh để sử dụng ít bộ nhớ hơn.

iRender cung cấp dịch vụ dưới dạng IaaS với công nghệ tiên tiến (hàng nghìn RTX 3090, CPU Intel Xeon W-2245 @ 3,90GHz / AMD Ryzen Threadripper Pro 3955WX mạnh mẽ, kỹ thuật Nvlink, tích hợp API, v.v.) trên thị trường. Tại đây người dùng sẽ kết nối từ xa với các máy chủ mạnh mẽ đó, cài đặt bất kỳ phần mềm nào trên máy chủ và dễ dàng bắt đầu công việc giống như sử dụng máy tính cục bộ của bạn.

Các nghệ sĩ 3D có thể tăng tốc độ kết xuất của bạn bất kỳ lúc nào và ở bất kỳ đâu với hệ thống tự động này. Bạn có thể đăng ký tài khoản trước để test dịch vụ nhằm ước tính tổng thời gian và chi phí cho việc render của bạn một cách dễ dàng trước khi quyết định. 

Sử dụng NVlink khi phần cứng hỗ trợ

Các công nghệ mới nhất của Nvidia cho phép kết nối dung lượng bộ nhớ từ nhiều thiết bị GPU lại với nhau. Công nghệ NVlink cho phép V-Ray sử dụng Bộ nhớ GPU từ tất cả các thiết bị GPU được liên kết với NV như một đơn vị duy nhất để có thể hiển thị các dự án phức tạp hơn nhiều mà không gặp lỗi Out-Of-Memory. Bạn có thể tìm thêm thông tin về hiệu suất NVLink tại đây. Bạn chắc chắn có thể nghiên cứu và tích hợp Nvlink vào máy tính cục bộ của mình hoặc thuận tiện hơn, sử dụng máy chủ iRender Cloud Rendering, được trang bị đầy đủ Nvlink để kiểm tra và làm việc với cảnh phức tạp của bạn bất cứ khi nào bạn muốn.

Tối ưu hóa textures của bạn

GPU V-Ray cho phép bạn áp dụng tối ưu hóa nhanh chóng cho các kết cấu của dự án. Có ba chế độ kết cấu khác nhau.

  • Textures đầy đủ kích thước. Chế độ này sẽ không áp dụng bất kỳ tối ưu hóa nào cho các kết cấu và nó chỉ được khuyến nghị nếu các dự án phù hợp với Bộ nhớ GPU có sẵn. 
  • Thay đổi kích thước tất cả các Textures. Chế độ này cho phép bạn thay đổi kích thước kết cấu thành độ phân giải và độ sâu bit nhỏ hơn, điều này sẽ giúp giảm mức sử dụng bộ nhớ. 
  • Lập bản đồ Mip theo yêu cầu. Chế độ này sẽ buộc V-Ray tải các kết cấu theo cách rất thông minh, ở độ phân giải thích hợp và chỉ khi cần thiết. Các lợi ích chính là sử dụng bộ nhớ ít hơn đáng kể và thời gian tải nhanh hơn.

Sử dụng GPU có dung lượng bộ nhớ cao nhất

Mặc dù GPU V-Ray tương thích với đa số các mẫu và thương hiệu GPU khác nhau nhưng vẫn có những hạn chế nhất định về mức sử dụng Bộ nhớ. Nếu có nhiều Thiết bị GPU, GPU V-Ray sẽ bị giới hạn bởi GPU có lượng VRAM thấp nhất.

Nếu lỗi Out-Of-Mem xảy ra và thiết lập phần cứng của bạn bao gồm các thiết bị GPU có Dung lượng bộ nhớ khác nhau, bạn có thể thử loại trừ các thiết bị GPU có ít Bộ nhớ hơn và hiển thị dự án mà không có chúng. Bằng cách này, V-Ray sẽ có thể sử dụng đầy đủ bộ nhớ của GPU. Và trong trường hợp bạn đã thử mà vẫn không có đủ Vram, bạn có thể cân nhắc việc thuê máy chủ của iRender Cloud Rendering. Tất cả các máy chủ của chúng tôi đều có 1/2/4/6/8 GeForce RTX 3090 24GB – được khuyến nghị cho hầu hết khách hàng kết xuất GPU, RTX 3090 cung cấp hiệu suất tốt nhất trong Vray đồng thời có bộ nhớ 24GB cực lớn. 

Kết xuất trong các đường chuyền riêng biệt (tiền cảnh / hậu cảnh)

Kỹ thuật này rất hữu ích cho các dự án cực kỳ phức tạp mà tất cả các kỹ thuật Tối ưu hóa bộ nhớ khác không thể giúp được. Kết xuất trong các đường chuyền có nghĩa là chia cảnh thành các dự án con riêng biệt. Cách tiếp cận phổ biến nhất là kết xuất Tiền cảnh và Hậu cảnh riêng biệt và sau đó kết hợp cả hai kết quả hiển thị trong một phần mềm Soạn ảnh / Chỉnh sửa hình ảnh.

Tối ưu hóa project geometry

  • Tối ưu hóa hình học động. Các đối tượng Hair / Fur, Displacement và Subdivision có xu hướng tiêu tốn nhiều bộ nhớ. Displacement và Subdivision cũng phụ thuộc vào độ phân giải hình ảnh, độ phân giải càng cao thì mức tiêu thụ bộ nhớ càng cao. Đảm bảo rằng hình học được tạo ra bởi các tính năng này có số lượng đa giác hợp lý nếu không nó có thể khá dễ dàng ăn toàn bộ bộ nhớ.
  • Loại bỏ các đối tượng xem không cần thiết / ngoài camera (Nếu chúng không cần thiết một cách cụ thể). Không có gì lạ khi có một dự án có rất nhiều đối tượng xem không cần thiết hoặc không có trong máy ảnh. Xóa những thứ đó chắc chắn sẽ giúp giảm mức sử dụng bộ nhớ
  • Tối ưu hóa hình học thông thường. Rất thường các đối tượng có hình học dày đặc không cần thiết kết thúc trong dự án, đó thường là các tài sản được thu thập từ các thư viện bên ngoài. Tối ưu hóa chúng chắc chắn sẽ giúp giảm mức sử dụng bộ nhớ

Xuất sang .vrscene và render với V-Ray Standalone

Host Applications  giống như V-Ray cần một số VRAM để giữ cho cảnh mở và hoạt động với nó. Tùy thuộc vào độ phức tạp của cảnh, Host Applications có thể chiếm một vài gigabyte VRAM, điều này có thể rất có giá trị đối với V-Ray trong trường hợp không có đủ Bộ nhớ cho Kết xuất. Xuất cảnh sang tệp .vrscene và hiển thị nó bằng V-Ray Standalone sẽ giảm thiểu tiêu thụ VRAM bằng cách loại trừ Host Applications. Xin lưu ý rằng phương pháp này sẽ giảm mức sử dụng VRAM từ các thiết bị GPU được kết nối với màn hình. Các thiết bị GPU không được kết nối với màn hình sẽ không được hưởng lợi từ nó.

 Lệnh V-Ray Độc lập để khởi chạy kết xuất GPU V-Ray:  

vray -sceneFile = “\\ path \ to \ export \ scene.vrscene” -rtEngine = 7

Một số giải pháp khác để tối ưu hóa bộ nhớ trên Vray

  • Đóng các ứng dụng khác có sử dụng bộ nhớ: Không có gì lạ khi mở nhiều ứng dụng khi làm việc trong một dự án. Mặc dù rất tiện dụng để thiết lập và chạy tất cả các ứng dụng cần thiết, nhưng điều này cũng sẽ làm giảm dung lượng bộ nhớ có sẵn cho quá trình kết xuất. Như đã đề cập ở trên, cách tiếp cận này sẽ giảm mức sử dụng VRAM từ các thiết bị GPU được kết nối với màn hình.
  •  Chỉ sử dụng kết xuất kết hợp GPU với CPU được bật: Đây không phải là cách tiếp cận hiệu quả về thời gian hiển thị vì V-Ray sẽ không được hưởng lợi từ việc sử dụng thiết bị GPU. Tuy nhiên, nếu cảnh quá lớn và không có cách nào để đưa nó vào bộ nhớ GPU, bạn vẫn có thể kết xuất nó bằng GPU V-Ray bằng cách chỉ sử dụng Kết xuất kết hợp với CPU được bật.
  • Sử dụng V-Ray Proxies: V-Ray Proxies là một công cụ rất mạnh, đặc biệt hữu ích để tối ưu hóa các cảnh có nhiều hình dạng. Chúng không phải là Hiệu quả về Bộ nhớ cho kết xuất GPU như chúng dành cho CPU, nhưng chúng cho phép thay thế hình dạng ban đầu trong cảnh bằng một hình đơn giản hơn. Chỉ điều này có thể giúp giảm mức sử dụng VRAM cho các khung nhìn, để lại nhiều Bộ nhớ hơn cho V-Ray hoạt động.

Kết luận

V-Ray cung cấp cho bạn sức mạnh để làm việc với khả năng kết xuất sản xuất nặng và tương tác nhanh như chớp, vì vậy đừng để giới hạn phần cứng hạn chế khả năng sáng tạo của bạn. Hy vọng rằng các giải pháp Tối ưu hóa bộ nhớ ở trên có thể giúp ích cho việc hiển thị với GPU trên V-ray.

Và chúng ta hãy xem một số video kết xuất trên iRender Cloud Rendering với Vray:

Nếu phần cứng mới không nằm trong ngân sách của bạn ngay bây giờ, hãy đăng kí sử dụng dịch vụ của iRender và cắt giảm thời gian hiển thị của bạn nhiều lần chỉ với một khoản đầu tư thời gian nhỏ từ 3,8 đô la. Chúng tôi kết xuất, sự sáng tạo là của bạn!

iRender – Happy Rendering!

Source: support.chaos.com
, , , , , , , , , , , , , , , , , , , ,
Contact

INTEGRATIONS

Autodesk Maya
Autodesk 3DS Max
Blender
Cinema 4D
Houdini
Maxwell
Nvidia Iray
Lumion
KeyShot
UE4
Twinmotion
Redshift
Octane
And many more…

iRENDER TEAM

MONDAY – SUNDAY
9:00 AM – 8:00 PM
Hotline: 0916 806 116
Zalo: 0916 806 116
Skype: iRender Support
Email: [email protected]
CÔNG TY CỔ PHẦN CÔNG NGHỆ IRENDER VIỆT NAM
MST: 0108787752
Office: 5/82 Dịch Vọng Hậu, Cầu Giấy, Hà Nội.

Contact
0916806116