2013-01-24 37 views
14

Tôi đang tìm kiếm các tùy chọn bật ảo hóa GPU trên nền tảng đám mây động tương tự như cách AWS gán GPU cho Cluster GPU Instances.Đám mây ảo hóa đám mây riêng tư tương tự như các trường hợp GPU cụm Amazon Web Services

Dự án của tôi đang làm việc để đứng lên một đám mây nội bộ. Một yêu cầu là khả năng phân bổ GPU cho các máy ảo/các cá thể để xử lý CUDA phía máy chủ.

USC dường như đang hoạt động trên OpenStack enhancements để hỗ trợ điều này nhưng chưa sẵn sàng. Đây sẽ là chính xác những gì tôi đang tìm kiếm nếu nó đã được đầy đủ chức năng trong OpenStack.

NVIDIA VGX dường như chỉ hỗ trợ cấp phát GPU cho USMs, đó là ảo hóa máy tính để bàn từ xa hoàn toàn trên GPU. Nếu tôi sai, và VGX sẽ kích hoạt tính năng CUDA phía máy chủ từ các máy ảo/các cá thể sau đó hãy cho tôi biết.

+2

Có thể gán GPU cho máy ảo bằng [Xen HVM hypervisor] (http://wiki.xen.org/wiki/XenVGAPassthrough). Đó là một thiết lập không tầm thường, tuy nhiên, và trong tất cả các xác suất có rất nhiều cạnh thô để hoạt động của nó. Nhiệm vụ phải được thực hiện trước khi VM khởi động. Và nó có hiệu lực trong việc lập bản đồ 1: 1 của GPU cho máy ảo, bạn không thể chia sẻ một GPU đơn lẻ giữa nhiều máy ảo cùng một lúc theo cách này (sử dụng PCI Passthrough). –

+1

@Robert Crovella - Cảm ơn. Tôi thực sự muốn tìm một cái gì đó mà sẽ tích hợp liền mạch hơn với một công cụ quản lý đám mây, nhưng có một lựa chọn có thể là ít nhất là một sự khởi đầu. Tôi sẽ phải điều tra xem API CUDA đầy đủ có sẵn không. –

+0

@Robert Crovella là điểm trên, nhưng nếu bạn đang thử nó với Xen sau đó có một vài điều kiện tiên quyết: CPU phải có Intel VT/d hoặc AMD IOMMU (không có khả năng là một vấn đề hiện nay), một GPU "kích hoạt" cho Hỗ trợ chuyển tiếp qua VT-d/IOMMU (NVIDIA dường như gọi hệ điều hành đa hệ điều hành này) - điều này có nghĩa là M series Teslas và Quadros, Xen 4.1 (và lên, có thể?) – Blairo

Trả lời

4

"ảo hóa dựa trên đám mây NVIDIA dựa trên đám mây động tương tự như cách AWS gán GPU cho trường hợp GPU nhóm."

AWS không thực sự phân bổ GPU động: Mỗi GPU Cluster Compute có 2 GPU cố định. Tất cả các máy chủ khác (bao gồm cả Cluster Compute) đều không có bất kỳ GPU nào. I E. họ không có API nơi bạn có thể nói "GPU hay không", nó được cố định với loại hộp, sử dụng phần cứng cố định.

Chế độ truyền qua trên Xen được tạo riêng cho trường hợp sử dụng của bạn: Chuyển phần cứng trên thông qua Máy chủ cho Khách. Nó không phải là 'động' theo mặc định, nhưng bạn có thể viết một số mã mà chọn một trong số các khách hàng để có được mỗi thẻ trên máy chủ.

+0

Một trường hợp GPU cụm vẫn là một máy ảo chạy trên đầu trang của các hypervisor Xen mặc dù, phải không? Vì vậy, khi một ví dụ dừng lại, bạn có thể gán lại các GPU mà nó đang sử dụng cho một cá thể mới, đúng không? Bạn không thể thực hiện nhiệm vụ khi máy ảo đang bật, nhưng điều đó tốt - bạn vẫn đang phân bổ động các tài nguyên GPU cho các cá thể VM. Tôi có đúng không? –

+0

Có nó đang chạy dưới Xen. Nhưng không, bạn không chỉ định chúng: AWS. Khi bạn yêu cầu một cg1.4xlarge, bạn nhận được một hộp trên một rack khác vì chúng có GPU và các hộp khác thì không. Nhiều khả năng, họ lập bản đồ tĩnh GPU cho các trường hợp, vì phải có 2 GPU cho mỗi trường hợp. – BraveNewCurrency

0

Có một giải pháp gọi là GPUBox ảo hóa các thiết bị trong CUDA. Nó có thể được sử dụng trên Amazon hoặc cơ sở hạ tầng của riêng bạn.

Trích từ trang web (http://renegatt.com/solutions.php):

Phần mềm GPUBox đơn giản hoá quản lý GPU bằng cách tách các ứng dụng và hệ điều hành từ các thiết bị GPU nằm bên dưới. Nó là một giải pháp cho phép chia sẻ năng động các thiết bị GPU từ cùng một hồ bơi, bởi nhiều người dùng. (...) GPUBox cho phép cung cấp theo yêu cầu thiết bị GPU vào máy vật lý hoặc máy ảo với hệ điều hành Linux hoặc Windows. Nhóm thiết bị GPU được chia sẻ trong số người dùng dẫn đến giảm tổng mức tiêu thụ điện năng và phần cứng không hoạt động.

Các vấn đề liên quan