Trả lời nhanh: Chuyển tiếp card đồ họa cho phép máy ảo dùng trực tiếp phần cứng, gần như không mất hiệu năng, cần thiết khi chạy mô hình ngôn ngữ hoặc xử lý ảnh. Điều kiện là CPU và bo mạch hỗ trợ cơ chế quản lý bộ nhớ vào ra, phải bật trong BIOS, và card phải nằm ở nhóm thiết bị tách biệt được.
Nhu cầu chạy mô hình trí tuệ nhân tạo trên hạ tầng của chính mình đang tăng nhanh, và câu hỏi đầu tiên là làm sao đưa card đồ họa vào một máy ảo thay vì phải dựng máy riêng. Bài này đi qua điều kiện, các bước và những chỗ hay vướng.
Vì sao cần chuyển tiếp card
Máy ảo bình thường chỉ thấy một card màn hình ảo do lớp ảo hóa giả lập, đủ để hiện màn hình nhưng không có khả năng tính toán.
Các tác vụ như chạy mô hình ngôn ngữ, huấn luyện mô hình, xử lý ảnh và video đều cần khả năng tính toán song song của card đồ họa thật. Cách duy nhất để máy ảo dùng được là chuyển hẳn thiết bị vật lý cho nó.
Khi đã chuyển tiếp, máy ảo nói chuyện trực tiếp với card, không qua lớp trung gian nào. Hiệu năng gần như bằng chạy trên máy thật, và trình điều khiển gốc của hãng cài bình thường trong máy ảo.
Cái giá là tính độc quyền: card đã gán cho máy ảo nào thì máy khác không dùng được, kể cả chính máy chủ. Có công nghệ chia một card cho nhiều máy ảo nhưng cần card dòng chuyên dụng và giấy phép riêng, không áp dụng cho card phổ thông.
Điều kiện phần cứng
Bốn thứ phải có, kiểm trước khi mua máy.
- CPU hỗ trợ quản lý bộ nhớ vào ra. Gần như mọi CPU máy chủ đều có. Với CPU máy để bàn thì tùy dòng, cần kiểm cụ thể.
- Bo mạch hỗ trợ và có tùy chọn bật trong BIOS. Đây là chỗ hay vướng với bo mạch giá rẻ.
- Card nằm ở nhóm thiết bị tách biệt được. Cơ chế phần cứng gom các thiết bị thành nhóm, và bạn phải chuyển cả nhóm chứ không chuyển lẻ. Nếu card nằm chung nhóm với thiết bị mà máy chủ đang cần, bạn kẹt.
- Đủ công suất nguồn và đủ khe cắm. Card tính toán tiêu thụ điện lớn và thường chiếm hai khe.
Với máy chủ thương hiệu, hãy chọn dòng được hãng chứng nhận hỗ trợ card đồ họa, vì chúng đã tính sẵn cả tản nhiệt và nguồn.
Các bước cấu hình
- Bật ảo hóa và quản lý bộ nhớ vào ra trong BIOS. Tên mục khác nhau tùy hãng, thường nằm trong phần cấu hình CPU hoặc chipset.
- Bật hỗ trợ tương ứng trong tham số khởi động của hệ điều hành máy chủ, rồi khởi động lại.
- Kiểm tra nhóm thiết bị để xác nhận card nằm riêng một nhóm hoặc nằm chung với các thiết bị mà bạn có thể chuyển cùng.
- Chặn trình điều khiển của máy chủ nạp cho card đó, để máy chủ không chiếm dụng nó.
- Gán card cho máy ảo trong phần cấu hình phần cứng của máy ảo đó.
- Cài trình điều khiển của hãng trong máy ảo như cài trên máy thật.
Một lưu ý về kiểu máy ảo: nên dùng kiểu khởi động hiện đại và bộ chip mô phỏng đời mới, vì kiểu cũ thường gặp trục trặc với card đồ họa.
Những lỗi hay gặp
Máy ảo không khởi động sau khi gán card. Thường do cấu hình khởi động của máy ảo không phù hợp, hoặc do card vẫn đang bị máy chủ giữ. Kiểm lại bước chặn trình điều khiển.
Trình điều khiển trong máy ảo báo lỗi mã bốn ba. Lỗi kinh điển với card dòng phổ thông, xảy ra khi trình điều khiển phát hiện mình đang chạy trong máy ảo. Có các tùy chọn cấu hình để che dấu điều này, và các phiên bản trình điều khiển gần đây đã bớt khắt khe hơn nhiều.
Nhóm thiết bị chứa quá nhiều thứ. Nếu card nằm chung nhóm với bộ điều khiển ổ đĩa hoặc card mạng mà máy chủ cần, bạn không chuyển được. Cách xử là đổi khe cắm cho card, hoặc đổi bo mạch.
Máy chủ mất màn hình sau khi cấu hình. Xảy ra khi bạn chuyển card duy nhất của máy. Hãy đảm bảo máy chủ còn một đường ra màn hình khác, hoặc quản trị hoàn toàn qua mạng và qua công cụ quản trị từ xa.
Máy ảo không chuyển được sang máy chủ khác. Đây không phải lỗi mà là giới hạn: máy ảo gắn thiết bị vật lý thì không chuyển khi đang chạy được. Cần tắt máy ảo, gỡ card, chuyển, rồi gán card ở máy mới.
Cân nhắc cho tải trí tuệ nhân tạo
Bốn điểm thực tế khi dựng hệ thống chạy mô hình.
- Dung lượng bộ nhớ card quyết định mô hình nào chạy được. Đây là ràng buộc cứng, quan trọng hơn tốc độ tính toán với phần lớn trường hợp suy luận.
- Một card một máy ảo. Nếu cần nhiều nhóm dùng chung, hãy dựng một máy ảo làm máy chủ suy luận rồi cho các ứng dụng gọi vào qua giao diện lập trình, thay vì chia card.
- Điện và tản nhiệt. Card tính toán chạy đầy tải liên tục tỏa nhiệt lớn. Máy để bàn cải tiến thường không chịu nổi, nên máy chủ được chứng nhận là lựa chọn an toàn hơn.
- Cân nhắc thuê thay vì mua. Card tính toán đắt và mất giá nhanh. Với nhu cầu chưa ổn định, thuê máy chủ có sẵn card thường hợp lý hơn về tài chính.
Điều kiện phần cứng, kiểm trước khi mua
| Điều kiện | Kiểm bằng cách nào |
|---|---|
| Bộ xử lý và bo mạch hỗ trợ ảo hóa thiết bị vào ra | Xem tài liệu bo mạch, và bật tính năng đó trong phần thiết lập |
| Card đồ họa nằm ở nhóm riêng, không dùng chung với thiết bị khác | Kiểm bằng lệnh sau khi bật tính năng ảo hóa thiết bị vào ra |
| Nguồn điện đủ công suất cho card | Card tăng tốc tiêu thụ điện nhiều, nguồn thiếu gây tắt máy đột ngột |
| Khe cắm đủ rộng và đủ làn kết nối | Card cắm vào khe ít làn sẽ chạy chậm hơn nhiều |
Các bước và cách kiểm ở mỗi bước
# 1. Bat tinh nang ao hoa thiet bi vao ra trong phan thiet lap bo mach# Ten goi khac nhau tuy hang, tim muc lien quan toi ao hoa # 2. Bat trong cau hinh khoi dong cua he dieu hanh may chu # 3. Kiem cac nhom thiet bifor d in /sys/kernel/iommu_groups/*/devices/*; do echo "$d"done | head -n 40# Card do hoa phai nam mot nhom rieng.# Neu no chung nhom voi thiet bi khac, ban phai chuyen tiep ca nhom,# va dieu do thuong khong lam duoc. # 4. Chan trinh dieu khien cua may chu chiem card# Neu may chu da nap trinh dieu khien, may ao khong lay duoc card # 5. Gan card vao may ao, khoi dong, kiem tra ben trong may aolspci | grep -i vganvidia-smi # neu la card cua hang do # Loi hay gap nhat: khoi dong may ao thi man hinh may chu tat den.# Nguyen nhan: ban da chuyen tiep card ma may chu dang dung.# Xu ly: dung card thu hai cho may chu, hoac quan tri hoan toan tu xa.Cân nhắc riêng cho tải trí tuệ nhân tạo
- Bộ nhớ của card là giới hạn cứng. Mô hình không vừa bộ nhớ card thì không chạy được, không có cách nào bù bằng bộ nhớ hệ thống mà không chậm đi rất nhiều.
- Một card chỉ gán được cho một máy ảo tại một thời điểm với cách chuyển tiếp thông thường. Muốn nhiều máy ảo dùng chung một card thì cần công nghệ chia card, và không phải card nào cũng hỗ trợ.
- Tính cả điện và tản nhiệt. Card tăng tốc chạy tải nặng liên tục sinh nhiệt lớn, và máy chủ để trong phòng không có điều hòa sẽ tự giảm hiệu năng.
Câu hỏi thường gặp
Chia một card cho nhiều máy ảo được không
Có công nghệ cho phép, nhưng cần card dòng chuyên dụng cho trung tâm dữ liệu và cần giấy phép riêng của hãng. Với card phổ thông thì không, một card chỉ gán được cho một máy ảo tại một thời điểm.
Card tích hợp trong CPU có chuyển tiếp được không
Về kỹ thuật thì có trong một số trường hợp, nhưng phức tạp và ít giá trị vì card tích hợp yếu. Nếu mục tiêu là tính toán thì cần card rời.
Chạy mô hình trên CPU thay vì card đồ họa được không
Được với các mô hình nhỏ và với nhu cầu ít người dùng, nhất là khi dùng các bản mô hình đã nén. Tốc độ chậm hơn nhiều lần nhưng đủ cho một số việc nội bộ, và không phải đầu tư card.
Có cần chuyển tiếp card cho tác vụ chuyển mã video không
Tùy quy mô. Nhiều CPU máy chủ có bộ tăng tốc chuyển mã tích hợp, đủ cho vài luồng. Với nhiều luồng đồng thời thì card rời cho hiệu quả cao hơn hẳn về số luồng trên mỗi watt.
