HyperAIHyperAI

Command Palette

Search for a command to run...

Console

مجموعة بيانات معيار الأداء CP2K_Benchmark

Use this DatasetDiscuss on Discord

Date

منذ 2 أشهر

Organization

المعهد الفيدرالي السويسري للتكنولوجيا في زيورخ
جامعة بازل
جامعة زيورخ

Publish URL

github.com

Paper URL

doi.org

License

GPL

مجموعة بيانات CP2K Benchmark هي مجموعة من مدخلات اختبار الأداء والتحقق، مصممة خصيصًا لبيئات الحوسبة عالية الأداء (HPC). تُستخدم هذه المجموعة، المستمدة من برنامج المحاكاة مفتوح المصدر CP2K، لتقييم أداء حسابات كيمياء الكم وديناميكيات الجزيئات باستخدام منصات أجهزة مختلفة، واستراتيجيات التوازي (MPI/OpenMP)، وإعدادات تحسين التجميع.

بخلاف البيانات التجريبية العلمية، تُستخدم هذه المجموعة من البيانات بشكل رئيسي لتقييم أداء الحوسبة عالية الأداء (سرعة التشغيل، وكفاءة التوازي، وقابلية التوسع، إلخ). ويتولى فريق CP2K الرسمي صيانتها. توجد البيانات وملفات الإدخال في مجلد benchmarks/ من الكود المصدر.

نتائج الورقة ذات الصلة هيCP2K: محاكاة ذرية لأنظمة المادة المكثفة"، نُشرت في عام 2013 من قبل المعهد الفيدرالي السويسري للتكنولوجيا في زيوريخ، وجامعة زيوريخ، وجامعة بازل ومؤسسات أخرى.

بنية مجموعة البيانات

توجد مجموعة البيانات في دليل benchmarks/ في مستودع الكود المصدر CP2K، والذي يحتوي على العديد من الدلائل الفرعية وملفات الإدخال:

benchmarks/
 ├── Fayalite-FIST/        # FIST 模块基准,Fayalite 体系
 ├── QS/                   # Quickstep 模块基准(DFT/MD)
 ├── QS_DM_LS/             # 线性标度 DFT 基准
 ├── QS_HFX/               # 混合泛函 HFX 基准
 ├── QS_diag/              # 对角化算法基准
 ├── QS_mp2_rpa/           # MP2 / RPA 高精度基准
 ├── QS_ot_ls/             # 轨道变换线性标度 DFT 基准
 ├── QS_pao_ml_tio2/       # PAO / ML 势 TiO₂ 基准
 ├── QS_rubri/             # Rubredoxin 蛋白质基准
 ├── QS_single_node/       # 单节点 Quickstep 基准
 ├── QS_stmv/              # STMV 病毒体系基准
 ├── README.md             # 各基准说明文档

يحتوي كل دليل فرعي على:

  • ملفات الهندسة المعمارية (مثل .xyz، .psf، .pdb)
  • نص الإدخال CP2K (.inp)
  • نتائج الطاقة المرجعية وقوالب المخرجات
  • نصوص تشغيل وتسجيل الأداء

محتويات مجموعة البيانات

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

  1. H₂O-64
  • النوع: DFT + ديناميكيات جزيئية
  • النظام: 64 جزيء ماء (192 ذرة/512 إلكترون)
  • الغرض: اختبار أداء وقابلية التوسع لمحاكاة الكيمياء الكمومية القياسية على الأنظمة متوسطة الحجم.
  1. فاياليتي-فيست
  • النوع: ديناميكيات جزيئية كلاسيكية (وحدة FIST)
  • النظام: بلورة فاياليت (خلية عظمى Fe₂SiO₄، تحتوي على حوالي 28000 ذرة)
  • الغرض: تقييم أداء حسابات مجال القوة الكلاسيكية وخوارزميات جمع المجال الكهربائي طويل المدى في الأنظمة الكبيرة.
  1. LiH-HFX
  • النوع: تحويل فورييه هجين (حساب نقطة واحدة HFX)
  • النظام: بلورة LiH (216 ذرة/432 إلكترون)
  • الغرض: اختبار كفاءة التحميل والاتصال لوظائف التبادل الهجينة في ظل التوازي متعدد الخيوط.
  1. H₂O-DFT-LS
  • النوع: DFT ذو مقياس خطي
  • النظام: 2048 جزيء ماء (6144 ذرة)
  • الغرض: تقييم قابلية التوسع ومتطلبات الذاكرة لخوارزميات التوسع الخطي في ظل التوازي الهائل.
  1. H₂O-64-RI-MP2
  • النوع: طريقة MP2 + تقريب RI
  • النظام: نفس H₂O-64
  • الغرض: اختبار الأداء والنفقات الحسابية لطرق ab initio عالية المستوى على الحوسبة عالية الأداء.

معايير التشغيل

قبل تشغيل بعض معايير الأداء، قد تحتاج إلى إكمال خطوة المعالجة المسبقة لإنشاء ملفات الإدخال المطلوبة (مثل ملفات دالة الموجة، وما إلى ذلك).
تجد تفاصيل هذه التحضيرات في ملف README.md ضمن مجلد الاختبارات المعيارية. يُنصح بقراءة التعليمات ذات الصلة قبل بدء الاختبار.

عادةً ما تُشغَّل معايير الأداء في مجموعات البيانات في وضع متوازي هجين، باستخدام كلٍّ من MPI وOpenMP للحوسبة المتوازية. يوضح المثال التالي كيفية تعيين خيطين لكل عملية MPI لتنفيذ معيار أداء:

export OMP_NUM_THREADS=2
parallel_launcher launcher_options path_to_cp2k.psmp -i inputfile.inp -o logfile.log

في:

  • parallel_launcher هو mpirun، أو mpiexec، أو أحد المتغيرات مثل aprun على أنظمة Cray، أو srun عند استخدام جدولة وظيفة Slurm.
  • يُحدد خيار launcher_options عدد العقد، وعمليات MPI، والمهام لكل عقدة، والخيوط لكل مهمة للتنفيذ المتوازي (يجب أن يكون مساويًا لقيمة OMP_NUM_THREADS). إذا تم ضبط إعدادات التنفيذ المتوازي تلقائيًا بواسطة بيئة العمل، فلن تحتاج إلى تحديدها يدويًا.

احصل على نتائج معيارية

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

grep "CP2K     "  *.log

بالإضافة إلى ذلك، يتم تضمين العديد من إحصائيات الأداء في نهاية ملف السجل:

  • إحصائيات DBCSR: تعرض إحصائيات أداء الحوسبة والاتصالات لوحدة DBCSR. تتضمن الصفوف القليلة الأولى عدد عمليات الفاصلة العائمة (FLOPs) لأحجام مختلفة من كتل المصفوفات الصغيرة، وتوزيع هذه العمليات على BLAS، وSMM (مضاعف المصفوفة الصغيرة)، ووحدة معالجة الرسومات (ACC).
  • أداء تمرير رسائل DBCSR: يعرض إحصائيات أداء استدعاء MPI في وحدة DBCSR.
  • أداء تمرير الرسائل: يعرض إحصائيات أداء اتصالات MPI لأجزاء أخرى من CP2K.
  • التوقيت: يسرد وقت الاستدعاء وعدد الاستدعاءات لكل وظيفة.

رسم

يوفر المشروع أيضًا نصوص Python لإنشاء مخططات القياس لتوضيح مجموعة البيانات، والتي يمكن العثور عليها في الدليل التالي:

cp2k/tools/benchmark_plots/

Build AI with AI

From idea to launch — accelerate your AI development with free AI co-coding, out-of-the-box environment and best price of GPUs.

AI Co-coding
Ready-to-use GPUs
Best Pricing

Hyper Newsletters

اشترك في آخر تحديثاتنا
سنرسل لك أحدث التحديثات الأسبوعية إلى بريدك الإلكتروني في الساعة التاسعة من صباح كل يوم اثنين
مدعوم بواسطة MailChimp