Το Rusticl είναι πλέον πιστοποιημένο και υποστηρίζει το OpenCL 3.0

Σκουριά-2

Ο ελεγκτής Rusticl της Mesa πέρασε με επιτυχία τις δοκιμές Conformance Test Suite (CTS).

Ο οι προγραμματιστές του έργου Mesa ανακοίνωσαν την πιστοποίηση του ελεγκτή rusticl από την οργάνωση Χρόνος, η οποίαe πέρασε με επιτυχία όλες τις δοκιμές CTS (Kronos Conformance Test Suite) και αναγνωρίστηκε ως πλήρως συμβατή με την προδιαγραφή OpenCL 3.0, η οποία ορίζει τα API της γλώσσας C και τις επεκτάσεις για την ενορχήστρωση παράλληλων υπολογιστών μεταξύ πλατφορμών.

Με αυτό, κατέστη δυνατή η απόκτηση πιστοποιητικού που επιτρέπει την επίσημη δήλωση συμβατότητας με τα πρότυπα και τη χρήση των εμπορικών σημάτων Khronos που σχετίζονται με αυτά.

Το πρόγραμμα οδήγησης είναι γραμμένο σε Rust και αναπτύχθηκε από τον Karol Herbst της Red Hat, ο οποίος συμμετέχει στην ανάπτυξη του Mesa, του Nouveau driver και της ανοιχτής στοίβας OpenCL.

Το Rusticl περνάει όλες τις δοκιμές CTS

Το Rusticl μόλις έγινε ο πρώτος κώδικας Rust στο Mesa, με μια εφαρμογή OpenCL που πρόσφατα συγχωνεύτηκε στην έκδοση Mesa 22.3 και πρέπει να σημειωθεί ότι η δοκιμή πραγματοποιήθηκε σε ένα σύστημα με ενσωματωμένη GPU Intel 12ης γενιάς χρησιμοποιώντας το πρόγραμμα οδήγησης Gallium3D Iris.

Για όσους δεν γνωρίζουν τον ελεγκτή, ο Rusticl πρέπει να γνωρίζει ότι αυτό λειτουργεί ως αντίστοιχο της διεπαφής OpenCL Clover της Mesa και έχει επίσης αναπτυχθεί χρησιμοποιώντας τη διεπαφή Gallium της Mesa. Το τριφύλλι έχει παραμεληθεί εδώ και καιρό και το ρουστίκ τοποθετείται ως μελλοντική αντικατάστασή του. Εκτός από την επίτευξη συμβατότητας OpenCL 3.0, το έργο Rusticl διαφέρει από το Clover στο ότι υποστηρίζει επεκτάσεις OpenCL για επεξεργασία εικόνας, αλλά δεν υποστηρίζει ακόμη τη μορφή FP16.

Το Rusticl χρησιμοποιεί rust-bindgen για να δημιουργήσει συνδέσμους για το Mesa και το OpenCL που επιτρέπουν την κλήση των συναρτήσεων Rust από τον κώδικα C και αντίστροφα. Η δυνατότητα χρήσης της γλώσσας Rust στο έργο Mesa συζητείται από το 2020.

μεταξύ των Τα πλεονεκτήματα της υποστήριξης Rust αναφέρουν τη βελτίωση της ασφάλειας και της ποιότητας των προγραμμάτων οδήγησης εξαλείφοντας τυπικά προβλήματα κατά την εργασία με τη μνήμη, καθώς και την Δυνατότητα συμπερίληψης ανάπτυξης τρίτων στο Mesa, όπως το Kazan (μια υλοποίηση του Vulkan στο Rust). Μεταξύ των ελλείψεων, υπάρχει μια επιπλοκή του συστήματος κατασκευής, η απροθυμία σύνδεσης με το σύστημα πακέτου φόρτωσης, η αύξηση των απαιτήσεων για το περιβάλλον κατασκευής και η ανάγκη να συμπεριληφθεί ο μεταγλωττιστής Rust στις εξαρτήσεις κατασκευής που απαιτούνται για τη δημιουργία κλειδιού. στοιχεία επιφάνειας εργασίας στο Linux.

Ο κώδικας για την υποστήριξη της γλώσσας Rust και ο ελεγκτής rusticl έχει γίνει αποδεκτός στο mainstream Mesa και θα προσφερθεί στην κυκλοφορία του Mesa 22.3, η οποία αναμένεται στα τέλη Νοεμβρίου. Η υποστήριξη Rust and Rusticl θα είναι απενεργοποιημένη από προεπιλογή και θα απαιτεί μεταγλώττιση με ρητές επιλογές "-D gallium-rusticl=true -Dllvm=enabled -Drust_std=2021".

Κατά τη μεταγλώττιση, απαιτείται ο μεταγλωττιστής rustc, το bindgen, το LLVM, το SPIRV-Tools και το SPIRV-LLVM-Translator ως πρόσθετες εξαρτήσεις.

Πρέπει να αναφερθεί ότι ο ίδιοςΤο OpenCL 3.0 API καλύπτει όλες τις εκδόσεις OpenCL (1.2, 2.x), χωρίς να παρέχει ξεχωριστές προδιαγραφές για κάθε έκδοση. Το OpenCL 3.0 παρέχει τη δυνατότητα επέκτασης της βασικής λειτουργικότητας μέσω της ενσωμάτωσης πρόσθετων προδιαγραφών που θα επικαλύπτονται με τη μορφή επιλογών χωρίς να εμποδίζουν τη μονολιθική φύση του OpenCL 1.2/2.X.

Επιπλέον, η προδιαγραφή Το OpenCL 3.0 έχει ευθυγραμμιστεί με το περιβάλλον, τις επεκτάσεις και τις προδιαγραφές του η γενική ενδιάμεση αναπαράσταση SPIR-V, αυτό επίσης χρησιμοποιεί το Vulkan API. Με αυτό, η υποστήριξη για την προδιαγραφή SPIR-V 1.3 έχει επίσης προστεθεί στον πυρήνα OpenCL 3.0 ως προαιρετικό χαρακτηριστικό. Χρησιμοποιώντας την ενδιάμεση αναπαράσταση SPIR-V για υπολογιστικούς πυρήνες, προστέθηκε υποστήριξη για λειτουργίες με υποομάδες.

Τέλος, αξίζει επίσης να σημειωθεί η εργασία για την ανάπτυξη του οδηγού Nouveau, που έγινε επίσης από την Carol Herbst. Το πρόγραμμα οδήγησης Nouveau προσθέτει βασική υποστήριξη OpenGL για το GNU NVIDIA GeForce RTX 30xx που βασίζεται στη μικροαρχιτεκτονική Ampere που κυκλοφόρησε από τον Μάιο του 2020. Οι αλλαγές που σχετίζονται με την υποστήριξη νέων chip θα συμπεριληφθούν στον πυρήνα Linux 6.2 και Mesa 22.3.

Εάν ενδιαφέρεστε να μάθετε περισσότερα για αυτό, μπορείτε να συμβουλευτείτε τις λεπτομέρειες Στον ακόλουθο σύνδεσμο.


Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: Miguel Ángel Gatón
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.