Chia sẻ tình yêu dành cho GPU trong Machine Learning – Phần 2

Trong Phần 1 của “Chia sẻ tình yêu GPU”, chúng tôi đã đề cập đến nhu cầu cải thiện việc sử dụng bộ tăng tốc GPU và cách một công nghệ tương đối đơn giản như VMware DirectPath I/O cùng với một số quy trình chia sẻ có thể là điểm khởi đầu. Giống như hầu hết mọi thứ trong công nghệ, một số công nghệ bổ sung và kiến ​​thức, bạn có thể đạt được những mục tiêu cao hơn ngoài những điều cơ bản. Trong bài viết này, chúng tôi sẽ giới thiệu một công nghệ khác để quản lý GPU dưới dạng dịch vụ – NVIDIA GRID 9.0.

Trước khi chuyển sang công nghệ tiếp theo này, hãy xem xét một số hạn chế của việc sử dụng DirectPath I/O để truy cập máy ảo vào các chức năng PCI vật lý. Tài liệu trực tuyến về VMware DirectPath I/O có danh sách đầy đủ các tính năng không có sẵn cho các máy ảo được cấu hình bằng DirectPath I/O. Một số trong những điều quan trọng nhất là: 

  • Khả năng chịu lỗi
  • Tính sẵn sàng cao
  • Ảnh chụp nhanh
  • Thêm và xóa nóng các thiết bị ảo

Kỹ thuật “chuyển qua” phần cứng máy chủ sang máy ảo (VM) rất đơn giản nhưng không tận dụng được nhiều ưu điểm của ảo hóa phần cứng thực sự. NVIDIA cung cấp phần mềm ảo hóa GPU trong trung tâm dữ liệu trong nhiều năm. Trường hợp sử dụng chính là Cơ sở hạ tầng máy tính ảo (VDI) sử dụng vGPU. Bản phát hành hiện tại – NVIDIA vGPU Software 9 bổ sung khả năng vComputeServer vGPU để hỗ trợ trí tuệ nhân tạo, học sâu và khối lượng công việc tính toán hiệu năng cao. Phần còn lại của bài viết này sẽ đề cập đến việc sử dụng vGPU cho machine learning trong môi trường VMware ESXi. 

vmware vgu.png

Chúng tôi muốn so sánh thiết lập và tính năng của phiên bản phần mềm NVIDIA mới nhất này, vì vậy chúng tôi đã nỗ lực thêm vComputeServer vào PowerEdge ESXi mà chúng tôi đã sử dụng cho nghiên cứu I/O DirectPath trong blog đầu tiên của chúng tôi trong loạt bài này. GPU T4 kiến ​​trúc NVIDIA Turing của chúng tôi nằm trong danh sách các thiết bị được hỗ trợ, vì vậy chúng tôi có thể kiểm tra hộp đó và phiên bản ESXi của chúng tôi có tương thích hay không. Tài liệu phần mềm NVIDIA vGPU dành cho VMware vSphere có danh sách đầy đủ các yêu cầu và ghi chú về khả năng tương thích. 

Bạn sẽ phải đưa máy chủ của mình vào chế độ bảo trì trong khi cài đặt và sau đó khởi động lại sau khi quá trình cài đặt VIB hoàn tất. Khi máy chủ ESXi trực tuyến trở lại, bạn có thể sử dụng lệnh nvidia-smi quen thuộc mà không cần tham số và xem danh sách tất cả các GPU có sẵn cho biết bạn đã sẵn sàng tiếp tục.

Chúng tôi đã định cấu hình hai GPU T4 của mình để sử dụng vGPU và thiết lập các giấy phép cần thiết. Sau đó, chúng tôi làm theo cách tiếp cận tương tự mà chúng tôi đã sử dụng cho DirectPath I/O để xây dựng các mẫu VM với mọi thứ phổ biến cho tất cả các hoạt động phát triển và sử dụng những mẫu đó để tạo các VM dành riêng cho nhà phát triển – một có tất cả các công cụ Python và một có các công cụ R. Phần mềm NVIDIA vGPU chỉ hỗ trợ hệ điều hành khách 64-bit. Không có hệ điều hành khách 32-bit nào được hỗ trợ. Bạn chỉ nên sử dụng bản phát hành hệ điều hành khách được cả phần mềm NVIDIA vGPU và VMware hỗ trợ. NVIDIA sẽ không thể hỗ trợ các bản phát hành hệ điều hành khách không được phần mềm ảo hóa của bạn hỗ trợ.

vmware vgpu.JPG.jpg

Bây giờ chúng ta đã có cả thiết lập hỗ trợ DirectPath I/O và môi trường NVIDIA vGPU, hãy so sánh trải nghiệm người dùng. Đầu tiên, bắt đầu với bản phát hành vSphere 6.7 U1, vMotion với vGPU cũng như tính năng tạm dừng và tiếp tục với vGPU đều được hỗ trợ trên các GPU phù hợp. Luôn kiểm tra Tài liệu phần mềm GPU ảo NVIDIA để biết tất cả các chi tiết mới nhất. vSphere 6.7 chỉ hỗ trợ tạm dừng và tiếp tục với vGPU. vMotion với vGPU không được hỗ trợ trong phiên bản 6.7. [hãy kiểm tra kỹ điều này vì vMotion được hỗ trợ. Tôi chỉ không thể nhớ đó là phiên bản và số cập nhật nào] 

vMotion có thể cực kỳ có giá trị đối với các nhà khoa học dữ liệu thực hiện các công việc đào tạo kéo dài mà bạn không nhận được với DirectPath I/O và việc tạm dừng/tiếp tục các máy ảo hỗ trợ vGPU tạo cơ hội tăng lợi nhuận từ khoản đầu tư GPU của bạn bằng cách kích hoạt các kịch bản với mô hình khoa học dữ liệu đào tạo chạy vào ban đêm và các ứng dụng tương tác chuyên sâu về đồ họa chạy vào ban ngày sử dụng cùng một nhóm GPU. Các tổ chức có nhân viên trải rộng trên các múi giờ cũng có thể thấy rằng việc tạm dừng/tiếp tục các máy ảo hỗ trợ vGPU sẽ hữu ích.

Vẫn còn rất nhiều việc chúng tôi muốn làm trong phòng thí nghiệm của mình, bao gồm quay một số video thông tin sẽ nêu bật một số khái niệm mà chúng tôi đã nói đến trong hai bài viết trước. Chúng tôi cũng đang bắt đầu xây dựng một số máy ảo được định cấu hình bằng Docker để có thể xem xét sử dụng vGPU của mình với các vùng chứa đào tạo và suy luận sâu NVIDIA GPU Cloud (GCP). Mục tiêu của chúng tôi là thu hút nhiều người hơn thiết lập môi trường hộp cát bằng cách sử dụng các bài viết này cùng với các liên kết NVIDIA và VMware mà chúng tôi đã cung cấp. Chúng tôi muốn biết về trải nghiệm của bạn khi làm việc với vGPU và VMware. Nếu bạn có bất kỳ câu hỏi hoặc nhận xét nào, hãy gửi chúng trong phần phản hồi bên dưới.

Cảm ơn vì đã đọc,