كيف يعمل الضغط في بنية الذاكرة الموجهة للكائنات

قام فريق من المهندسين من معهد ماساتشوستس للتكنولوجيا بتطوير تسلسل هرمي للذاكرة موجه للكائنات للعمل مع البيانات بشكل أكثر كفاءة. في المقالة سوف نفهم كيف يعمل.

كيف يعمل الضغط في بنية الذاكرة الموجهة للكائنات
/ PxHere /PD

كما هو معروف، فإن الزيادة في أداء وحدات المعالجة المركزية الحديثة لا يصاحبها انخفاض مماثل في زمن الوصول عند الوصول إلى الذاكرة. يمكن أن يصل الفرق في التغيرات في المؤشرات من سنة إلى أخرى إلى 10 مرات (PDF، الصفحة 3). ونتيجة لذلك، تنشأ اختناقات تمنع الاستخدام الكامل للموارد المتاحة وتبطئ معالجة البيانات.

يحدث تلف الأداء بسبب ما يسمى بتأخير إزالة الضغط. في بعض الحالات، قد يستغرق فك ضغط البيانات التحضيري ما يصل إلى 64 دورة للمعالج.

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

كيف تعمل التكنولوجيا

يعتمد الحل على ثلاث تقنيات: Hotpads وZippads وخوارزمية الضغط COCO.

تعد لوحات التشغيل عبارة عن تسلسل هرمي يتم التحكم فيه بواسطة البرامج للذاكرة المسجلة عالية السرعة (تطبيق المسودة). تسمى هذه السجلات منصات وهناك ثلاثة منهم - من L1 إلى L3. يقومون بتخزين كائنات ذات أحجام مختلفة وبيانات التعريف ومصفوفات المؤشر.

في الأساس، الهندسة المعمارية عبارة عن نظام ذاكرة تخزين مؤقت، ولكنها مصممة للعمل مع الكائنات. يعتمد مستوى اللوحة التي يوضع عليها الكائن على عدد مرات استخدامه. في حالة "تجاوز" أحد المستويات، يبدأ النظام آلية مشابهة لـ "جامعي البيانات المهملة" في لغات Java أو Go. يقوم بتحليل الكائنات التي يتم استخدامها بشكل أقل تكرارًا من غيرها وينقلها تلقائيًا بين المستويات.

تعمل Zippads أعلى Hotpads - حيث تعمل على أرشفة وإلغاء أرشفة البيانات التي تدخل أو تخرج من المستويين الأخيرين من التسلسل الهرمي - لوحة L3 والذاكرة الرئيسية. تقوم الوسادات الأولى والثانية بتخزين البيانات دون تغيير.

كيف يعمل الضغط في بنية الذاكرة الموجهة للكائنات

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

لضغط الكائنات، يتم استخدام خوارزمية COCO (Cross-Object COmpression)، والتي سنناقشها لاحقًا، على الرغم من أن النظام يمكنه أيضًا العمل معها قاعدة دلتا فوري أو الشركة العامة للفوسفات. خوارزمية COCO هي نوع من الضغط التفاضلي (الضغط التفاضلي). فهو يقارن الكائنات بـ "القاعدة" ويزيل البتات المكررة - انظر الرسم البياني أدناه:

كيف يعمل الضغط في بنية الذاكرة الموجهة للكائنات

وفقًا للمهندسين من معهد ماساتشوستس للتكنولوجيا، فإن التسلسل الهرمي للذاكرة الموجهة للكائنات لديهم أكثر إنتاجية بنسبة 17٪ من الأساليب الكلاسيكية. وهو أقرب بكثير من حيث التصميم إلى بنية التطبيقات الحديثة، وبالتالي فإن الطريقة الجديدة تتمتع بإمكانات محتملة.

ومن المتوقع أن تبدأ الشركات التي تعمل بالبيانات الضخمة وخوارزميات التعلم الآلي في استخدام التكنولوجيا أولاً. الاتجاه المحتمل الآخر هو المنصات السحابية. سيتمكن موفرو IaaS من العمل بكفاءة أكبر مع المحاكاة الافتراضية وأنظمة تخزين البيانات وموارد الحوسبة.

مواردنا ومصادرنا الإضافية:

كيف يعمل الضغط في بنية الذاكرة الموجهة للكائنات "كيف نبني IaaS": مواد حول عمل 1cloud

كيف يعمل الضغط في بنية الذاكرة الموجهة للكائنات تطور العمارة السحابية 1cloud
كيف يعمل الضغط في بنية الذاكرة الموجهة للكائنات خدمة تخزين الكائنات في 1cloud

كيف يعمل الضغط في بنية الذاكرة الموجهة للكائنات الهجمات المحتملة على HTTPS وكيفية الحماية منها
كيف يعمل الضغط في بنية الذاكرة الموجهة للكائنات ما هي أوجه التشابه والاختلاف بين نهجي التسليم المستمر والتكامل المستمر؟
كيف يعمل الضغط في بنية الذاكرة الموجهة للكائنات كيفية حماية الخادم على الإنترنت: تجربة 1cloud

المصدر: www.habr.com

إضافة تعليق