Tháng Ba 18, 2020 iRendercs

Render nên chọn GPU hay CPU

Render là công việc chiếm nhiều thời gian nhất của người thiết kế 3D như kiến trúc sư hay nhà làm phim. Và mỗi một trình renderer khác nhau thì sẽ có một phần mền hỗ trợ và một phương thức render khác nhau.

Hiện tại, có 2 công nghệ khác nhau trong quy trình render là CPU (Central Processing Unit) và GPU (Graphics Processing Unit). Cả hai công nghệ này đều là phần cứng của máy tính nhưng thuật toán xử lý của chúng thì hoàn toàn khác nhau. Bài hướng dẫn này sẽ chỉ ra những ưu điểmnhược điểm của mỗi lựa chọn.

Mặc dù, GPU đang là một chọn lựa hợp lý cho nhiều trường hợp nhưng không phải lúc nào nó cũng là chọn lựa tốt nhất hay duy nhất. Vray đã tích hợp sẵn GPU từ phiên bản năm 2008 và cho phép chọn 1 trong 2 để rendering CPUGPU. Phần cuối cùng của hướng dẫn này sẽ tìm hiểu sâu về cách khai thác hiệu quả tối đa khi render với GPU.

Khác biệt giữa CPU và GPU là gì?

Để hiểu hơn sự khác biệt giữa CPUGPU chúng ta bắt đầu với độ trễlưu lượng. Độ trễ cho chúng ta biết thời gian cần để hoàn thành một tác vụ. Ví dụ chúng ta có 1 chiếc xe cần di chuyển từ A đến B, thì độ trễ sẽ cho ta biết khi nào xe sẽ đến B.

Lưu lượng sẽ cho ta biết có bao nhiêu chiếc xe đi từ A đến B trong một khoảng thới gian nhất định. Như vậy, để tăng lưu lượng chỉ có một cách là làm giảm độ trễ bằng cách tăng tốc độ của xe.

Hoặc chúng ta có thể thêm số xe với cách tăng thêm làn đường, với nhiều làn đường bạn có thể đạt được lưu lượng cao hơn thậm chí với tốc độ thấp hơn hoặc độ trễ cao hơn.

  • CPU được thiết kế tốc độ nhanh hơn và phù hợp cho các tác vụ đơn lẻ.
  • GPU được thiết kế cho các nhiệm vụ chạy song song xử lý đa luồng. GPU phù hợp với những việc đòi hỏi phải tính toán nhiều cùng lúc.

Driver là công cụ kết nối giữa các ứng dụng, hệ điều hành và phần cứng. Nếu driver đứng một mình thì nó là vô dụng, do đó cần một phần mềm để cho nó biết làm gì và làm như thế nào? Với CPU nó hoàn toàn dựa vào hệ điều hành như OS X, Windows hay Linux. Còn GPU dựa trên driver – kết nối giữa phần cứng và hệ điều hành.

Với các program non-GPU chỉ bao gồm các ứng dụng và hệ điều hành, còn GPU thì ngoài 2 yếu tố đó còn có thêm driver.

Như vậy, chúng ta cũng đã hiểu phần nào về CPUGPU. Tiếp tục, chúng ta sẽ tìm hiểu thêm khi render thì CPUGPU có tác động như thế nào? Ưu điểm, nhược điểm khi người dùng chuyển từ CPU sang GPU với cùng 1 khung cảnh có cùng 1 chất liệu như nhau?

Render với CPU

Ưu điểm:

  • Có lịch sử lâu đời: nói chung cái gì có thâm niên thì đều tốt và nó đã quen thuộc với mọi người hay nói cách dễ hiểu là “Gừng càng già càng cay”. Lựa chọn tốt nhất cho các tác vụ đơn luồng – single thread.
  • Hầu như sử dụng toàn bộ tài nguyên sẵn có của máy tính: ví dụ CPU có thể sử dụng thêm RAM, ổ cứng để mở rộng thêm bộ nhớ, điều này làm cho nó linh hoạt hơn, ví dụ bạn có thể sử dụng thêm ổ SSD.
  • Ổn định

Nhược điểm:

  • Khó thêm CPU: vì khi muốn thay hoặc thêm CPU chúng ta phải thay luôn cả Mainboard, coi như mua 1 cái máy mới.
  • Muốn máy càng mạnh thì càng tốn tiền, vì chip đắt.
  • Không hiệu quả: CPU thường lãng phí rất nhiều tài nguyên để cho ra kết quả.

Hãy nhớ rằng: CPU thực sự tốt cho những tác vụ lớn, khi chúng ta có trong tay nhiều CPU ví dụ công ty hoặc tập đoàn thì CPU trở nên tốt hơn, đặc biệt là Render Farm hoặc Cloud Rendering.

Render với GPU

Ưu điểm:

  • Khả năng mở rộng: Thường thì 1 Mainboard có nhiều khe PCIe vì vậy việc lắp thêm các GPU cho 1 CPU là khả thi, điều này tiết kiệm hơn khi chúng ta chỉ cần 1 CPU và 1 bản quyền cho máy tính. Thường Bus speed cho PCIe là x1, x4, x8, x12, x16, x32, các bạn nên dùng bus cao hơn vì nó có băng thông rộng hơn, nếu chỉ dùng để rendering bình thường (Production) mà không xài Interactive(Vray RT) thì trung bình khoảng x8-x16 là OK.
  • Khả năng mở rộng độc lập: việc tăng số lượng GPU cho phép Vray tăng tốc theo GPU (ví dụ 2 GPU thì tốc độ tăng gấp đôi). Do đó thông thường bạn không cần 1 CPU mạnh để kéo các GPU mà cần 1 PSU-nguồn đủ tốt vì các GPU sẽ rất hao điện (khoảng 250W/GPU).
  • Tốc độ render rất nhanh: Rất nhiều setup render phù hợp cho GPU (các bạn có thể thấy vray 3.5 vừa ra có những cải tiến cho GPU rất đáng kể) Vray 3.5 có gì mới?. Nếu so sánh CPU và GPU với 1 giá tiền xấp xỉ thì GPU có thể nhanh hơn gấp 2 đến 15 lần CPU. Có thể lợi dụng các bộ vi xử lý tích hợp sẵn trong GPU.

Nhược điểm:

  • Bộ nhớ ít: GPU là 1 máy tính mini có bộ nhớ riêng nên thường bị hạn chế (GDDR3, GDDR5 hoặc HBM).
  • Bị nghẽn giao tiếp: Vì GPU muốn giao tiếp phải thông qua CPU nên nó không có quyền truy cập trực tiếp do đó độ trễ thông tin sẽ cao hơn và làm giảm hiệu suất. Mỗi GPU thường phải chứa toàn bộ Scene và texture để render nên nếu bạn có 2 video card 4Gb và 12Gb thì Scene render phải phù hợp với 4Gb còn nếu muốn mở rộng bộ nhớ hơn các bạn phải vô hiệu hóa card 4Gb để dùng card 12Gb.
  • Phụ thuộc nhiều vào driver: vì driver được update và thay đổi thường xuyên.

Làm sao để chọn được GPU phù hợp?

Render với GPU thường đặt ra nhiều câu hỏi. Nên mua card màn hình nào? Nên mua card pro hay card game? Bộ nhớ card cần bao nhiêu là đủ? CUDA hay Open CL? và còn rất nhiều câu hỏi nữa.

Một artist chuyên nghiệp có thể sử dụng 1 trong 2 dòng card (Pro hoặc game) cho công việc của họ. Phổ biến dòng chuyên nghiệp là NVIDIA (Quadro) và AMD (Firepro), dòng phổ thông là NVIDIA (Geforce) và AMD (Radeon).

Render với Vray hay các phần mềm đồ họa khác không cần thiết chúng ta phải dùng những card chuyên nghiệp đắt tiền, tùy card, dòng phổ thông thậm chí có thể vượt trội hơn dòng chuyên nghiệp mà không phải tốn quá nhiều chi phí.

Render với GPU nên dùng loại nào?

Các nhà sản xuất GPU sử dụng các APIs khác nhau cho card của họ. Chúng ta chỉ tập trung vào NVIDIA (CUDA) và AMD (Open CL) vì nó mang lại nhiều lợi ích cho người dùng Vray hơn. Qua hình dưới chúng ta có thể thấy CUDA độc quyền hơn, nó chỉ chạy với GPU NVIDIA còn OpenCL thì tương thích nhiều hơn. Vì vậy, bạn nào xài CPU chip Intel(i3, i5, i7) thì nên dùng OpenCL.

Hiệu quả nhất về chi phí như GTX 1070 (1920 Cuda Cores, 8GB VRAM), GTX 1080 (2560 Cuda Cores, 8GB VRAM) và GTX 1080 Ti (3584 Cuda Cores, 11GB VRAM).

Kết luận

Hi vọng với những kiến thức bên trên đã khái quát cho bạn hiểu sự khác biệt của GPU và CPU trong quá trình Render. Nếu bạn cần in một ảnh chất lượng cao, bạn nên chọn CPU. Nếu bạn cần xử lý nhiều tác vụ, nhiều frame thì đây là lúc bạn nên chọn GPU. Chính vì vậy, những ai đang làm phimdiễn hoạt 3D rất yêu thích render bằng GPU.

Tin vui cho bạn là, hiện tại iRender đã cung cấp ra thị trường dịch vụ iRender GPUhub – Cloud GPU. Bạn chỉ phải trả theo giờ sử dụng mà không phải tốn đến hàng chục triệu sở hữu dàn máy khủng theo cách thông thường. Nếu bạn chưa hiểu rõ dịch vụ của iRender GPUhub vui lòng xem chi tiết tại: https://gpuhub.net/

, , , , , , , , , , , , , , , ,

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Contact

iRENDER FARM

GPU Cloud Service
Remote Render Farm
GPU Cloud for AI/DeepLearning
iRender International

INTEGRATIONS

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

iRENDER TEAM

MONDAY – SUNDAY
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
VPGD: Số 5, ngõ 82 Dịch Vọng Hậu, Cầu Giấy, Hà Nội.

Contact
0916806116 [email protected]