Rusticl מוסמך כעת ותומך ב-OpenCL 3.0

חלודה-2

הבקר Rusticl של Mesa עבר בהצלחה את מבחני ה-Conformance Test Suite (CTS).

ل מפתחי פרויקט Mesa הכריזו על הסמכת הבקר הכפרי על ידי ארגון כרונוס, אשרe עבר בהצלחה את כל מבחני ה-CTS (Kronos Conformance Test Suite) והוכר כתואם באופן מלא למפרט OpenCL 3.0, המגדיר את ממשקי ה-API של שפת C והרחבות לתזמור מחשוב מקביל בין פלטפורמות.

בכך ניתן היה לקבל תעודה המאפשרת הצהרה רשמית על התאמה לתקנים ושימוש בסימני המסחר של כרונוס המשויכים אליהם.

הדרייבר נכתב ב-Rust ופותח על ידי Karol Herbst של Red Hat, המעורב בפיתוח של Mesa, דרייבר הנובו וערימת OpenCL הפתוחה.

רוסטיקל עובר את כל מבחני ה-CTS

Rusticl הפך זה עתה לקוד ה-Rust הראשון בתוך Mesa, כאשר מימוש OpenCL מוזג לאחרונה במהדורת Mesa 22.3, ויש לציין כי הבדיקות בוצעו על מערכת עם אינטל GPU משולב דור 12 באמצעות מנהל ההתקן Gallium3D Iris.

למי שלא מודע לבקר, Rusticl צריך לדעת שזה פועל כמקביל לממשק OpenCL Clover של Mesa והוא פותח גם באמצעות ממשק Gallium של Mesa. תלתן הוזנחה זה מכבר והכפריים מוצבים כמחליפו העתידי. בנוסף להשגת תאימות OpenCL 3.0, פרויקט Rusticl שונה מ-Clover בכך שהוא תומך בהרחבות OpenCL לעיבוד תמונה, אך עדיין אינו תומך בפורמט FP16.

Rusticl משתמש ב-rust-bindgen כדי ליצור bindings עבור Mesa ו-OpenCL המאפשרים לקרוא לפונקציות Rust מקוד C ולהיפך. האפשרות להשתמש בשפת Rust בפרויקט Mesa נדונה מאז 2020.

בין היתרונות של תמיכת Rust מזכירים את שיפור האבטחה והאיכות של נהגים על ידי ביטול בעיות אופייניות בעבודה עם זיכרון, כמו גם את אפשרות לכלול פיתוחים של צד שלישי במסה, כגון Kazan (יישום של Vulkan in Rust). בין החסרונות ישנה סיבוך של מערכת ה-build, חוסר נכונות לקשר למערכת חבילת העומס, עלייה בדרישות לסביבת ה-build והצורך לכלול את מהדר Rust ב-build dependencies הנדרשות לבניית מפתח. רכיבי שולחן עבודה בלינוקס.

הקוד לתמיכה בשפת Rust ו הבקר הכפרי התקבל למיינסטרים של Mesa ויוצע במהדורת Mesa 22.3, שצפויה בסוף נובמבר. תמיכת Rust ו-Rusticl תהיה מושבתת כברירת מחדל ותדרוש קומפילציה עם אפשרויות מפורשות "-D gallium-rusticl=true -Dllvm=enabled -Drust_std=2021".

בעת הקומפילציה, המהדר rustc, bindgen, LLVM, SPIRV-Tools ו-SPIRV-LLVM-Translator נדרשים כתלות נוספת.

יש לציין שהואה-API של OpenCL 3.0 מכסה את כל גרסאות 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 עבור ליבות חישוביות, נוספה תמיכה בפעולות עם תת-קבוצות.

לבסוף, ראוי לציין גם את העבודה על הפיתוח של דרייבר הנובו, שנעשתה גם היא על ידי קרול הרבסט. מנהל ההתקן של נובו מוסיף תמיכה בסיסית ב-OpenGL עבור GNU NVIDIA GeForce RTX 30xx המבוססת על מיקרו-ארכיטקטורת אמפר שפורסמה מאז מאי 2020. שינויים הקשורים לתמיכה בשבב חדש ייכללו בליבת Linux 6.2 ו-Mesa 22.3.

אם אתה מעוניין לדעת יותר על כך, אתה יכול לעיין בפרטים בקישור הבא.


השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי לנתונים: מיגל אנחל גטון
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.