يتحول WebKit إلى استخدام مكتبة Skia لعرض الرسومات ثنائية الأبعاد

يتحرك محرك متصفح WebKit من Apple، المستخدم في متصفحات مثل Safari وEpiphany (GNOME Web)، لاستخدام مكتبة Skia لعرض رسومات ثنائية الأبعاد، المستخدمة في Google Chrome وChromeOS وAndroid وFlutter، والتي تدعم عرض GPU. تم تنفيذ النقل بواسطة Igalia كجزء من مبادرة لتحسين أداء WebKitGTK لـ GNOME. كان السبب المذكور للترحيل هو الوصول إلى الحد الأقصى في عملية تحسين أداء العرض ثنائي الأبعاد باستخدام وحدة المعالجة المركزية (CPU)، والحاجة إلى استخدام وحدة معالجة الرسومات (GPU) لتحسين الأداء بشكل أكبر.

لم تنجح محاولات إضافة إمكانات عرض وحدة معالجة الرسومات ثنائية الأبعاد إلى مكتبة WebKit في القاهرة بسبب بنية المكتبة، وتم التخلي عن مشروع كتابة مكتبة عرض مخصصة بسبب صعوبة تحقيق التوازن بين الأداء وجودة العرض. ونتيجة لذلك، عاد المطورون من Igalia إلى فكرة استخدام مكتبة Skia، والتي كانت الحل الأمثل، ولكن تم رفضها في البداية بسبب عدم وجود واجهة برمجة تطبيقات مستقرة، ومشاكل في الاستخدام كتبعية خارجية و بحاجة إلى الحفاظ على وحدة طرف ثالث في WebKit.

تم تسهيل قرار نقل WebKit إلى مكتبة Skia من خلال حقيقة أن العيوب المرتبطة باستبدال التبعيات تفوق المزايا، والتي تم التعبير عنها ليس فقط في زيادة أداء العرض، ولكن أيضًا في تبسيط قاعدة التعليمات البرمجية وتوسيع إمكانيات تطوير وظائف جديدة . فيما يتعلق بالأداء، أظهر المنفذ الأولي لـ WebKit على Skia ضعف سرعة عرض التعليمات البرمجية القديمة باستخدام وحدة المعالجة المركزية عند تشغيل اختبارات MotionMark على جهاز الكمبيوتر.

في فبراير 2024، كان فرع WebKit الذي تم ترحيله إلى Skia جاهزًا للنقل إلى قاعدة بيانات WebKit الرئيسية. وبعد مناقشات مع المطورين من Google وSony وApple وRed Hat، تم اتخاذ القرار بترحيل WebKit من مكتبة القاهرة إلى Skia وتم الآن الالتزام بالرمز الذي يدعم Skia إلى خط WebKit الرئيسي.

المصدر: opennet.ru

إضافة تعليق