جديد الأخبار

علوم وتقنية

لغة محاكاة جديدة: أسرع بمئات المرات مع حجم أقل بعشرة أضعاف من الرماز البرمجي

عدن لنج - مرصد المستقبل

 

تمكن باحثون أمريكيون من ابتكار "سيميت"، وهي لغة برمجة قادرة على ترجمة التعليمات عالية المستوى، لكي تعمل وفق أدق التفاصيل، لتوفر بذلك عمليات محاكاة حاسوبية أسرع، وأقل كثافة من حيث عدد التعليمات البرمجية.

حالة المحاكاة

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

ولكن، ماذا لو وجدنا طريقة للمزاوجة بين هذين العالمين من الأنظمة، بحيث نسمح لأحدهما أن "يتحدث" بلغة الآخر؟

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

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

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

حلول سيميت

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

في البداية تطلب سيميت توصيفاً للترجمة بين التمثيل البياني للنظام والتمثيل المصفوفي، ومن ثم تقوم ببناء عمليات المحاكاة اعتماداً على الجبر الخطي.

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

وتسمح سيميت لكتلة التعليمات البرمجية نفسها أن تعمل على المعالجات التقليدية، أو وحدات المعالجة الرسومية (GPU)، مع الحفاظ على نفس المستوى من السرعة والأداء.

 
 


مواضيع مشابهه