Giải thích về lõi CUDA của Nvidia: Khác nhau thế nào?
- OFREZH EDITOR
- 25 thg 6
- 9 phút đọc
Nvidia gọi nền tảng xử lý song song của mình là CUDA. Trong khi CUDA Core là các đơn vị xử lý bên trong GPU giống như Stream Processor của AMD.

CUDA là viết tắt của Compute Unified Device Architecture. Đây là tên gọi của nền tảng xử lý song song và API được sử dụng để truy cập trực tiếp vào bộ lệnh GPU Nvidia.
Không giống như DirectX và OpenGL, CUDA không yêu cầu các nhà phát triển phải hiểu ngôn ngữ lập trình đồ họa phức tạp; nó chỉ hoạt động trên các ngôn ngữ lập trình phổ biến như C, C++ và công nghệ độc quyền của Nvidia.
Nếu bạn đã từng xem bảng thông số kỹ thuật của card đồ họa Nvidia, chắc chắn bạn đã bắt gặp thuật ngữ này.
Chúng ta hãy xem xét một ví dụ để hiểu cách hoạt động của lõi CUDA. Hãy nghĩ về bộ xử lý như một bể chứa nước. Nếu bạn muốn làm rỗng bể, bạn sẽ cần sử dụng các đường ống.
Nếu bạn kết nối nhiều ống hơn, thì tự nhiên bạn sẽ có thể làm rỗng bình nhanh hơn. Các lõi CUDA hoạt động giống như các ống này đối với bộ xử lý. Nhiều lõi CUDA hơn có nghĩa là quá trình xử lý có thể được thực hiện ở tốc độ nhanh hơn nhiều.
GPU Nvidia hiện đại có ba loại lõi xử lý khác nhau:
Lõi CUDA
Lõi Tensor
Lõi Ray-Tracing
Mỗi lõi được thiết kế cho một mục đích rất cụ thể. Lõi Ray-Tracing chỉ dành riêng cho card đồ họa Nvidia RTX và không có GPU nào của AMD có Lõi Ray Tracing. Tuy nhiên, GPU dựa trên RDNA 2 sắp ra mắt của AMD sẽ hỗ trợ Hardware Accelerated Ray Tracing.
Nếu bạn muốn biết về Tensor Core, bạn có thể xem bài đăng này về tensor core để tìm hiểu về chúng.
Card đồ họa bắt đầu từ kiến trúc Tesla có lõi CUDA. Tất cả GPU Nvidia thuộc về Tesla, Fermi, Kepler, Maxwell, Pascal, Volta, Turing và Ampere đều có lõi CUDA. Nhưng không thể nói như vậy về lõi Tensor hoặc lõi Ray-Tracing.
GPU Fermi đầu tiên có tới 512 lõi CUDA, mỗi lõi được tổ chức thành 16 Bộ xử lý đa luồng, mỗi bộ có 32 lõi. Các GPU hỗ trợ bộ nhớ tối đa là 6GB bộ nhớ GDDR5. Sau đây là sơ đồ khối cho thấy cấu trúc của lõi CUDA fermi. Mỗi lõi CUDA có một đơn vị dấu phẩy động và một đơn vị số nguyên.

Lõi Nvidia CUDA

Hình tiếp theo cho thấy sơ đồ khối của GPU Fermi.
Kiến trúc Nvidia Fermi
Với kiến trúc Kepler, số lượng lõi CUDA đã tăng gấp ba lần. Kiến trúc Kepler hỗ trợ tới 1536 lõi CUDA. Nó dựa trên công nghệ chế tạo 28nm.

Sơ đồ khối kiến trúc Nvidia Kepler
Từ đây trở đi, Nvidia tiếp tục tung ra nhiều lõi CUDA hơn qua mỗi thế hệ. Đây là sơ đồ khối của Nvidia Quadro GP100. Đây là một phần của kiến trúc Pascal do Nvidia phát hành vào năm 2016.
Cả kiến trúc Maxwell và Pascal đều có 128 lõi CUDA trên mỗi bộ xử lý đa luồng (SM). Đơn vị số nguyên đã được cắt bớt trong kiến trúc Maxwell, loại bỏ đơn vị nhân chuyên dụng.
Sơ đồ kiến trúc Nvidia GP100 Pascal

Kiến trúc Turing của Nvidia mang lại nhiều thay đổi cho GPU. Đây là sơ đồ khối của GPU TU102.
Số lượng lõi CUDA trên mỗi SM đã giảm xuống còn 64 (từ 128). Các lõi Tensor và lõi Ray Tracing đã được thêm vào. Quy trình chế tạo được sử dụng là 12 nm của TSMC. Các đơn vị số nguyên và dấu phẩy động đã được tách ra bắt đầu từ kiến trúc Turing.
Sơ đồ khối Turing TU102

Kiến trúc Ampere mới nhất mang đến Lõi Ray Tracing thế hệ thứ 2. GPU GA100 có 128 SM. Ampere GA102 có 10.752 lõi CUDA. Lần này, mỗi lõi bao gồm hai đơn vị xử lý FP32 (Các đơn vị thực hiện các phép toán dấu phẩy động 32 bit).
Sơ đồ khối Nvidia Ampere GA100

Điều thú vị về các lõi CUDA này là chúng có thể xử lý các hoạt động trên cả số nguyên và số thực. Điều đó có nghĩa là mỗi lõi CUDA trong kiến trúc Ampere có thể xử lý hai FP32 hoặc một FP32 và một hoạt động INT trên mỗi chu kỳ xung nhịp.
Sau đây là sơ đồ khối của GPU GA102 dựa trên kiến trúc Ampere mới nhất của Nvidia.
Thế hệ GPU tiếp theo của Nvidia rất có thể sẽ dựa trên quy trình sản xuất 5 nm. Điều này sẽ thu nhỏ kích thước die hơn nữa, giảm yêu cầu về điện năng và tăng tốc độ xung nhịp lên hơn 2 GHz.
Khi các nhà phát triển bắt đầu hiểu rõ hơn về kiến trúc mới, họ có thể tối ưu hóa trò chơi và chương trình của mình để tăng cường hiệu suất hơn nữa.
Lõi CUDA ảnh hưởng đến hiệu suất như thế nào?
Mỗi GPU Nvidia chứa hàng trăm hoặc hàng nghìn lõi CUDA. Khi nói đến sức mạnh xử lý, có rất nhiều thứ cần được xem xét khi đánh giá hiệu suất của GPU. Tốc độ xung nhịp GPU, Kiến trúc GPU, Băng thông bộ nhớ, Tốc độ bộ nhớ, TMU, VRAM và ROP là một số yếu tố khác ảnh hưởng đến Hiệu suất GPU.
VRAM lưu trữ tài sản, kết cấu, bản đồ bóng đổ và tất cả dữ liệu khác được xử lý thông qua GPU. Lý do tại sao card đồ họa lưu trữ dữ liệu này trong VRAM là vì truy cập dữ liệu từ VRAM nhanh hơn nhiều so với DRAM, SSD hoặc HDD.
Nhiều yếu tố ảnh hưởng đến lượng VRAM mà hệ thống của bạn yêu cầu (như độ phân giải). Hầu hết các card đồ họa hiện đại đều có kích thước VRAM từ 2GB đến thậm chí 24GB VRAM ( RTX 3090 , chúng tôi đang nói đến bạn).
Khi nói đến tốc độ xung nhịp, có hai điều chúng ta cần thảo luận: xung nhịp lõi và xung nhịp bộ nhớ. Xung nhịp lõi là tốc độ mà GPU hoạt động. Mặt khác, xung nhịp bộ nhớ là tốc độ mà VRAM của GPU hoạt động. Xung nhịp lõi tương tự như tốc độ xung nhịp của bộ xử lý và xung nhịp bộ nhớ tương tự như tốc độ của RAM hệ thống.
Hầu hết các CPU trên thị trường Mainstream đều có từ hai đến mười sáu lõi. Điều này cho phép chúng thực hiện các hoạt động song song. Khi nói đến tính toán đồ họa, có rất nhiều thứ cần được tính toán song song. Khi bạn nhìn vào GPU, những gì bạn gọi là lõi về cơ bản chỉ là một Đơn vị Dấu phẩy động đối với CPU.
Một lõi GPU không thể lấy hoặc giải mã lệnh mà chỉ thực hiện tính toán. Số lượng lõi CUDA thường ở mức hàng nghìn GPU hiện đại.
Không thể đánh giá hiệu suất của bất kỳ card đồ họa nào chỉ dựa trên số lượng lõi CUDA. Bạn phải tính đến kiến trúc card đồ họa, tốc độ xung nhịp, số lượng lõi CUDA và nhiều yếu tố khác mà chúng tôi đã đề cập ở trên.
Số lượng lõi CUDA có thể là một chỉ báo tốt về hiệu suất nếu bạn so sánh các GPU trong cùng một thế hệ. Nvidia GTX 960 có 1024 lõi CUDA, trong khi GTX 970 có 1664 lõi CUDA. GTX 970 có nhiều lõi CUDA hơn so với người em của nó, GTX 960.
Điểm CUDA cao hơn có nghĩa là hiệu suất tốt hơn cho các GPU cùng thế hệ miễn là không có yếu tố nào khác làm giảm hiệu suất.
Sau đó, mọi thứ trở nên hơi khó khăn nếu bạn so sánh các card đồ họa của các thế hệ và kiến trúc khác nhau. Ví dụ, Nvidia GTX 1070 có số lõi CUDA gần như bằng GTX 780 và RTX 2060 có ít lõi CUDA hơn so với GTX 780. Điều này không có nghĩa là GTX 780 có thể đánh bại GTX 1070 hoặc RTX 2060 theo bất kỳ cách nào.
Sự khác biệt về hiệu suất này phát sinh do kiến trúc, kích thước bóng bán dẫn và quy trình chế tạo khác nhau giữa các GPU của các thế hệ khác nhau. Hiệu suất của lõi CUDA phụ thuộc rất nhiều vào kích thước chế tạo và kiến trúc GPU. Đó là lý do tại sao một lõi CUDA duy nhất của thế hệ mới mạnh hơn nhiều so với thế hệ trước.
Nếu chúng ta so sánh hai GPU ở thế hệ khác nhau, GTX 980 Ti dựa trên kiến trúc Maxwell và GTX 1080 dựa trên kiến trúc Pascal, thì đây là những gì chúng ta quan sát được.

Từ bảng trên, chúng ta có thể thấy có một sự khác biệt nhỏ về số lượng bóng bán dẫn / lõi CUDA giữa hai card đồ họa. Nếu bạn dựa vào các con số, bạn sẽ kết luận rằng hiệu suất của cả hai card đồ họa sẽ tương tự nhau. Tuy nhiên, điều đó không đúng.
Kích thước nhỏ của bóng bán dẫn trong kiến trúc Maxwell là yếu tố tạo nên sự khác biệt ở đây. Bóng bán dẫn nhỏ hơn làm giảm mức tiêu thụ điện năng tổng thể và cho phép các nhà sản xuất đóng gói nhiều bóng bán dẫn hơn trong một khuôn nhỏ. Tất cả điều này dẫn đến việc tăng tần số xung nhịp tối đa mà GPU Pascal có thể đạt được, giúp tăng hiệu suất tổng thể của nó.
Sau đây là một phương trình giả định cho thấy hiệu suất của GPU phụ thuộc vào nhiều yếu tố khác nhau.
Hiệu suất của GPU = số_lõi * tần_số_xung_đợi * hệ_số_kiến_trúc;
Thay vì giải một số phương trình phức tạp để tìm ra GPU của bạn tốt như thế nào, thì luôn tốt hơn khi tìm kiếm điểm chuẩn chơi game hoặc tính toán thực tế. Điều này sẽ giúp bạn hiểu card đồ họa hoạt động như thế nào trong cuộc sống thực. Nếu bạn xem điểm chuẩn, bạn sẽ biết chính xác những gì mong đợi từ card đồ họa trước khi mua nó.
Bây giờ chúng ta hãy tóm tắt lại những gì chúng ta đã hiểu cho đến thời điểm này.
Số lượng lõi CUDA càng nhiều thì có thể xử lý song song được nhiều dữ liệu hơn.
Tốc độ xung nhịp cao hơn có nghĩa là một lõi đơn có thể hoạt động nhanh hơn nhiều.
GPU ngày càng tốt hơn qua các thế hệ và kiến trúc mới, do đó, card đồ họa có nhiều lõi CUDA hơn chưa chắc đã mạnh hơn card đồ họa có ít lõi CUDA hơn.
Bộ xử lý luồng
Bộ xử lý luồng tương đương với lõi CUDA của AMD. Cả GPU AMD và Nvidia đều vượt trội về hiệu suất đồ họa. Mặc dù lõi CUDA và bộ xử lý luồng không tương đương với nhau, nhưng về cơ bản chúng khác nhau.
Sẽ không đúng nếu đánh giá hiệu suất của card đồ họa chỉ bằng cách nhìn vào số lõi CUDA và bộ xử lý luồng.
Điều thú vị nữa là Nvidia đã làm tốt hơn trong việc duy trì hỗ trợ nhà phát triển cho lõi CUDA của họ trong khi AMD luôn theo đuổi mức giá cạnh tranh và GPU của họ có giá trị tốt hơn so với số tiền bỏ ra.
Phần kết luận
Đây là một trong những câu hỏi nóng nhất trong ngành. Cái nào tốt hơn? CUDA của Nvidia hay bộ xử lý luồng của AMD? Vâng, cả hai công nghệ đều đã trưởng thành và chúng ta đang ở thời điểm mà chúng ta có thể trực tiếp đặt chúng cạnh tranh với nhau.
Mặc dù không có sự khác biệt về mặt hình ảnh giữa các công nghệ, nhưng chúng rất khác nhau. Là một người chỉ quan tâm đến chơi game, tỷ lệ giá trên hiệu suất nên là trọng tâm chính. AMD đã trở thành một lựa chọn thực sự hứa hẹn khi nói đến CPU và GPU trong những năm gần đây. Các sản phẩm của AMD mang lại giá trị tuyệt vời cho số tiền bỏ ra và hiệu suất hàng đầu.
Bằng cách đưa lõi CUDA vào mọi thiết bị điện toán từ siêu máy tính, máy tính để bàn, máy tính xách tay, thiết bị di động đến ô tô, Nvidia đã giúp các nhà phát triển triển khai phần mềm của họ trên bất kỳ nền tảng nào họ muốn hướng đến dễ dàng hơn bao giờ hết.
Dù có chuyện gì xảy ra, nếu bạn là một game thủ, hãy luôn nhớ rằng card đồ họa có thể tạo ra nhiều FPS hơn trong các tựa game AAA luôn là người chiến thắng.
Theo TÉCHCENTURY






Bình luận