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

ان  كنا  نقصد بكلامنا  الحواسيب الضعيفة او  المتوسطة   فاننا نشير  بعملية المعالجة بالتوازي   لتشغيل  برنامج  ما في اقل وقت  ممكن  واسرع  ما  يمكن ،  بالطبع عرف العالم  ثورة في معالجة البينات الحوسبية  من بانتيو م الى  سلاسل اكور 

بالطبع هناك بعض  المهام الحوسبية  التي تحتاج  وقت اطول  للمعالجة فبدل  معالجة  كل مسألة  لوحدها  يتم معالجة بالتوازي ::
مثلا البرامج التي تستغرق ساعة للعمل  وساعة للحساب وساعة للتحليل   لما  لا يتم التشغيل  بالتوازي   ونخلص  في المسائل التالي  خلال ساعة بدل  3 ساعات  !! 


نعلم ايضا انه لكل  برامج مدخل ==> وعملية  processing  ثم ==> مخرج  او  نتيجة العملية  

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


Related image

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

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


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

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

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

تعتبر أجهزة SMP بسيطة نسبيًا ؛ آلات MPP ليست كذلك. تعمل أجهزة SMP بشكل جيد على جميع أنواع المشاكل ، مما يوفر كمية البيانات المطلوبة ليست كبيرة جدًا. بالنسبة لبعض المشاكل ، مثل استخراج البيانات من قواعد البيانات الضخمة ، لن تعمل سوى أنظمة MPP.





Post a Comment

0 Comments