معالجة البيانات المتوازية والمتسلسلة. المعالجة المتسلسلة والمتوازية للمعلومات

28.03.2019
الكمبيوتر العملاق هو جهاز كمبيوتر قوي جدًا بأداء يزيد عن 10 MFLOPS. اليوم يتم تغطية هذه النتيجة ليس فقط من خلال محطات العمل، ولكن أيضًا من خلال الأداء الأقصى، وأجهزة الكمبيوتر. في أوائل التسعينيات، تم رسم الحد بالفعل حول علامة 300 MFLOPS. في عام 2001، اتفق متخصصون من دولتين رائدتين في مجال "الكمبيوتر العملاق"، الولايات المتحدة الأمريكية واليابان، على رفع المستوى إلى 5 GFLOPS.

وبالتالي، فإن السمات الرئيسية التي تميز الكمبيوتر العملاق هي ما يلي:

  • أعلى أداء
  • المستوى التكنولوجي الأكثر حداثة (على سبيل المثال، تكنولوجيا GaAs)؛
  • حلول معمارية محددة تهدف إلى زيادة الأداء (على سبيل المثال، وجود عمليات على المتجهات)؛
  • السعر عادة ما يزيد عن 1-2 مليون دولار.

ما هو العامل الحاسم في تحقيق مستويات الأداء الرائعة اليوم؟ دعونا ننتقل إلى حقائق تاريخية. في أحد أجهزة كمبيوتر EDSAC الأولى (1949)، والذي كان زمن ساعة يبلغ 2 ميكروثانية، كان من الممكن تنفيذ ما معدله 100 عملية عمليات حسابيةفي الثانية. أ الأداء الأقصى الكمبيوتر العملاق CRAY C90 بزمن ساعة يبلغ حوالي 4 ns - حوالي 1 مليار عملية حسابية في الثانية. هكذا، أداءخلال هذه الفترة، زادت سرعة أجهزة الكمبيوتر حوالي 10 ملايين مرة، لكن زمن دورة الساعة انخفض 500 مرة فقط. لذلك، زيادة في الإنتاجيةوحدث ذلك بسبب عوامل أخرى أهمها استخدام الجديد الحلول المعماريةوعلى وجه الخصوص - المبدأ المعالجة المتوازيةبيانات.

لديها نوعان: خط أنابيب ومتوازي.

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

معالجة البيانات الموازيةيفترض وجود العديد من الوظائف أجهزة مستقلة.

قانون أمدال

قانون أمدال

س<= 1/

حيث S هو التسارع، و f هو نسبة العمليات التي يجب تنفيذها بشكل تسلسلي، و p هو عدد المعالجات.

نتيجة طبيعية من قانون أمدال: لتسريع تنفيذ برنامج ما بمقدار q مرات، من الضروري تسريع ما لا يقل عن q مرات وعلى الأقل الجزء (1-1/q) من البرنامج. لذلك، إذا كنت بحاجة إلى تسريع برنامج ما بمقدار 100 مرة مقارنة بإصداره المتسلسل، فأنت بحاجة إلى الحصول على سرعة لا تقل عن 99.99٪ من التعليمات البرمجية على الأقل!

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

تستخدم جميع المعالجات الحديثة شكلاً من أشكال

  • 1974 - ALLIAC: معالجات المصفوفات (CU + مصفوفة مكونة من 64 معالجًا).
  • 1976 - CRAY1: معالجات خطوط الأنابيب المتجهة. مقدمة لأوامر المتجهات التي تعمل مع صفائف كاملة من البيانات المستقلة.

  • السنة الرابعة، المسار الأول والثاني، الفصل الدراسي السابع

    المحاضرات (34 ساعة)، الاختبار

    القسم المسؤول عن الدورة: ASVK

    مترجم البرنامج: عضو-تصحيح. راس، دكتور في الفيزياء والرياضيات. العلوم فويفودين Vl.V.،

    المحاضرين: عضو-تصحيح. راس، دكتور في الفيزياء والرياضيات. علوم فويفودين Vl.V.

    حاشية. ملاحظة

    يناقش المقرر القضايا العامة لتنظيم الحوسبة المتوازية. يتم النظر في ميزات معماريات أنظمة الحوسبة المتوازية الحديثة، ودراسة الأساليب والنماذج الأساسية للبرمجة في البيئات المتوازية.

    بالنسبة للتدفقين الأول والثاني، تتم مناقشة طرق تنسيق بنية الأنظمة المتوازية وبنية الخوارزميات، وقضايا نظرية تحليل بنية البرامج والخوارزميات، والنماذج في الحوسبة المتوازية.

    برنامج

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

    2. الفئات الرئيسية لأنظمة الحوسبة المتوازية الحديثة. أجهزة الكمبيوتر ذات الذاكرة المشتركة، أمثلة، أسباب انخفاض الأداء في البرامج الحقيقية. أبنية SMP، NUMA، ccNUMA. تبديل المعالجات ووحدات الذاكرة، والحافلة، ومحول المصفوفة، وشبكة أوميغا. أنظمة حوسبة خطوط الأنابيب المتجهة، أمثلة، أسباب انخفاض الأداء. أجهزة الكمبيوتر ذات الذاكرة الموزعة، أمثلة، أسباب انخفاض الأداء. طوبولوجيا الاتصال بين المعالجات: النجمية، الشبكية، الطارة الثلاثية الأبعاد، المكعب الفائق الثنائي، خصائصها. مجموعات الحوسبة، والأمثلة، والكمون والإنتاجية لتقنيات الاتصالات المختلفة. معماريات ذات توازي على مستوى تعليمات الآلة، VLIW، السلمية الفائقة.

    3. تقنيات البرمجة المتوازية. اللغات التسلسلية التقليدية والمترجمين المتوازيين، مشاكل. تعليقات وتوجيهات خاصة للمترجم، وامتدادات اللغات الموجودة. لغات البرمجة الموازية الخاصة. البرمجة باستخدام المكتبات وواجهات تمرير الرسائل. مكتبات المواضيع الموازية والحزم المتخصصة وأنظمة البرمجيات عالية المستوى. تقنيات البرمجة المتوازية MPI، OpenMP، Linda.

    4. أداء أنظمة الحوسبة المتوازية. تعدد استخدامات أجهزة الكمبيوتر وتخصصها، وأداء المعالجات الخاصة. قانون مور. طرق تقييم الأداء. مقدمة لمعلمة رقمية واحدة، Mflops، MIPS. ذروة وأداء الكمبيوتر الحقيقي. اختبار Linpack ومتغيراته. مجموعات من برامج الاختبار التكميلية، STREAM وNPB.

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

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

    الأدب

    1. فويفودين ف.ف.، فويفودين ف.ف. الحوسبة المتوازية. - سانت بطرسبرغ: BHV سانت بطرسبرغ، 2002. - 608 ص.

    2. كوروليف إل.إن. بنية المعالج الإلكتروني أجهزة الكمبيوتر. - م: دار النشر. كلية الرياضيات الحاسوبية والرياضيات بجامعة موسكو الحكومية، 2003.

    3. في.ف.كورنييف. أنظمة الحوسبة المتوازية. – م: دار المعرفة للنشر، 1999. – 320 ص.

    4. مواد مركز المعلومات والتحليل للحوسبة المتوازية Parallel.ru.

    الأدب الإضافي

    1. أنتونوف أ.س. البرمجة المتوازية باستخدام التكنولوجيا

    MPI: البرنامج التعليمي. - م: دار النشر جامعة موسكو الحكومية، 2004. - 71 ص.

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

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

    غالبًا ما يتم تقسيم أجهزة الكمبيوتر المتوازية وفقًا لتصنيف فلين إلى أجهزة SIMD (بيانات متعددة التعليمات الفردية) وأجهزة MIMD (بيانات متعددة التعليمات المتعددة). مثل أي تصنيف آخر، فإن التصنيف أعلاه غير كامل: فهناك سيارات لا تدخل فيه مباشرة، وهناك أيضًا ميزات مهمة لا تؤخذ بعين الاعتبار في هذا التصنيف. على وجه الخصوص، غالبًا ما يتم تصنيف المعالجات المتجهة على أنها أجهزة SIMD، على الرغم من أن أدائها العالي يعتمد على شكل آخر من أشكال التوازي - تنظيم خطوط الأنابيب للآلة. تتكون أنظمة المتجهات متعددة المعالجات، مثل Cray Y-MP، من عدة معالجات متجهة وبالتالي يمكن تسميتها بـ MSIMD (Multiple SIMD).

    لا يميز تصنيف فلين بين الخصائص الأخرى المهمة لنماذج الحوسبة، مثل مستوى الحبوب في الحسابات المتوازية وطرق المزامنة.

    هناك أربعة أنواع رئيسية من الهندسة المعمارية لأنظمة المعالجة المتوازية:

    1) معالجة خطوط الأنابيب وناقلات الأمراض.

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



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

    2) آلات نوع SIMD. تتكون أجهزة SIMD من عدد كبير من عناصر المعالجة المتماثلة التي لها ذاكرتها الخاصة. جميع عناصر المعالجة في مثل هذا الجهاز تنفذ نفس البرنامج. من الواضح أن مثل هذا الجهاز، الذي يتكون من عدد كبير من المعالجات، يمكنه توفير أداء عالي جدًا فقط في تلك المهام التي يمكن لجميع المعالجات فيها القيام بنفس المهمة. يشبه نموذج الحساب لجهاز SIMD إلى حد كبير نموذج الحساب للمعالج المتجه: يتم تنفيذ عملية واحدة على كتلة كبيرة من البيانات.

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

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

    3) آلات من نوع MIMD. يغطي مصطلح "متعدد المعالجات" معظم أجهزة MIMD (تمامًا كما ينطبق مصطلح "معالج مصفوفة" على أجهزة SIMD) غالبًا ما يستخدم كمرادف لأجهزة MIMD. في نظام متعدد المعالجات، يقوم كل عنصر معالجة (PE) بتنفيذ برنامجه بشكل مستقل تمامًا عن عناصر المعالجة الأخرى. وبطبيعة الحال، يجب أن تتواصل عناصر المعالجة مع بعضها البعض بطريقة أو بأخرى، الأمر الذي يتطلب تصنيفا أكثر تفصيلا للآلات من نوع MIMD. تحتوي المعالجات المتعددة ذات الذاكرة المشتركة (المعالجات المتعددة المقترنة بإحكام) على ذاكرة بيانات وتعليمات متاحة لجميع وحدات PE. تتواصل PEs مع الذاكرة المشتركة باستخدام ناقل مشترك أو شبكة تبادل. في المقابل، في الأنظمة متعددة المعالجات المقترنة بشكل غير محكم (الأجهزة ذات الذاكرة المحلية)، تتم مشاركة كل الذاكرة بين عناصر المعالجة ولا يمكن الوصول إلى كل كتلة ذاكرة إلا من خلال المعالج المرتبط بها. تقوم شبكة التبادل بربط عناصر المعالجة مع بعضها البعض.

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

    4) الأجهزة متعددة المعالجات المزودة بمعالجات SIMD.

    العديد من أجهزة الكمبيوتر العملاقة الحديثة عبارة عن أنظمة متعددة المعالجات تستخدم معالجات متجهة أو معالجات SIMD كمعالجات. تنتمي هذه الآلات إلى أجهزة فئة MSIMD.

    توفر لغات البرمجة والمترجمات المقابلة لأجهزة MSIMD عادةً بنيات لغوية تسمح للمبرمج بوصف التوازي "الخشن". داخل كل مهمة، يقوم المترجم تلقائيًا بتوجيه الحلقات المناسبة. آلات MSIMD، كما يمكن للمرء أن يتخيل، تجعل من الممكن استخدام أفضل مبدأي التحلل هذين: عمليات المتجهات (التوازي الدقيق) لتلك الأجزاء من البرنامج المناسبة لها، والقدرات المرنة لـ MIMD الهندسة المعمارية لأجزاء أخرى من البرنامج.

    على مدار سنوات تطور تكنولوجيا الحوسبة، مرت الأنظمة متعددة المعالجات بعدد من مراحل التطوير. تاريخيًا، كانت تقنية SIMD هي أول تقنية يتم إتقانها. ومع ذلك، هناك حاليًا اهتمام ثابت بمعماريات MIMD. ويتحدد هذا الاهتمام أساساً بعاملين:

    1. توفر بنية MIMD مرونة كبيرة: مع الدعم المناسب للأجهزة والبرامج، يمكن لـ MIMD أن تعمل كنظام مستخدم واحد يوفر معالجة بيانات عالية الأداء لمهمة تطبيق واحدة، أو كجهاز متعدد البرامج يقوم بتشغيل مهام متعددة بالتوازي، أو كبعض مزيج من هذه القدرات.
    2. يمكن لهندسة MIMD الاستفادة الكاملة من تكنولوجيا المعالجات الدقيقة الحديثة بناءً على اعتبارات صارمة تتعلق بالتكلفة/الأداء. في الواقع، جميع الأنظمة الحديثة متعددة المعالجات تقريبًا مبنية على نفس المعالجات الدقيقة الموجودة في أجهزة الكمبيوتر الشخصية ومحطات العمل والخوادم الصغيرة ذات المعالج الواحد.

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

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

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

    في شبكات تبديل الدارات وتبديل الرزم، مع زيادة متطلبات حركة المرور، يجب مراعاة إمكانية ازدحام الشبكة. هنا، يقوم الاتصال بين المعالجات بتوصيل موارد الشبكة: القنوات والمعالجات والمخازن المؤقتة للرسائل. يمكن تقليل حجم المعلومات المرسلة من خلال التحليل الوظيفي الدقيق للمهمة والتوزيع الدقيق للوظائف التي يتم تنفيذها.

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

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

    أرز. 10.1. بنية نموذجية لنظام متعدد المعالجات مع ذاكرة مشتركة.

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

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

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

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

    أرز. 10.2. بنية آلة الذاكرة الموزعة النموذجية.

    المعالجة المتوازية

    المعالجة المتوازية

    المعالجة المتوازية هي نموذج لتنفيذ عملية تطبيق في وقت واحد من قبل مجموعة من المعالجات. هناك ثلاث طرق لتنفيذ التوازي:
    -1- طريقة SIMD للعمل مع تدفق أوامر واحد والعديد من تدفقات البيانات، حيث تقوم جميع المعالجات العاملة ضمن نفس البرنامج بمعالجة مصفوفات البيانات الخاصة بها تحت سيطرة المعالج الرئيسي؛
    -2- طريقة MIMD للعمل مع تدفقات أوامر متعددة وتدفقات بيانات متعددة، حيث تعمل المعالجات وفقًا لبرامجها بشكل مستقل عن بعضها البعض، ولا تتواصل مع بعضها البعض إلا في بعض الأحيان؛
    -3- طريقة MISD للعمل مع تدفقات أوامر متعددة وتدفق بيانات واحد.

    باللغة الإنجليزية:المعالجة المتوازية

    قاموس فينام المالي.


    تعرف على ما هي "المعالجة المتوازية" في القواميس الأخرى:

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

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

      المعالجة المتوازية- - موضوعات الاتصالات، المفاهيم الأساسية EN المعالجة المتوازية...

      المعالجة المتوازية- lygiagretusis apdorojimas Statusas T sritis automatika atitikmenys: engl. معالجة متوازية vok. Parallelverarbeitung روس. المعالجة المتوازية، و prank. سمة بالتوازي، م … نهاية تلقائية

      معالجة المعلومات الموازية- نموذج لمعالجة المعلومات في الدماغ، حيث تخضع المعلومات لسلسلة من التحولات في بعض "الكتل الوظيفية" في الدماغ بحيث تتم معالجتها في أي وقت في وقت واحد (بالتوازي) في عدة... ... موسوعة نفسية عظيمة

      معالجة المعلومات الموازية- انظر معالجة المعلومات بالتوازي...

      طريقة لمعالجة البيانات المتوازية بواسطة عدد كبير من المعالجات، تطبق طريقة MIMD لتنظيم التوازي. باللغة الإنجليزية: المعالجة المتوازية على نطاق واسع المرادفات الإنجليزية: MPP انظر أيضًا: المعالجة المتوازية القاموس المالي Finam... القاموس المالي

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

      خطوط الأنابيب الموازية- lygiagretusis konvejerinis apdorojimas Statusas T sritis radioelektronika atitikmenys: engl. خطوط الأنابيب الموازية vok. خط الأنابيب الموازي, f rus. خطوط الأنابيب الموازية، و برانك. سمة خط الأنابيب الموازي، م... أجهزة الراديو الإلكترونية تنتهي

      المعالجة المتزامنة- المعالجة المتوازية - [L.G.Sumenko. قاموس إنجليزي روسي في مجال تكنولوجيا المعلومات. M.: State Enterprise TsNIIS, 2003.] موضوعات تكنولوجيا المعلومات بشكل عام المرادفات المعالجة المتوازية EN المعالجة المتزامنة ... دليل المترجم الفني

    كتب

    • معالجة البيانات الموازية
    • المعالجة الموازية للبيانات، أ.و.لاتسيس. يوفر البرنامج التعليمي نظرة عامة منهجية متعمقة لتقنيات معالجة البيانات المتوازية. يتم إيلاء الاهتمام الرئيسي لتقنيات البرمجيات التقليدية للبرمجة المتوازية...
    تمت إضافة العمل إلى موقع الموقع: 2016-06-20

    ">محاضرة " xml:lang="en-US" lang="en-US">6

    ">معالجة البيانات المتوازية

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

    يمكن أن تعتمد المعالجة المتوازية على مبادئ مختلفة:

    التوازي المكاني.

    التوازي الزمني:

    1. خطوط الأنابيب.
    2. ">الاتجاه.
    3. ">مصفوفة.
    4. ">الانقباضي.
    5. ">تنظيم بنية معالجة تدفق البيانات.
    6. ">تنظيم النظام بناءً على بنية المكعب الفائق.
    7. ">إعادة الهيكلة الديناميكية لهيكل الطائرة.

    ">وصف أي خوارزمية هو تسلسل هرمي، بناءً على خاصية التداخل. عند البرمجة، يتم التمييز بين مستويات التداخل: المهام، والمهام، والمهام الفرعية (العمليات)، والعمليات الكبيرة، والعمليات.

    ">1. شكل متوازي متدرج للخوارزمية

    ">معظم الشكل العامتمثيل الخوارزميات هو الرسم البياني للتحكم في المعلومات للخوارزمية. الشكل الأكثر تحديدًا لتمثيل توازي المهام هو جهاز الشكل الموازي للطبقة (LPF).

    ">يتم تمثيل الخوارزمية في شكل طبقة متوازية في شكل طبقات، وتتضمن الطبقة الصفرية عوامل تشغيل (فروع) مستقلة عن بعضها البعض.

    ">على الرسم البياني يمكنك تعيين التحولات، وهذا يعني نقل نتائج حساب عملية بدائية من طبقة واحدة إلى عملية من المستوى التالي. يتم تقسيم الطبقات حسب التحولات. قد يكون هناك انتقالات "فارغة" وبدائية "فارغة" عمليات.

    ">عند بناء خطة العمل الوطنية، يتم الاعتماد عليها المجموعة الأساسيةالعمليات البدائية (PNO). يتميز النموذج الموازي المتدرج المعلمات التالية:

    ">1. طول الرسم البياني (عدد الطبقات)" xml:lang="en-US" lang="en-US">L">.

    ">2. العرض " xml:lang="en-US" lang="en-US">i">الطبقة الرابعة - " xml:lang="en-US" lang="en-US">ب;vertical-align:sub" xml:lang="en-US" lang="en-US">i">.

    ">3. عرض الرسم البياني المتوازي المتدرج" xml:lang="en-US" lang="en-US">ب">= " xml:lang="en-US" lang="en-US">الحد الأقصى">(" xml:lang="en-US" lang="en-US">ب;vertical-align:sub" xml:lang="en-US" lang="en-US">i">).

    ">4. متوسط ​​عرض الرسم البياني NAP V;vertical-align:sub">cf "> ">.

    ">5. عامل التعبئة" xml:lang="en-US" lang="en-US">i">الطبقة الرابعة " xml:lang="en-US" lang="en-US">k;vertical-align:sub" xml:lang="en-US" lang="en-US">i"> – ">.

    ">6. معامل تشتت العمليات في الرسم البياني -" xml:lang="en-US" lang="en-US">س;vertical-align:super" xml:lang="en-US" lang="en-US">j;vertical-align:sub" xml:lang="en-US" lang="en-US">i"> – ">, " xml:lang="ar-US" lang="ar-US">j">BNO، حيث">- الكمية " xml:lang="ar-US" lang="ar-US">j">النوع العاشر من العمليات في" xml:lang="en-US" lang="en-US">i">الطبقة الرابعة.

    ">7. الحد الأدنى المبلغ المطلوبأجهزة الكمبيوتر (من BNO) لتنفيذ الخوارزمية التي يمثلها هذا الرسم البياني في YAPF.

    ">8. الحد الأدنى من الوقتحلول الخوارزمية (مجموع أوقات استجابة أجهزة الكمبيوتر مع الحد الأقصى من العمليات الحسابية لكل مستوى) T;vertical-align:sub" xml:lang="en-US" lang="en-US">min">.

    ">9. اتصال الخوارزمية (رقم نتائج متوسطةوالتي يجب تخزينها أثناء تنفيذ الخوارزمية) ج.

    ">2. الكشف التلقائيتماثل

    ">هناك طريقتان محتملتان لإنشاء خوارزمية متوازية: مباشرة من بيان المشكلة أو عن طريق تحويل خوارزمية تسلسلية.

    ">تعتمد طرق إنشاء خوارزمية متوازية من خوارزمية متسلسلة على العزل خوارزمية تسلسليةتصميمات نموذجية متكررة، والتي، وفقًا لقواعد معينة، يتم استبدالها بتصميمات متوازية.

    ">على الرغم من انخفاض مستوى التوازي الذي تم تحقيقه عند إنشاء خوارزمية متوازية عن طريق التحويل من خوارزمية تسلسلية، فإن هذه الطريقة تُستخدم على نطاق واسع، لأنها توفر القدرة على استخدام برامج تطبيقية باهظة الثمن تم تطويرها وتصحيح أخطائها لنظام الوثائق الرسمية (ODS) المتسلسل.

    ">في البرنامج المتسلسل، يتم التمييز بين المعالجة المتوازية الصريحة والمخفية.

    ">عند تحليل برنامج ما، يتم إنشاء رسم بياني لتدفق البيانات. وللكشف عن التوازي الواضح للعمليات، يتم تحليل مجموعات من متغيرات الإدخال (القراءة)" xml:lang="en-US" lang="en-US">R"> ومتغيرات الإخراج (المكتوبة)." xml:lang="ar-US" lang="ar-US">W"> لكل عملية.

    ">تتطلب المعالجة المتوازية المخفية نوعًا من إجراءات التحويل لبرنامج تسلسلي لتمكين تنفيذه بالتوازي. يمكن أن يكون التحويل كما يلي:

    ">أ) انخفاض في ارتفاع الشجرة التعبيرات الحسابية(الشكل 6.3)؛

    ">ب) تحويل علاقات التكرار الخطية؛

    ">ج) استبدال المشغلين؛

    ">د) تحويل كتل التحولات الشرطية والحلقات إلى الشكل الأساسي؛

    ">ه) توزيع الدورات.

    ">تحقيق البنى المتوازية أداء عالي، إذا كان تحويل التوازي يأخذ في الاعتبار ميزات بنية الكمبيوتر التي من المفترض أن يتم تنفيذ الخوارزمية عليها.

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

    ">أي خوارزمية تحتوي على مقاطع متسلسلة (عددية). وقد ثبت أن طول هذه المقاطع العددية هو العامل المحدد عند تنفيذ الخوارزمية على جهاز كمبيوتر متوازي.

    ">3. درجة ومستويات التوازي

    ">درجة التوازي"> (" xml:lang="en-US" lang="en-US">د">) "> هذا هو ترتيب عدد أجهزة العمل المتوازية في النظام عند تنفيذ خوارزمية المهمة، بشرط ألا يكون عدد المعالجات (أجهزة المعالجة) محدودًا.

    ">1) درجة منخفضة: من 2 إلى 10 معالجات.

    ">2) درجة متوسطة: من 10 إلى 100 معالج.

    ">3) الدرجة العالية: من 100 إلى 10;vertical-align:super">4 "> المعالجات.

    ">4) درجة عالية جدًا: من 10;vertical-align:super">4 "> ما يصل إلى 10 ;vertical-align:super">6 "> المعالجات.

    ">التمثيل الرسوميمعامل" xml:lang="en-US" lang="en-US">د">(" xml:lang="en-US" lang="en-US">t">) كدالة للوقت تسمى ملف تعريف توازي البرنامج. ويبين الشكل 6.5 ملف تعريف التوازي النموذجي.

    "> ب برامج التطبيقاتهناك مجموعة واسعة من التوازي المحتمل. في البرامج المكثفة حسابيا، يمكن إجراء ما بين 500 إلى 3500 عملية حسابية بالتوازي في كل دورة، إذا كانت هناك بيئة حاسوبية موجودة لذلك. ومع ذلك، حتى المعالج السلمي الفائق المصمم بشكل صحيح يمكنه دعم ما بين 2 و5.8 تعليمات في كل دورة. ويرجع هذا الانخفاض في المقام الأول إلى تكاليف الاتصالات والنظام.

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

    يتم أخذ المستويات الخوارزمية والدوائرية للتوازي بعين الاعتبار.

    يتم تمييز ما يلي: مستويات خوارزميةتماثل:

    1. مستوى المهمة:

    أ) بين المهام؛

    ب) بين مراحل المهمة.

    2. مستوى البرمجيات:

    أ) بين أجزاء البرنامج؛

    ب) ضمن الدورات.

    3. مستوى الأمر (بين مراحل تنفيذ الأمر).

    4. المستوى الحسابي والبت:

    ">أ) بين عناصر عملية المتجهات؛

    ">ب) في الداخل الدوائر المنطقيةألو.

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

    ">مستوى التوازي في الدائرة هو مستوى الأجهزة، حيث يتم تنفيذ موازاة معالجة البيانات أو تنظيم الحسابات المتوازية.

    ">يمكن تنفيذ المعالجة المتوازية على مستويات الدائرة التالية:

    ">1. على مستوى البوابات المنطقية وعناصر الذاكرة (الشكل 6.6).

    ">2. مستوى الدوائر المنطقية والأتمتة البسيطة ذات الذاكرة (الشكل 6.7).

    ">3. سجل المستوى و دوائر متكاملةالذاكرة (الشكل 6.8).

    4. مستوى المعالجات الدقيقة الأولية (الشكل 6.9).

    ">5. مستوى المعالجات الكبيرة التي تنفذ عمليات كبيرة (الشكل 6.10).

    6. مستوى أجهزة الكمبيوتر والمعالجات والبرامج (الشكل 6.11).

    ">4. أنواع التوازي

    ">4.1. التوازي الطبيعي و

    ">التوازي بين كائنات متعددة

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

    إن المشكلة لها توازي طبيعي إذا تم اختزالها في صيغتها الأصلية إلى عملية على ناقلات متعددة الأبعاد، مصفوفات متعددة الأبعادأو فوق وظائف الشبكة (الشكل 6.12).

    التوازي بين كائنات متعددة هو حالة خاصةالتوازي الطبيعي. معناها هو أن المهمة تتمثل في معالجة معلومات حول كائنات مختلفة ولكنها متشابهة تمت معالجتها باستخدام نفس البرنامج أو نفس البرنامج تقريبًا (الشكل 6.13).

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

    ">4.2. التوازي بين الفروع المستقلة

    جوهر التوازي بين الفروع المستقلة هو أنه في برنامج حل المشكلة، يمكن تمييز الأجزاء المستقلة، التي تسمى الفروع. إذا كان الكمبيوتر يحتوي على الأجهزة المناسبة، فيمكن تنفيذ الفروع بالتوازي (الشكل 6.14).

    ">فرع البرنامج Y لا يعتمد على الفرع X إذا:

    ">- ليس بينهما اتصالات وظيفية، أي. لا يعد أي من متغيرات الإدخال للفرع Y هو متغير الإخراج للفرع X أو أي فرع يعتمد على X؛

    "> - لا يوجد أي اتصال بينهما عبر حقول الذاكرة العاملة؛

    "> - يجب تنفيذها وفقا ل برامج مختلفة;

    "> - مستقلون في السيطرة، أي أن شرط تنفيذ الفرع Y يجب ألا يعتمد على الخصائص المتولدة أثناء تنفيذ الفرع X أو الفرع الذي يعتمد عليه.

    ">4.3. التوازي بين العمليات ذات الصلة أو

    ">التوازي المحلي

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

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

    في معظم الحالات، لا يعتمد مؤشر اتصال العمليات المجاورة على المشكلة بقدر ما يعتمد على جودة التحسين المحلي.

    ">5. نموذج المشكلة

    تم تصميم نموذج المشكلة من أجل تحليل مقارنهياكل أجهزة الكمبيوتر المتوازية. لذلك، يجب أن يكون عاما تماما ويصف فقط تكوين أشكال التوازي وأنواع الاتصالات.

    كقاعدة عامة، يتم بناء أي نموذج مشكلة بناءً على تحليل فئة المشكلات النموذجية. وبناء على نتائج التحليل، يتم تحويل الخوارزميات إلى عرض موازي. يمكن تمثيل الخوارزمية قيد الدراسة كبرنامج يتكون من سلسلة من الأقسام من ثلاثة أنواع (الشكل 6.15):

    1. المقاطع العددية (SC)؛
    2. أقسام ذات توازي الفروع المستقلة (BT)؛
    3. أقسام المتجهات (VC).

    نموذج المهمة عبارة عن مجموعة من المعلمات التي تميز البرنامج الموازي

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

    ">الشكل 6.15. نسبة العدد الإجمالي للحسابات لكل أقسام مختلفة من الخوارزمية في نموذج المشكلة

    " xml:lang="ar-US" lang="ar-US">W">sk

    " xml:lang="en-US" lang="en-US">Ww

    " xml:lang="ar-US" lang="ar-US">W">فك

    " xml:lang="ar-US" lang="ar-US">m;vertical-align:sub">sk

    " xml:lang="ar-US" lang="ar-US">m;vertical-align:sub" xml:lang="ar-US" lang="ar-US">tu

    " xml:lang="ar-US" lang="ar-US">m;vertical-align:sub">vk

    " xml:lang="en-US" lang="en-US">أ

    " xml:lang="en-US" lang="en-US">В

    " xml:lang="en-US" lang="en-US">C

    حجم الحسابات

    الطول النسبي