Cấu hình PC cho Machine Learning / Deep Learning / AI - Trí tuệ nhân tạo

11/4/2024

Cấu hình PC cho Machine Learning / Deep Learning / AI - Trí tuệ nhân tạo

Có nhiều loại ứng dụng cho máy học (machine learning) và trí thông minh nhân tạo (Artificial Intelligence) - từ các mô hình hồi quy truyền thống, non-neural network classifiers, và các mô hình thống kê được đại diện bởi năng lực trong Python SciKitLearn và ngôn ngữ R, cho đến các Mô hình học sâu sử dụng các framework như PyTorch và TensorFlow. Trong số các mô hình ML/AI khác nhau, còn có các thứ loại đa dạng khác nữa. Cấu hình PC cho AI / ML sẽ tuân thủ các nguyên tắc nhất định, tuy nhiên ứng dụng AI của bạn có thể cần chỉnh sửa để đạt hiệu quả tối ưu.

CPU - Bộ vi xử lý

Trong lĩnh vực máy học / trí tuệ nhân tạo (machine learning / AI) thì việc sử dụng GPU là chủ yếu. Tuy nhiên, CPU và bo mạch chủ quyết định môi trường để hỗ trợ GPU. CPU có thể giúp xử lý gọn gàng dữ liệu trước khi đưa sang GPU cho công tác training.

CPU nào phù hợp để build máy tính cho machine learning?

2 loại CPU được được các PC builder đề xuất là Intel Xeon W và AMD Threadripper Pro vì tính ổn định xuất sắc và khả năng hỗ trợ số làn PCI-Express giao tiếp với GPU, cũng như dung lượng RAM thuộc vào hàng top của các bộ vi xử lý hiện tại.

Bộ máy chạy đơn CPU được cho là phù hợp hơn để giảm thiểu khả năng xảy ra vấn đề khi mapping bộ nhớ giữa các CPU - điều này có thể dẫn đến vấn đề khi mapping bộ nhớ tới GPU.

Workstation build cho công việc Deep Learning cần băng thông PCIe, vì thế bạn cần quan tâm đến số làn PCIe CPU có. Các làn giao tiếp tốc độ cao này đóng vai trò tối quan trọng trong AI training.

Deep learning cần băng thông PCIe, vì vậy chọn CPU cho machine learning cần quan tâm đến số làn PCIe CPU có thể cung cấp để giao tiếp với GPU. Thế hệ PCIe cũng là điều đáng lưu tâm, vì PCIe 4.0 cho băng thông cao gấp đôi so với PCIe 3.0.

GPU vẫn đóng vai trò “gánh team” khi nói đến AI / machine learning. Để bộ máy workstation chạy đa GPU phát huy được tác dụng, PC của bạn sẽ cần trung bình từ 40 làn PCIe.

PC build cho nhu cầu ML/AI cần trung bình 40 làn PCIe tốc độ x16

Intel Xeon W mới nhất được trang bị đến 112 làn PCIe thế hệ thứ 5, còn AMD Threadripper Pro 5000 WX-Series thì 128 làn PCIe thế hệ thứ 4.

Số nhân và số luồng của CPU

Khối lượng công việc AI và DL cần đủ nhân để xử lý trước các dataset và các khối lượng công việc multithread. AMD Threadripper thế hệ mới nhất có 64 nhân / 128 luồng, còn Intel Xeon W mới nhất thì có 56 nhân / 112 luồng.

Xung nhịp

Bên cạnh số nhân, số luồng, xung nhịp trên 1 nhân CPU cũng là điều đáng quan tâm. Đặc biệt nếu workload của bạn hưởng lợi từ tính toán liên tiếp, thì xung nhịp cao / nhân nên được ưu tiên hơn so với tổng số nhân CPU.

Tóm lại, khi build PC cho AI / machine learning cần CPU có số làn PCIe ≥40, nhiều nhân, và xung nhịp đơn nhân cao.

CPU nhiều nhân có giúp máy học và huấn luyện trí thông minh nhân tạo nhanh hơn?

Số lượng nhân CPU phụ thuộc vào workload của các tác vụ không liên quan đến GPU. Thông thường, cần ít nhất 4 nhân cho mỗi GPU accelerator. Tuy nhiên, nếu workload của bạn cần sức mạnh tính toán của CPU thì CPU lý tưởng cần có từ 32 - 64 nhân. Tóm lại, CPU cần tối thiểu 16 nhân để phù hợp với dàn máy workstation cho machine learning.

CPU Intel hay AMD thì phù hợp hơn?

Trong lĩnh vực machine learning, chọn CPU Intel hay AMD đều được tùy theo sở thích của bạn vì các workload hầu như đều cho GPU đảm nhiệm. Tuy nhiên, nếu workload của bạn có thể tận dụng được công cụ như Intel oneAPI AI Analytics Toolkit thì chọn CPU Intel sẽ thuận lợi hơn.

Tại sao nên chọn CPU Intel Xeon hay AMD Threadripper Pro?

2 dòng CPU này hỗ trợ số làn PCI Express nhiều hơn hẳn so với các dòng chip thông thường, vốn rất quan trọng cho hệ thống cần nhiều GPU. Thêm vào đó, 2 dòng CPU này còn hỗ trợ số kênh RAM lớn và dung lượng RAM “khủng” - ảnh hưởng rất lờn đến hiệu năng liên quan đến CPU. 2 dòng CPU này còn được xếp vào phân khúc enterprise - rất bền bỉ, phù hợp với việc treo liên tục cho các task model training phức tạp.

Dòng CPUSố lượng PCIe lane
AMD Threadripper Pro 5000 series128 làn PCIe 4.0
Intel Xeon W 3400 series112 làn PCIe 5.0
AMD Ryzen 7000 series28 làn PCIe 5.0
Intel 14th genTối đa 16 làn PCIe 5.0 và 4 làn PCIe 4.0

Bảng 1. So sánh số làn PCIe giữa các dòng CPU

Thế hệ PCIeSố làn PCIe
PCIe 1.0 (2003)- x1: 250 MB/s- x2: 500 MB/s- x4: 1 GB/s- x8: 2 GB/s- x16: 4 GB/s
PCIe 2.0 (2007)- x1: 500 MB/s- x2: 1 GB/s- x4: 2 GB/s- x8: 4 GB/s- x16: 8 GB/s
PCIe 3.0 (2010)- x1: 1 GB/s- x2: 2 GB/s- x4: 4 GB/s- x8: 8 GB/s- x16: 16 GB/s
PCIe 4.0 (2017)- x1: 2 GB/s- x2: 4 GB/s- x4: 8 GB/s- x8: 16 GB/s- x16: 32 GB/s
PCIe 5.0 (2019)- x1: 4 GB/s- x2: 8 GB/s- x4: 16 GB/s- x8: 32 GB/s- x6: 64 GB/s
PCIe 6.0 (2021)- x1: 8 GB/s- x2: 16 GB/s- x4: 32 GB/s- x8: 64 GB/s- x16: 128 GB/s

Bảng 2 - Độ rộng và tốc độ của các làn PCIe và thế hệ PCIe

So sánh tần số các thế hệ PCIe

  • PCIe 1.0 (2003) - Frequency: 2.5 GT/s

  • PCIe 2.0 (2007) - Frequency: 5.0 GT/s

  • PCIe 3.0 (2010) - Frequency: 8.0 GT/s

  • PCIe 4.0 (2017) - Frequency: 16 GT/s

  • PCIe 5.0 (2019) - Frequency: 32 GT/s

  • PCIe 6.0 (2021) - Frequency: 64 GT/s

GPU - Card đồ họa

Kể từ năm 2010, sự ra đời của GPU acceleration đã thúc đẩy sự phát triển nhanh chóng của lĩnh vực machine learning / AI. Sở hữu số lượng nhân nhiều, GPU cực kỳ phù hợp cho quy trình tính toán đồng thời (parallel computing) - cho hiệu năng cao gấp nhiều lần so với CPU.

Loại GPU nào thì phù hợp cho machine learning?

GPU của Nvidia chiếm đại đa số sự lựa chọn khi nói đến GPU dành cho machine learning - vì được hỗ trợ bởi các phần mềm và dễ dàng sử dụng hơn GPU từ AMD.

Đa số các mẫu GPU của Nvidia đều có thể được sử dụng trong machine learning, GPU càng mới và càng cao cấp thì hiệu năng càng tốt hơn. May mắn là, đa số các ứng dụng chạy machine learning / AI với GPU acceleration đều hoạt động tốt với single precision (FP32). Trong nhiều trường hợp, sử dụng Tensor cor (FP16) và mixed precision đem lại độ chính xác hợp lý cho model deep learning cùng với hiệu năng cao hơn là single precision FP32. Đa số các GPU của Nvidia gần đây đều sở hữu tính năng này.

GPU chuyên game như RTX 4080 hay 4090 đều đem lại hiệu năng cao. Tuy nhiên, dạng GPU này lại khó config trong hệ thống sử dụng nhiều hơn 2 GPU do thiết kế ở dạng “open-air” và kích thước lớn. Các dạng GPU cao cấp như RTX A5000 và A6000 thường có dung lượng bộ nhớ lớn hơn và chạy tốt khi config nhiều GPU. RTX A6000 chẳng hạn, với 48GB VRAM, được khuyến nghị cho dữ liệu có “large feature size” như hình ảnh độ phân giải cao hay hình 3D.

Machine learning / AI cần bao nhiêu VRAM?

Điều này phụ thuộc vào “feature space” của model cần training. Vì dung lượng VRAM có giới hạn, nên các model ML và các framework đều có giới hạn cho VRAM.

Đó là lý do phổ biến để thực hiện “data and feature reduction” trước khi training. Ví dụ, đầu vào hình ảnh dành cho training thường ở độ phân giải thấp do số lượng điểm ảnh (pixels) trở thành limiting critical feature dimension. 8GB VRAM là tối thiểu, 12 → 24GB VRAM là phổ biến, trong các model phức tạp, các dòng GPU chuyên dụng như RTX A6000 với 48GB VRAM sẽ được ứng dụng.

Có phải ghép càng nhiều GPU thì hiệu năng ML / AI càng cao? Lý thuyết là có. Thông thường bộ PC cho AI / ML sẽ mặc định dùng từ 2 GPU. Tuy nhiên, nó còn tùy vào công việc / framework bạn đang sử dụng để huấn luyện mô hình.

Workstation với 2, 3, 4 GPU có thể đem lại khả năng tính toán đáng kinh ngạc, đáp ứng nhu cầu lớn cho các doanh nghiệp / dự án yêu cầu cao.

Multi-GPU acceleration đang dần trở nên phổ biến trong các ứng dụng ML và AI. Nhưng cũng lưu ý là GPU single như NVIDIA RTX 3090 or A5000 cũng đã đem lại hiệu năng đáng kể và đủ sức đáp ứng cho ứng dụng bạn đang có ý định dùng. Khuyến nghị build PC AI / ML với ít nhất 2 GPU khi thực hiện các công việc phát triển để có thể dễ dàng test chức năng multi-GPU local, ngay cả khi job được chạy bởi các GPU cluster riêng biệt.

Machine learning / AI chạy Nvidia hay AMD thì tốt hơn?

Nvidia vẫn đang giữ thế thống trị lĩnh vực AI / ML. AMD GPU Compute còn rất hạn chế.

Các dòng GPU professional có cần thiết "phải có" trong lĩnh vực AI / ML hay không?

Rất may, câu trả lời là không. Nvidia GeForce RTX 3080, 3080 Ti, 3090, 3090 Ti có thể đảm đương xuất sắc nhu cầu tính toán song song trong AI / ML. Tuy nhiên, các mã sản phẩm trên thường bị giới hạn về kích thước (khá lớn chiếm nhiều diện tích) và cách làm mát (đa số thiết kế open-air), nên các dòng RTX professional như RTX A5000 (24GB GDDR6) hay A6000 (48GB GDDR6 ECC) sẽ được ưu tiên sử dụng trong các workstation cần từ 3 GPU trở lên. Với khối lượng công việc siêu lớn, A100 Tensor Core với 80 GB VRAM sẽ được sử dụng trong các rackmount. Hiệu năng của mã sản phẩm này thì đỉnh khỏi bàn nhưng bù lại, giá thì bao núi cao, nên chỉ được sử dụng trong môi trường enterprise lớn mà thôi.

NVLink có cần thiết khi config nhiều GPU cho ML / AI?

NVLink cung cấp cầu nối giao tiếp tốc độ cao giữa các GPU. NVLink cần thiết và hữu ích trong các workload chứa lịch sử component như RNNs, LSTM, time-series và đặc biệt là các mô hình Transformer. Trong đa số các workload khác chứa các model độc lập, NVLink không quá cần thiết. Lưu ý rằng NVLink chỉ hỗ trợ các model GPU nhất định, và chỉ kết nối tối đa 2 card.

NVLink
NVLink

Bộ nhớ trong (RAM)

Dung lượng RAM phụ thuộc vào độ lớn của các job cần chạy.

Machine learning và AI cần bao nhiêu RAM?

Nguyên tắc đầu tiên, dung lượng RAM tối thiểu cần gấp đôi dung lượng bộ nhớ VRAM của GPU.

Ví dụ, PC AI / ML đang config với 2 card RTX 3090 tức 2 _ 24 = 48GB VRAM. Suy ra dung lượng RAM tối thiểu sẽ cần 2 _ 48 = 96GB RAM. Và thường thì dung lượng RAM config sẽ là 2* 96 = 128GB RAM (tối ưu).

Cân nhắc thứ hai là khốt lượng data cần phân tích. Dataset sẽ thường cần phải được kéo hết vào bộ nhớ để xử lý, và dung lượng dataset đó có thể rất lớn, đến 1TB chẳng hạn.

Vì vậy, các bộ máy PC AI / ML thường được build với linh kiện server grade như Intel Xeon, AMD Threadripper, AMD EPYC vì các con chip này mới hỗ trợ được dung lượng RAM khủng như vậy.

→ Đọc thêm: In-Memory Databases

Ổ cứng

Dung lượng ổ cứng tối thiểu phải bằng dung lượng RAM - để chứa dữ liệu sẵn sàng cho CPU truy cập.

Ổ cứng loại nào thì phù hợp cho PC machine learning / AI nhất?

Ổ NVMe gần như là sự lựa chọn mặc định vì đem lại hiệu năng truyền tải / truy xuất dữ liệu nhanh chóng nhất hiện nay. Sử dụng ổ cứng NVMe còn giúp tránh tình trạng nghẽn cổ chai khi dữ liệu quá lớn cần truyền mà băng thông thì lại quá nhỏ (gặp ở SATA 3).

NVMe có 2 dạng hay gặp: M.2 và U.2

M.2 phổ biến hơn, nhưng hạn chế về dung lượng. 4TB còn dễ, lên đến 8TB NVMe thì số lượng mã sản phẩm gần như đếm trên đầu ngón tay (giá cao).

U.2 được sử dụng nhiều hơn trong server / workstation, với dung lượng lớn nhất được công bố lên đến 61TB.

Để tiết kiệm chi phí, data lưu trữ có thể dùng các ổ HDD, dung lượng 18TB giờ dần trở nên phổ biến, dễ mua.

Phone Zalo
xeon.vn
  • 61 Mai Xuân Thưởng, P3, Q6, HCM
  • 0982538753
  • hi@xeon.vn
  • 9:00 - 18:00 từ T2 - T7
Cửa hàng
Social
TMĐT
Copyright © 2024 XEON.VN