Μερικές μέρες πριν, Η NVIDIA ανακοίνωσε, μέσω λιστών αλληλογραφίας πυρήνα, απελευθερώνοντας ένα σύνολο από ενημερώσεις κώδικα που εφαρμόζει την τεχνολογία vGPU. Αυτές οι ενημερώσεις κώδικα επιτρέπουν τη χρήση εικονικών GPU της NVIDIA σε συστήματα εικονικοποίησης, παρέχοντας ισχυρή απόδοση GPU για διάφορους φόρτους εργασίας, που κυμαίνονται από εικονικούς σταθμούς εργασίας με ένταση γραφικών έως εφαρμογές επιστήμης δεδομένων και τεχνητής νοημοσύνης.
Το vGPU διαιρεί τους φυσικούς πόρους GPU της NVIDIA σε υλικό, εκχωρώντας σε κάθε vGPU τη δική του εικονική λειτουργία PCI Express (VF). Αυτό σημαίνει ότι μπορούν να εκτελεστούν συστήματα φιλοξενούμενων που εκτελούν διάφορες εργασίες, αξιοποιώντας στο έπακρο τους διαθέσιμους πόρους.
Αναφέρεται ότι Κάθε NVIDIA vGPU λειτουργεί παρόμοια με μια συμβατική GPU, δεδομένου ότι έχει μια σταθερή ποσότητα buffer πλαισίων και μία ή περισσότερες εξόδους εικονικής οθόνης, γνωστές και ως "κεφαλές". Η προσωρινή μνήμη πλαισίων vGPU εκχωρείται από τη φυσική προσωρινή μνήμη πλαισίων GPU τη στιγμή της δημιουργίας της και η vGPU διατηρεί την αποκλειστική χρήση αυτής της προσωρινής μνήμης μέχρι να καταστραφεί.
Επιτρέπει στο IT να επωφεληθεί από τα οφέλη διαχείρισης και ασφάλειας της εικονικοποίησης, καθώς και την απόδοση των GPU της NVIDIA που απαιτούνται για σύγχρονους φόρτους εργασίας. Το λογισμικό NVIDIA vGPU, που είναι εγκατεστημένο σε μια φυσική GPU σε έναν διακομιστή cloud ή εταιρικού κέντρου δεδομένων, δημιουργεί εικονικές GPU που μπορούν να κοινοποιηθούν σε πολλές εικονικές μηχανές.
Ο ελεγκτής είναι συμβατό με κάρτες γραφικών NVIDIA με βάση Μικροαρχιτεκτονική Ada Lovelaceκαι ο αριθμός των vGPU που μπορείτε να δημιουργήσετε εξαρτάται από το μοντέλο της κάρτας γραφικών σας.
Στο σύστημα υποδοχής, το τροποποιημένο πρόγραμμα οδήγησης Nouveau είναι υπεύθυνο για τη δημιουργία και τη σύζευξη vGPU με συστήματα φιλοξενούμενων. Εν τω μεταξύ, στο σύστημα επισκέπτη, χρησιμοποιούνται τυπικά ιδιόκτητα προγράμματα οδήγησης NVIDIA. Αυτό διασφαλίζει ότι οι δυνατότητες της vGPU μοιάζουν με αυτές μιας κανονικής GPU, επιτρέποντας την κατανομή ενός τμήματος της μνήμης από το φυσικό framebuffer της GPU στη vGPU, διασφαλίζοντας ότι χρησιμοποιείται μόνο από τη vGPU.
Υπάρχουν διάφοροι τύποι vGPU, το καθένα σχεδιασμένο για διαφορετικούς σκοπούς, με διαφορετικές χωρητικότητες μνήμης βίντεο, αριθμό εικονικών οθονών και μέγιστες αναλύσεις.
Η εφαρμογή καλύπτει το βασικό πρόγραμμα οδήγησης nvkm, που είναι χτισμένο πάνω στο ανοιχτό πρόγραμμα οδήγησης Nouveau, καθώς και στον διαχειριστή vGPU, που ονομάζεται vgpu_mgr, που λειτουργεί ως λειτουργική μονάδα VFIO (Virtual Function I/O). Αυτός ο διαχειριστής φροντίζει για βασικές λειτουργίες, όπως η δημιουργία και η διαγραφή των vGPU, η επιλογή του τύπου τους και η παροχή ενός API για έλεγχο από το χώρο χρήστη.
Η μονάδα NVIDIA vGPU VFIO μαζί με το VFIO βρίσκεται σε VF, παρέχει εκτεταμένες δυνατότητες και διαχείριση, για παράδειγμα, επιλογή τύπων vGPU, υποστήριξη για Ζωντανή μετεγκατάσταση και ενημέρωση προγράμματος οδήγησης.
Όπως και άλλες συσκευές συμβατές με VFIO, το VFIO παρέχει το
Τυπικό userpace API για τη διαχείριση του κύκλου ζωής της συσκευής και Υποστήριξη για προηγμένες λειτουργίες.Το NVIDIA vGPU Manager παρέχει την απαραίτητη υποστήριξη στο Πρόγραμμα οδήγησης παραλλαγής NVIDIA vGPU VFIO για δημιουργία/καταστροφή vGPU, δείτε τους διαθέσιμους τύπους vGPU, επιλέξτε τον τύπο της vGPU, κ.λπ.
Ο διαχειριστής του Το vGPU αλληλεπιδρά με το υποκείμενο πρόγραμμα οδήγησης GPU, το οποίο έχει άμεση πρόσβαση στο υλικό. Επιπλέον, φορτώστε το υλικολογισμικό GSP, το NVIDIA vGPU Manager εκτελεί τις ακόλουθες λειτουργίες:
- Διαχειρίζεται κοινόχρηστους/διαμερισμένους πόρους υλικού. Για παράδειγμα, κράτηση μνήμης FB,
κανάλια για τον διαχειριστή vGPU για τη δημιουργία vGPU. - Εξαίρεση χειρισμού. Για παράδειγμα, παράδοση συμβάντων GSP στον διαχειριστή vGPU.
- Αποστολή εκδηλώσεων φιλοξενίας. Για παράδειγμα, αναστολή/συνέχιση.
- Απαριθμήσεις διαμόρφωσης υλικού.
Τέλος, αν είστε ενδιαφέρεται να μάθει περισσότερα για αυτό, μπορείτε να ελέγξετε τις λεπτομέρειες στο παρακάτω σύνδεσμο, καθώς και μπορείτε επίσης να δείτε τον κώδικα σε δράση στο επόμενο βίντεο. Οι δοκιμές κώδικα πραγματοποιήθηκαν στο Ubuntu 24.04 ως επισκέπτης λειτουργικό σύστημα.