Mozilla Firefox משפר את ביצועי JavaScript

משתמשי Firefox יכולים לצפות בביצועי JavaScript משופרים בדפדפן Firefox 83, כאשר עדכון ה- Warp למנוע ה- JavaScript של SpiderMonkey מופעל כברירת מחדל.

נקרא גם WarpBuilder, Warp משפר את ההיענות ואת השימוש בזיכרון ומזרז את טעינת העמודים על ידי ביצוע שינויים במהדרים של JiT (בדיוק בזמן). אופטימיזציה של JiT השתנתה להסתמך אך ורק על פורמט ה- CodeIR הקטן של קוד ה- BYT פשוט, במיוחד על נתוני CacheIR שנאספו על ידי שכבות הבסיס. הארכיטקטורה החדשה הממונפת בדפדפן מתוארת כמתחזקת יותר ומשחררת שיפורים נוספים ב- SpiderMonkey.

Firefox 83 פורסם בגרסת הביטא ב -20 באוקטובר והוא אמור להשתחרר ב -17 בנובמבר. עיוות הוכח כמהיר יותר מ- Ion, ה- JiT האופטימיזציה הקודם של SpiderMonkey, כולל שיפור של 20 אחוז בזמן הטעינה של Google Docs. גם אתרים עתירי JavaScript אחרים כמו נטפליקס ורדיט הראו שיפור.

התבססות Warp על CacheIR אפשרה הסרת קוד בכל המנוע שהיה דרוש כדי לעקוב אחר נתוני הסקה כלל-עולמיים המשמשים את IonBuilder, וכתוצאה מכך מהירות. למרות ש- IonBuilder ו- WarpBuilder מייצרים שניהם את Ion MIR, ייצוג ביניים המשמש את ה- JiT האחורי המיטוב, ל- IonBuilder היה צורך בקוד מורכב רב ב- WarpBuilder. עיוות גם יכול לעשות יותר עבודה מחוץ לשרשור וצריך פחות קומפילציות מחדש. התוכניות דורשות המשך אופטימיזציות ב- Warp, שכיום הוא איטי יותר מ- Ion בכמה מדדים סינתטיים.

עיוות החליף את הקצה הקדמי - שלב הבנייה של MIR - של ה- IonMonkey JiT. התוכניות קוראות להסיר את הקוד והארכיטקטורה הישנים, מה שצפוי לקרות ב- Firefox 85. כתוצאה מכך צפויים שיפורים נוספים בביצועים ובשימוש בזיכרון. Mozilla גם תמשיך לייעל את הקצה האחורי של ה- IonMonkey JiT באופן הדרגתי, מכיוון ש- Mozilla מאמינה שיש עדיין מקום לשיפור בעומסי עבודה עתירי JavaScript. כמו כן נמצא בפיתוח כלי למפתחי אתרים ולמוזילה לחקור נתוני CacheIR עבור פונקציית JavaScript.