מה חדש ב-WebGPU ‏ (Chrome 141)

François Beaufort
François Beaufort

תאריך פרסום: 24 בספטמבר 2025

הושלם שינוי הגוון של תמונת ה-IR

פרויקט ארוך טווח (מעל שנתיים וחצי) לשיפור הביצועים של החלקים הפנימיים של Tint, מהדר WGSL, הושלם. הוספנו ייצוג ביניים (IR) לחלק האחורי של המערכת, בין עץ התחביר המופשט (AST) הנוכחי לבין מחוללי הקוד של החלק האחורי של המערכת. ההוספה של IR אפשרה לצוות Chrome להסיר את כל הטרנספורמציות של AST וליצור אותן מחדש כטרנספורמציות של IR, שהן מהירות הרבה יותר בגלל הבדלים בארכיטקטורה. במערכת הפנימית של Tint, בחלק מהפלטפורמות, נרשם שיפור במהירות של עד פי שבעה בעקבות השינויים האלה.

ה-IR החדש הזה פותח פוטנציאל משמעותי לניתוח ולהמרה מתוחכמים של הצללות בקנה מידה גדול, ומבטיח לא רק שיפורים משמעותיים בביצועים, אלא גם דרך חלקה יותר ל-Chrome לספק תכונות חדשות ומלהיבות של WebGPU בעתיד.

החל מאבן הדרך הזו, כל מחוללי קוד ה-Backend פועלים מתוך ייצוג ה-IR, כל הטרנספורמציות של ה-AST נמחקו, וכל קוד התמיכה של ה-AST להפעלת הטרנספורמציות הוסר.

במסגרת העבודה לשיפור ה-IR, הקצה הקדמי של SPIR-V (שמשמש אפליקציות להמרה של SPIR-V ל-WGSL) הומרה מיצירת ייצוג של AST ליצירה ישירות ל-IR. השיפור הזה כולל גם תכונות שהיו צפויות מזמן, כמו תמיכה ב-float 16 בקצה הקדמי של SPIR-V.

ניתוח טווח מספרים שלמים בקומפיילר WGSL

צוות Chrome משיק בהדרגה ניתוח חדש של טווח מספרים שלמים עבור Tint, מהדר שפת ההצללה של WebGPU. ניתוח טווח מספרים שלמים מעריך את הערכים המינימליים והמקסימליים שמשתנה של מספר שלם יכול לקבל במהלך ביצוע התוכנית, בלי להריץ את התוכנית בפועל.

המטרה של התכונה הזו היא לשפר את היעילות על ידי צמצום הצורך בבדיקות יקרות של גבולות, ובקרוב היא תופעל כברירת מחדל בכל הפלטפורמות. מידע נוסף

עדכון SPIR-V 1.4 לבק-אנד ב-Vulkan

התמיכה ב-SPIR-V 1.4 מושקת במכשירי Android ו-ChromeOS שבהם היא זמינה. העדכון הזה מאפשר ל-Tint, מהדר WGSL, לנצל תכונות חדשות של SPIR-V, הרחבות והוראות חדשות ליצירת קוד יעילה יותר בתרחישים מסוימים כשמבצעים קומפילציה של shaders ב-Vulkan. מידע נוסף

עדכונים של Dawn

הכותרת המתוקננת webgpu.h, שמגדירה את ה-API המרכזי של WebGPU C, נחשבת עכשיו סופית ליציבה. היציבות הזו חלה באופן ספציפי על ה-API המרכזי שמוגדר במעלה הזרם, ולא כוללת תוספי הטמעה (לדוגמה, מ-Dawn או מ-Emdawnwebgpu), ולכן מומלץ להשתמש ב-webgpu.h שסופק על ידי ההטמעה המדויקת שאליה אתם מקשרים. הכותרת יציבה, אבל יכול להיות שעדיין תיתקלו בהבדלים לא מכוונים בין ההטמעות, כי אנחנו ממשיכים לתקן באגים ולטפל בבעיות תאימות בכל המערכת. אם כן, דווחו על באג.

תודה לתורם החיצוני William Candillon, עכשיו אפשר למצוא קבצים בינאריים של Dawn שנבנו מראש כארטיפקטים ב-GitHub Actions. הם כוללים קובצי ‎ .lib סטטיים ל-Android, חבילת ‎ .XCFramework ל-Apple וכל קובצי הכותרת הנדרשים. אפשר לעיין ב-Dawn PR #39 ובדוגמה של הארטיפקטים.

המידע הזה כולל רק נקודות עיקריות. רשימה מלאה של קומיטים

מה חדש ב-WebGPU

רשימה של כל הנושאים שמופיעים בסדרה What's New in WebGPU.

‫Chrome 147-148

Chrome 146

Chrome 145

Chrome 144

Chrome 143

Chrome 142

Chrome 141

Chrome 140

Chrome 139

Chrome 138

Chrome 137

Chrome 136

Chrome 135

Chrome 134

Chrome 133

Chrome 132

Chrome 131

Chrome 130

Chrome 129

‫Chrome 128

Chrome 127

Chrome 126

Chrome 125

Chrome 124

Chrome 123

Chrome 122

Chrome 121

Chrome 120

Chrome 119

Chrome 118

Chrome 117

Chrome 116

Chrome 115

Chrome 114

Chrome 113