Fully GPU-accelerated semistochastic Epstein-Nesbet perturbation theory
تقدم هذه الورقة تنفيذاً مسرعاً بالكامل عبر وحدات معالجة الرسومات لنظرية إبشتاين-نيسبت للاضطراب من الدرجة الثانية شبه العشوائية الموزعة، والتي تدمج الخطوات الحسابية الرئيسية وتستخدم مصفوفات CountSketch لتقليل تكاليف الذاكرة والاتصالات بشكل جذري، محققةً تسريعات تصل إلى 37.53 مرة مقارنة بالطرق القائمة على وحدة المعالجة المركزية مع الحفاظ على كفاءة توازٍ عالية لتطبيقات الكيمياء الكمومية واسعة النطاق.
المؤلف الأصلي:Lizhong Fu, Honghui Shang, Jinlong Yang
في العالم المجهري للذرات والجزيئات، يسعى العلماء لفهم كيفية حركة الإلكترونات وتفاعلها لتماسك المادة. وللقيام بذلك، يبنون نماذج رياضية لـ "الدالة الموجية"، وهي وصف يلتقط الطبيعة الاحتمالية المعقدة لهذه الجسيمات المتناهية الصغر. لعقود من الزمن، كانت الطريقة الأكثر دقة لحل هذه النماذج هي سرد كل ترتيب ممكن للإلكترونات، وهي طريقة تُعرف باسم "التفاعل التكويني الكامل". ومع ذلك، كلما كبر حجم الجزيئات، يتفجر عدد الترتيبات الممكنة بسرعة كبيرة لدرجة أن أقوى الحواسيب الفائقة في العالم لا تستطيع سردها جميعًا. ولمواجهة ذلك، يستخدم الباحثون استراتيجية تسمى "التفاعل التكويني المختار"، والتي تحتفظ فقط بالترتيبات الأكثر أهمية وتتجاهل البقية. وبينما يجعل هذا الأمر المشكلة قابلة للإدارة، إلا أنه يترك فجوة: فالترتيبات المستبعدة لا تزال تؤثر على طاقة الجزيء. وللحصول على إجابة دقيقة حقًا، يجب على العلماء تقدير تأثير هذه الأجزاء المفقودة. ويُعد هذا التقدير، المعروف باسم "نظرية الاضطراب إبستين-نيسبيت من الدرجة الثانية"، خطوة نهائية حاسمة تحول الإجابة التقريبية إلى إجابة دقيقة للغاية. ومع ذلك، فإن إجراء هذا الحساب للجزيئات الكبيرة كان تقليديًا عملية بطيئة وتستهلك الكثير من الذاكرة، وتكافح لمواكبة أجهزة الحوسبة الحديثة.
لقد نجح فريق من الباحثين في جامعة العلوم والتكنولوجيا في الصين الآن في حل هذه العقبة عبر ابتكار طريقة لتشغيل هذه الحسابات بالكامل على وحدات معالجة الرسومات، أو ما يعرف بـ (GPUs). وهذه الوحدات هي شرائح قوية صُممت في الأصل لألعاب الفيديو ولكنها تُستخدم الآن على نطاق واسع في الحوسبة العلمية لأنها تستطيع إجراء ملايين الحسابات البسيطة في وقت واحد. وقد طور الباحثون، بقيادة هونغوي شانغ وجينلونغ يانغ، نظامًا برمجياً يدمج ثلاث خطوات صعبة — توليد ترتيبات الإلكترونات المحتملة، وتصفية الترتيبات غير الهامة، وحساب مساهمات طاقتها — في عملية واحدة انسيابية. وبدلاً من تخزين قائمة ضخمة وغير منظمة لكل ترتيب إلكتروني محتمل يمكن أن يوجد خارج الحساب الرئيسي، تستخدم طريقتهم خدعة إحصائية ذكية؛ حيث تقوم بضغط المعلومات المتعلقة بملايين الترتيبات المستبعدة في بنية ذاكرة صغيرة وثابتة الحجم. وهذا يسمح للحاسوب بجمع مساهمات كل هذه الأجزاء المفقودة دون الحاجة أبدًا إلى تدوينها بشكل فردي أو نقل كميات هائلة من البيانات بين المعالجات المختلفة.
إن نتائج هذا النهج الجديد مذهلة. فعند اختباره على وحدة معالجة رسومات حديثة واحدة، أكمل النظام تصحيحات الطاقة المعقدة هذه بسرعة تتراوح بين ثمانية وثلاثة وثلاثين ضعف الطرق السابقة التي تعمل على ستة وستين معالجًا تقليديًا، مع الحفاظ على نفس المستوى من الدقة الإحصائية. وقد أظهر الباحثون أن طريقتهم تتوسع بكفاءة، مما يعني أنها تستمر في العمل بشكل جيد حتى عند توزيعها عبر عدة وحدات معالجة رسومات تعمل معًا. وفي الاختبارات التي شملت معقدًا حديديًا-أكسجينيًا معقدًا ونموذجًا لجزيء "حديد-بورفيرين"، تعامل النظام مع دوال موجية مرجعية تحتوي على ما يصل إلى 200 مليون ترتيب إلكتروني. وبالنسبة لجزيء الحديد-بورفيرين، استغرقت العملية حوالي 85 ثانية على وحدة معالجة رسومات واحدة، وهي مهمة كانت ستكون بطيئة للغاية أو مستحيلة باستخدام التقنيات القديمة. كما أثبتت الطريقة فعاليتها عند تطبيقها على الدوال الموجية الناتجة عن الشبكات العصبية الاصطناعية، وهي نهج أحدث لنمذجة الإلكترونات لا يعتمد على عمليات "القطرية" التقليدية. وفي هذه الحالات، نجحت الأداة الجديدة في تحسين تنبؤات الشبكة العصبية، مما خفض الطاقات المحسوبة إلى مستوى من الدقة يُعرف بـ "الدقة الكيميائية"، حيث يكون الخطأ صغيرًا بما يكفي ليكون مفيدًا في التنبؤ بالسلوك الكيميائي في العالم الحقيقي.
تكمن أهمية هذا العمل ليس فقط في السرعة، بل في كيفية تغيير ما هو ممكن. فمن خلال إزالة حواجز الذاكرة التي كانت تجبر العلماء سابقًا على تبسيط نماذجهم أو الانتظار لأيام للحصول على النتائج، تتيح هذه الأداة المسرعة بواسطة وحدات معالجة الرسومات للباحثين التعامل مع أنظمة كيميائية أكبر وأكثر تعقيدًا. وقد طبق الفريق طريقتهم لدراسة التوازن الدقيق لحالات الطاقة في الجزيئات القائمة على الحديد، والتي تعد مركزية في العمليات البيولوجية والحفز الصناعي. وقد قدمت حساباتهم رؤى أوضح حول ما إذا كانت هذه الجزيئات تفضل حالة "الثلاثي" أم "الخماسي"، مما حل الغموض الذي تركته الدراسات السابقة الأقل دقة. علاوة على ذلك، فإن القدرة على تطبيق هذه التصحيحات على الدوال الموجية القائمة على الشبكات العصبية تشير إلى مسار جديد للمضي قدمًا: استخدام الذكاء الاصطناعي لإنشاء تخمين أولي لسلوك الجزيء، ثم استخدام هذه الأداة السريعة والدقيقة لصقله ليصبح إجابة نهائية. لقد جعل الباحثون برمجياتهم متاحة للمجتمع العلمي، مما يفتح الباب للآخرين لاستكشاف البنى الإلكترونية للمواد المعقدة بسرعة وكفاءة لم يكن من الممكن الوصول إليهاما سابقًا.
ملخص تقني: نظرية إبشتاين-نيسبت الاضطرابية المسرعة بالكامل بواسطة وحدات معالجة الرسومات (GPU)
بيان المشكلة تعد نظرية إبشتاين-نيسبت الاضطرابية من الدرجة الثانية (EN-PT2) أداة حاسمة لتنقية الطاقات المستمدة من طرق التفاعل التكويني المختار (SCI) عبر تقدير طاقة الارتباط من المحددات (determinants) الموجودة خارج الفضاء المرجعي. ومع ذلك، فإن تطبيق EN-PT2 على دوال موجية مرجعية ضخمة على عناقيد وحدات معالجة الرسومات (GPU clusters) يواجه ثلاث عقبات رئيسية:
توليد الاستثارات (Excitation Generation): غالبًا ما تقوم التنفيذات الحالية بتوليد المحددات المقترنة على وحدات المعالجة المركزية (CPU)، مما يخلق عنق زجاجة بسبب عمليات الوصول غير المباشر إلى الجداول والمخرقات ذات الأطوال المتغيرة التي تتطلب إدارة معقدة للمخازن المؤقتة (buffers).
ذاكرة الجهاز: إن تخزين المجموعة الكاملة للمحددات الخارجية ومساهماتها الجزئية يتجاوز سعة الذاكرة لوحدات معالجة الرسومات الحالية، حيث يمكن أن يكون الفضاء الخارم أكبر بعدة مراتب من الفضاء المرجعي.
الاتصال: في البيئات الموزعة، يجب تجميع المساهمات للمحدد الخارجي نفسه من وحدات معالجة رسومات مختلفة قبل عملية التربيع. يتطلب هذا عادةً اتصالات (all-to-all) غير منتظمة لسجلات المحددات الصريحة، والتي يتوسع حجمها بشكل سيئ مع عدد السجلات المولدة.
المنهجية يقدم المؤلفون تنفيذًا مسرعًا بالكامل بواسطة وحدات معالجة الرسومات (GPU) ونظامًا موزعًا لنظرية EN-PT2 شبه العشوائية، مصممًا للتغلب على هذه القيود من خلال ثلاثة ابتكارات جوهرية:
نواة مدمجة (Fused GPU Kernel): ينفذ المؤلفون نواة مدمجة واحدة تقوم بتوليد الاستثارات، والترشيح (screening)، ووزن PT2 في آن واحد على وحدة معالجة الرسومات. تعالج هذه النواة المحددات المرجعية (أو العينات الموزونة)، وتولد استثارات أحادية ومزدوجة من جداول محسوبة مسبقًا، وتطبق عتبات الترشيح (ϵc و ϵf)، ثم تجمع المساهمات فورًا. هذا يلغي الحاجة إلى تخزين قوائم صريحة للمحددات الخارجية أو تنسيق عمليات الكتابة المتوازية في مخازن مؤقتة متغيرة الطول.
تجميع CountSketch: لتجنب تخزين مجموعة المحددات الخارجية الهائلة، تقوم الطريقة بتجميع المساهمات مباشرة في مصفوفات CountSketch ذات الطور العشوائي وثابتة الحجم. يتم تعيين كل محدد خارجي إلى "دلو" (bucket) محدد عبر دالة هاش (hash function) ويُخصص له طور عشوائي (±1,±i). تشترك المساهمات للمحدد نفسه في نفس الدلو والطور، مما يسمح لها بالجمع بشكل متسق. أما المساهمات للمحددات المختلفة في نفس الدلو فتؤدي إلى ظهور حدود متقاطعة (cross-terms)، لكن القيمة المتوقعة لها تتلاشى بسبب الأطوار المستقلة. وهذا يسمح للطريقة بتقدير طاقة PT2 دون الحاجة لتخزين المجموعة الخارجية الكاملة.
اتصال جماعي محدود (Bounded Collective Communication): نظرًا لأن مصفوفات CountSketch ثابتة الحجم وتستخدم مخططات هاش وأطوار متطابقة عبر جميع وحدات معالجة الرسومات، يمكن جمع المصفوفات عبر العنقود باستخدام عملية AllReduce قياسية (عبر NCCL). هذا يستبدل تبادل (all-to-all) غير المنتظم والمكلف لسجلات المحددات الصريحة بعملية جمع جماعية محدودة لمصفوفات ثابتة الحجم.
يتبع التنفيذ استراتيجية شبه عشوائية (semistochastic)، تجمع بين التحكم الحتمي (عبر عبور مجموعة فرعية من المعاملات الكبيرة) والتصحيح المأخوذ من العينات (عبر أخذ عينات عشوائية من الباقي) للوصول إلى خطأ معياري (SE) مستهدف.
المساهمات الرئيسية
الدمج الخوارزمي: دمج توليد الاستثارات والترشيح والتجميع في عملية عبور واحدة لوحدة معالجة الرسومات، مما يزيل عبء نقل البيانات بين وحدة المعالجة المركزية ووحدة معالجة الرسومات للمراحل المتوسطة.
كفاءة الذاكرة: استخدام CountSketch يقلل من ذروة استخدام الذاكرة من التوسع مع عدد المحددات الخارجية (من جيجابايت إلى تيرابايت) إلى حجم ثابت يحدده عدد الدلاء (ميجابايت)، مما يتيح الحسابات على أجهزة ذات ذاكرة محدودة.
اتصال قابل للتوسع: استبدال الاتصال القائم على السجلات بـ AllReduce على مصفوفات ثابتة الحجم، مما يقلل حجم الاتصال بشكل كبير ويمكّن التوسع القوي (strong scaling).
القابلية العامة للتطبيق: يقبل الكود المحددات الصريحة والمعاملات من طرق متباينة مختلفة، بما في ذلك SCI التقليدية وحالات الكم العصبية (NNQS)، مما يجعله أداة معالجة لاحقة متعددة الاستخدامات لعصر وحدات معالجة الرسومات.
النتائج يتحقق البحث من صحة الطريقة من خلال الدقة العددية، واختبارات تسريع الأداء، والتطبيقات واسعة النطاق:
الدقة: أظهرت المقارنات مع كود Arrow القائم على وحدة المعالجة المركزية عبر 10 جزيئات أن تنفيذ وحدة معالجة الرسومات يعيد إنتاج الطاقات المصححة بـ PT2 بدقة عالية. بالنسبة لنظام Fe-porphyrin، تطابق الانحراف المعياري التجريبي لـ 64 تشغيل مستقل مع الخطأ المعياري الإحصائي المذكور، مما يؤكد موثوقية مُقدر CountSketch.
التسريع: على وحدة NVIDIA A100 واحدة، كان التنفيذ أسرع بمقدار 8.21 إلى 37.53 مرة من كود Arrow الذي يعمل على 64 نواة من وحدات المعالجة المركزية للأنظمة التي تتطلب نفس الخطأ المعياري الإحصائي (10 μEh).
كفاءة التوازي: حققت اختبارات التوسع القوي (strong-scaling) على ما يصل إلى 16 وحدة معالجة رسومات (عبر عقدتين) كفاءة توازي بلغت 93.5% لحمل عمل ثابت، مما يدل على قابلية ممتازة للتوسع.
تقليل الذاكرة: بالنسبة لمرجع يحتوي على مليوني محدد، قلل التجميع القائم على الرسم (sketch-based) من ذروة ذاكرة التنسور لكل وحدة معالجة رسومات بنسبة تقارب 35 ضعفًا مقارنة بالتجميع الدقيق (0.325 GiB مقابل 11.35 GiB).
التطبيقات واسعة النطاق:
معقد الحديد-أكسو (Iron-Oxo Complex): طُبق على مساحة نشطة (60e, 187o) تحتوي على 150 مليون محدد، مما أدى إلى تنقية تقسيم الثلاثي-الخماسي (triplet-quintet splitting) وتأكيد تفضيل الخماسي دون الانعكاس الذي اقترحته الحسابات الأصغر.
حديد-بورفيرين (Iron-Porphyrin): تعامل مع مراجع تحتوي على 200 مليون محدد لكل حالة، مما أدى إلى تنقية فجوة الثلاثي-الخماسي إلى 5.93 mEh (مستقرأة)، وهو ما يتوافق مع الطرق عالية المستوى الأخرى.
حالات الكم العصبية (NNQS): طُبق بنجاح على الدوال الموجية لـ NNQS ذات الترتيب الذاتي لـ H2O و NH3 و HCN. قلل تصحيح PT2 الأخطاء الموقعة إلى الدقة الكيميائية (ضمن 1.6 mEh) حتى عندما كانت الأخطاء التباينية أكبر بكثير، مما يثبت فائدة المعالجة اللاحقة الاضطرابية لحالات الشبكة العصبية.
الأهمية يزعم البحث أن هذا العمل يضع مسارًا عمليًا وفعالًا لتطبيق التصحيحات الاضطرابية على الدوال الموجية المرجعية الكبيرة في عصر وحدات معالجة الرسومات. من خلال دمج التوليد والتجميع واستخدام CountSketch، تزيل هذه الطريقة حواجز الذاكرة والاتصال التي كانت تعيق سابقًا عملية EN-PT2 المسرعة بواسطة وحدات معاللة الرسومات. ويؤكد المؤلفون أن هذا يسمح للباحثين بتطبيق تصحيحات اضطرابية عالية الدقة مباشرة على نفس عناقيد وحدات معالجة الرسومات المستخدمة لتوليد المرجع، سواء كانت هذه المراجع تأتي من طرق SCI التقليدية أو من نهج الشبكات العصبية الناشئة. وتشير النتائج إلى أن هذا النهج يمكن أن يقلل بشكل كبير من التدريب التبايني المطلوب لـ NNQS للوصول إلى الدقة الكيميائية.