صيغة Bailey-Borwain-Plouffe، والتي تسمح لك باستخراج أي رقم سداسي عشري أو ثنائي محدد من pi دون حساب الأرقام السابقة (تم تعيين السجل الحالي باستخدام خوارزمية Chudnovsky، انظر أدناه المقطع)
قامت مجموعة الحوسبة Google Compute Engine بحساب أكبر عدد من الأرقام في pi خلال 121 يومًا على 25 جهازًا افتراضيًا، مسجلة رقمًا قياسيًا عالميًا جديدًا: 31,4 تريليون منزلة عشرية. هذه هي المرة الأولى التي يتم فيها استخدام برنامج سحابي متاح للعامة لحساب قيمة pi بهذا الحجم.
سيتم تسجيل السجل باسم إيما هاروكا إيواو من قسم الحوسبة عالية الأداء في Google. كانت هي التي استخدمت البنية التحتية لـ Google Cloud للحوسبة. الرقم القياسي العالمي السابق كان قد سجله بيتر تروب عام 2016، حيث قام بحساب الرقم إلى 22,4 تريليون رقم ، والتي كان يرعاها أيضًا صاحب العمل.
مثل Trub، استخدم مهندس Google أداة y-cruncher لإجراء العمليات الحسابية. يستخدم هذا البرنامج ، خوارزمية سريعة لحساب باي. مرة أخرى في الثمانينات بأنفسنا تم استخدامه لحساب مليار منزلة عشرية.
بدورها، تعتمد الخوارزمية على خاصية التقارب السريع للمتسلسلات الهندسية الفائقة:
أصبحت إيما هاروكا إيواو مفتونة بالرقم "السحري" بعد أن علمت به في فصل الرياضيات في المدرسة. سلكي. وفي الجامعة، حقق أحد أساتذتها، دايسوكي تاكاهاشي، الرقم القياسي لأكبر عدد من الأرقام المحسوبة باستخدام كمبيوتر فائق السرعة. اليوم، يمكن تحقيق الرقم القياسي تقريبًا من قبل أي مهندس مهتم لديه إمكانية الوصول إلى موارد الحوسبة الجادة ومساحة تخزين كبيرة على القرص (لتخزين نتائج العمليات الحسابية). تم إنشاء البرنامج في عام 2009 تم تصميمه لحساب الثوابت الرياضية مثل pi. وهو يدعم نطاقات ضخمة متعددة الخيوط ونطاق تريليون. قام هذا البرنامج بتسليع حساب الثوابت بشكل فعال.
يقول إيواو: "أنت بحاجة إلى جهاز كمبيوتر كبير جدًا لتحطيم الرقم القياسي العالمي". "لا يمكنك القيام بذلك على جهاز كمبيوتر من متجر، لذلك اعتاد الناس على بناء سيارات مخصصة." في سبتمبر 2018، بدأ إيواو في التفكير في كيفية عمل عملية الحساب من الناحية الفنية خارج النطاق القياسي. أصبح من الواضح على الفور أن المشكلة الرئيسية ستكون كمية البيانات التي سيتم تخزينها. ونتيجة لذلك، اتضح أن النتيجة المحسوبة تستغرق 170 تيرابايت. وبدلاً من بناء خادم مخصص، مثل أسلافها، استخدمت الفتاة البنية التحتية لـ Google Cloud.
اختارت شركة Iwao 25 جهازًا افتراضيًا: "ولكن بدلاً من الضغط على زر الجهاز الافتراضي 25 مرة، قمت بتشغيله تلقائيًا". "يمكنك القيام بذلك في بضع دقائق، ولكن إذا كنت بحاجة إلى عدد كبير من أجهزة الكمبيوتر، فسوف يستغرق الأمر عدة أيام لإعداد كل شيء." ثم قام Iwao بتشغيل y-cruncher على تلك الأجهزة الافتراضية الـ 121 بشكل مستمر لمدة 25 يومًا.
لكي تكون الحسابات صحيحة، يجب أن تعمل الأجهزة الافتراضية باستمرار. قامت المهندسة بتثبيت نظام مراقبة من شأنه أن ينبهها إذا حدث خطأ ما، على سبيل المثال، حول فشل مفاجئ في أحد الأجهزة الافتراضية. قد يؤدي فشل واحد فقط - حتى ولو لبضع دقائق - إلى تعريض عملية الحوسبة بأكملها للخطر إن لم يكن للنسخ الاحتياطي.
يقول إيواو: "يحتوي كل من Cruncher وGoogle Cloud على أنظمة نسخ احتياطي، وقد قمت بإعدادها بحيث يمكنك أخذ نسخ من تلك الأقراص على الفور دون إيقاف الحساب". ثم يتم نسخ هذه البيانات وتخزينها خارجيًا، على محركات أقراص أخرى، كلقطات.
يقول إيواو: "في البداية، كانت هناك بعض المعلمات التي قمت بتغييرها، مثل كمية البيانات التي يمكنك قراءتها أو كتابتها في وقت واحد، وكيف ستتغير الحدود عند تكبير الصورة".
ومع زيادة عدد الأرقام، أصبح حجم الملفات أكبر، وزاد تعقيد الحسابات بشكل غير خطي. وهذا جعل الحساب الأولي صعبًا للغاية عندما كانت إيواو تحاول حساب مقدار موارد الآلة الافتراضية التي ستحتاجها للمشروع.
الآن تم الانتهاء من الحسابات والتحقق من النتيجة: تم دمج خوارزميتين أساسيتين في y-cruncher - واحدة لحساب pi نفسها والأخرى للتحقق. تعمل خوارزمية التحقق بالتوازي مع الحساب، ولكنها تحسب رقمًا واحدًا فقط، بحيث يمكن تسجيل السجل رسميًا.
من الناحية النظرية، يمكن تحقيق رقم قياسي عالمي جديد بمجرد أخذ الملف السابق وتطبيق صيغة بيلي-بوروين-بلوف لحساب رقم آخر. ولكن ربما يتعارض هذا مع قواعد تسجيل مثل هذه الأرقام القياسية العالمية: على الأرجح، يجب على كل مقدم طلب أن يبدأ الحساب من البداية. كخيار: تحسين الإنجاز السابق بنسبة N%، وهو ما لا يمكن القيام به وفقًا لصيغة Bailey-Borwain-Plouffe.
المصدر: www.habr.com
