logo

logo

logo

logo

logo

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

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

Parallel processing - Traitement parallèle

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

 

الطريقة التقليدية لزيادة أداء النظام هي استعمال معالِجات متعددة، يمكن أن تعمل على التوازي لتقبُّل أعباء معيَّنة وهو ما يُعرف بالمعالجة المتوازية parallel processing. إن التنظيمين المتعددي المعالِجات الأكثر شيوعاً هما تنظيم المعالِجات المتعددة المتناظرة Symmetric Multiprocessors (SMP) وتنظيم العناقيد clusters. وظهرت حديثاً نظم تجارية تستخدم النفاذ اللامنتَظَم إلى الذاكرة Non Uniform Memory Access (NUMA).

يتألف التنظيم SMP من معالجات متعددة متماثلة ضمن الحاسوب نفسه، يتصل بعضها ببعض بوساطة مسرى أو بنوع ما من شبكات الابتدال switching network. يكون عادة لكل معالج خابيته cache الخاصة به، ولذا يمكن أن تُخزَّن مجموعة معطيات محددة في أكثر من خابية واحدة. فإذا تبدلت مجموعة المعطيات هذه في إحدى الخابيات، يكون حينئذ لكل من الذاكرة الرئيسية والخابية الأخرى نسخة غير صالحة من تلك المعطيات. ولقد صُمِّمَت «بروتوكولات» اتّساق الخابيات cache coherence لتتغلب على هذه المشكلة. أما نظام النفاذ اللامنتَظَم إلى الذاكرة NUMA فهو نظام متعدد المعالِجات ذو ذاكرة مشترَكة يتغير فيه زمن نفاذ معالج إلى كلمة في الذاكرة بحسب موقع كلمة الذاكرة.

لمحة موجزة

يُنظَر، عادة، إلى الحاسوب كآلة تتابعية. تتطلب معظم لغات برمجة الحاسوب أن يُوَصِّف المبرمِج الخوارزميات كمتتالية من التعليمات. وتنفِّذ المعالجات البرامجَ بتنفيذ تعليمات الآلة بالتتابع إذ تُنفَّذ تعليمة واحدة في لحظة معينة. وتُنفَّذ كل تعليمة بتنفيذ متتالٍ من العمليات الأولية (جَلْب التعليمة، جَلْب العوامل، تنفيذ العملية، تخزين النتائج).

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

الشكل (1) تصنيف بني المعالجات المتوازية

1ـ أنواع أنظمة المعالجات المتوازية types of parallel processor systems: ما يزال التصنيف الذي وضعه فلين Flynn في عام 1972 الطريقة الأكثر شيوعاً لتصنيف الأنظمة وفق إمكانات المعالجة المتوازية المتاحة فيها. وقد قدم التصنيفات الآتية لأنظمة الحاسوب:

- تعليمة مفردة، دفْق معطيات مفرد single instruction, single data stream (SISD): وهو معالج مفرد ينفِّذ دفْق تعليمات مفرد لتطبيقها على معطيات مخزَّنة في ذاكرة مفردة. وتقع المعالجات الأحادية في هذه الفئة.

- تعليمة مفردة، دفْق معطيات متعدد Single instruction, multiple data stream (SIMD): تتحكم تعليمة مفردة للآلة في التنفيذ المتزامن لعدد من عناصر المعالجة وفق قاعدة الخطوة المتشابكةlockstep. ولكل عنصر معالجة ذاكرة معطيات مرفقة به، ولذا فإن كل تعليمة تنفَّذ على مجموعة مختلفة من المعطيات من قبل معالجات مختلفة. وتنتمي المعالِجات المُتَّجِهية والصفيفية إلى هذه الفئة.

- تعليمات متعددة، دفْق معطيات مفرد multiple instructions, single data stream (MISD): يُرْسَل تتالٍ من التعليمات إلى مجموعة من المعالجات، بحيث ينفِّذ كل منها تتالي تعليمات مختلفاً عن غيره. لم تُنفَّذ هذه البنية أبداً.

- تعليمات متعددة، دفْق معطيات متعدد Multiple instructions, multiple data stream (MIMD): تنفِّذ مجموعة من المعالجات بالوقت نفسه تتاليات تعليمات مختلفة على مجموعات معطيات مختلفة. تقع أنظمة المعالجات المتعددة المتناظرة SMP، والعناقيد وأنظمة النفاذ اللامُنتَظَم إلى الذاكرة NUMA ضمن هذه الفئة.تكون المعالجات في التنظيم MIMD عامة الاستخدام، فكل معالج قادر على معالجة جميع التعليمات الضرورية لإنجاز التحويل المناسب للمعطيات. ويمكن تقسيم التنظيمات MIMD إلى فروع وفق الوسائل التـي يتصل فيها بعض المعالجات مع بعضها الآخر (الشكل 1). فإذا كانت المعالجات تشترك في ذاكرة عامة، فإن كل معالج يستطيع حينئذ النفاذ إلى البرامج والمعطيات المخزَّنة في الذاكرة المشتركة، وتتخاطب المعالجات مع بعضها عن طريق تلك الذاكرة. يُسمّى الشكل الأكثر شيوعاً لمثل هذا النظام بالمعالجات المتعددة المتناظرة (SMP) الذي سيعرض لاحقاً. تتشارك في هذا النظام عدة معالجات بذاكرة واحدة أو بمجموعة ذاكرات بوساطة مسرى مشترك أو بأي آلية اتصال بينـي أخرى؛ وهناك سمة مميِّزة لهذا النظام وهي أن زمن النفاذ إلى أي منطقة في الذاكرة هو نفسه تقريباً لكل معالج. وآخر تطوير لهذا البنيان هو تنظيم النفاذ اللامُنتَظَم إلى الذاكرة (NUMA). وكما يوحي الاسم، فإن زمن النفاذ إلى مناطق مختلفة من الذاكرة قد يختلف من أجل معالج يتبع التنظيم NUMA.

ويمكن أن تُوصَّل مجموعة من المعالجات الأحادية المستقلة أو المعالجات المتعددة المتناظرة SMP بينياً لتشكِّل عنقوداً. ويكون الاتصال بين الحواسيب عبر ممرات ثابتة أو بوساطة شبكة ما.

يوضِّح الشكل (2) التنظيم العام للتصنيف المذكور في الشكل (1). يبين الشكل (2-آ) بنية النظام SISD. هناك مجموعة لوحدة تحكم Control    Unit (CU) تقدم دفْق التعليمات (Instruction Stream (IS إلى وحدة المعالجة Processing Unit (PU). تتعامل وحدة المعالجة مع دفْق معطيات مفرد Data Stream (DS) مصدره وحدة ذاكرة Memory Unit (MU). أما في النظام SIMD، فما تزال هناك وحدة تحكم مفردة، تقدِّم دفْق تعليمات مفرداً لعناصر معالَجة متعددة. قد يكون لكل عنصر معالَجة ذاكرته الخاصة به (الشكل 2-ب)، أو قد يكون هناك ذاكرة مشترَكة. وأخيراً، في حالة النظام MIMD، يوجد وحدات تحكم متعددة، وتقدِّم كل وحدة تحكم دفْق تعليمات منفصلاً إلى عنصر المعالَجة الخاص به. يمكن أن يضم النظام MIMD معالِجات متعددة بذاكرة مشترَكة (الشكل 2-جـ) أو حواسيب متعددة بذاكرة موزَّعة (الشكل 2-د).

الشكل (2) التنظيمات البديلة للحاسوب

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

- يضم معالجين متماثلين بإمكانات متقاربة، أو أكثر.

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

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

- تستطيع جميع المعالجات أن تُنجِز الوظائف ذاتها (ومنه التعبير متناظر).

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

إن لنظام SMP عدداً من الميزات القوية مقارنة ببنيان أحادي المعالج، نذكر منها: الأداء performance الأفضل من نظام وحيد المعالج من النوع نفسه، والمتاحية availability الأفضل إذ لن يؤدي عطل معالج ما إلى إيقاف النظام، ونمو تزايدي incremental growth: يمكن للمستخدِم أن يعزِّز أداء النظام بإضافة معالج إضافي.  وتجدر الملاحظة إلى أن هذه الميزات هي فوائد ممكنة ولكنها ليست مضمونة. ويجب أن يقدم نظام التشغيل الأدوات والوظائف اللازمة لاستثمار التوازي في نظام SMP.

الشكل (3) مخطط صندوقي عَموم لنظام متعدد المعالِجات وثيق الاقتران

يبين (الشكل 3) التنظيم العام لنظام متعدد المعالِجات. يوجد عموماً معالجان أو أكثر. وكل معالج مستقل بذاته ويتضمن وحدة تحكم، ووحدة حساب ومنطق ALU، وسجلات، وذاكرة خابية. يستطيع أي معالج النفاذ إلى ذاكرة رئيسية مشتركة وإلى تجهيزات الدخل/الخرجI/O  بوساطة آلية التوصيل البيني. ويمكن أن تتصل بعض المعالِجات ببعضها الآخر بوساطة الذاكرة (تُترَك الرسائل ومعلومات الحالة في مناطق معطيات مشترَكة). ومن الممكن أيضاً للمعالِجات أن تتبادل الإشارات مباشرة. وتنَظَّم الذاكرة غالباً بحيث تسمح بعمليات نفاذ متعددة إلى كتل مختلفة في آن واحد. ففي بعض التشكيلات، يمكن أن يكون لكل معالج ذاكرته الرئيسية الخاصة به وقنوات دخل/خرج I/O مخصصة له إضافة إلى الموارد المشتركة.

يمكن أن يُصنَّف تنظيم نظام متعدد المعالِجات كما يأتي: مسرى مشترَك أو مقتَسَم زمنياً، وذاكرة متعددة المنافذ، ووحدة تحكم مركزية.

- المسرى المقتَسَم زمنياً Time-Shared Bus: إن المسرى المُقتَسَم زمنياً هو الآلية الأبسط لإنشاء نظام متعدد المعالِجات (الشكل 4). فالبنية وواجهات الترابط المستخدَمة هي، أساساً، مشابهة لتلك المستخدَمة في نظام وحيد المعالج يستخدم مسرى للتوصيل البيني. ويتألف المسرى من خطوط تحكم، وخطوط عناوين، وخطوط معطيات. وحتى يَسهل النقل بالنفاذ المباشر إلى الذاكرة (Direct Memory Access, DMA) من معالِجات دخلْ/خرْج I/O، فإنه تُتَّخذ الإجراءات الآتية:

الشكل (4) تنظيم متعدد المعالِِجات متناظر

- العنونة addressing: لتحديد مصدر المعطيات ووجهتها،

- والتحكيم arbitration: للحكم بين الطلبات المتنافسة على سيادة المسرى،

- واقتسام الزمن time sharing: في استخدام المسرى.

يمكن استعمال سِمات النظام الوحيد المعالج هذه مباشرة في تركيبة المعالِجات المتعددة المتناظرة (SMP). وفي هذه الحالة الأخيرة، قد ترغب عدة معالِجات، إضافة إلى معالِجات الدخل/الخرج I/O المتعددة، في النفاذ إلى مجتزأ واحدة أو أكثر بوساطة المسرى.

إن لتنظيم المسرى عدة ميزات مقارنة بالمقاربات الأخرى وهي: البساطة simplicity، والمرونة flexibility، والموثوقية.

إن العائق الرئيسي لتنظيم المسرى هو الأداء. إذ تمر جميع عمليات عنونة الذاكرة عبر المسرى العام. ولذا فإن سرعة النظام محدودة بزمن دورة المسرى. ومن أجل تحسين الأداء، يمكن أن يزوَّد كل معالج بخابية. ومن شأن ذلك تخفيض عدد عمليات النفاذ إلى المسرى تخفيضاً ملحوظاً. يُستخدَم، عادة، في محطات العمل والحواسيب الشخصية التي تتبع البنيان SMP، مستويان من الذاكرة الخابية؛ وهما مستوى داخلي للخابية L1 (مكامَلَة على رقاقة المعالج ذاتها) ومستوى داخلي أو خارجي للخابية L2.

يُدْخِل استعمال الخابيات بعض الاعتبارات التصميمية الجديدة. ولما كانت كل خابية محلية تحتوي على صورة جزء من الذاكرة، فإن تغيير كلمة في خابية واحدة، قد يُبطِل صلاحية كلمة في خابية أخرى. ولمنع هذا الأمر، فإنه يجب تعديل القيم في المعالِجات الأخرى بحيث يحصل تحديث للخابيات. تُعرَف هذه المشكلة باسم مشكلة اتِّساق الخابيات cache coherence، وهي تُعالج عادة في العتاد المادي وليس بوساطة نظام التشغيل.

- ذاكرة متعددة المنافذ multiport memory: تسمح طريقة الذاكرة المتعددة المنافذ بنفاذ أي معالج أو مجتزأ دخل/خرج إلى مجتزآت الذاكرة الرئيسية نفاذاً مباشراً ومستقلاً (الشكل 5). ويحتاج الأمر إلى نظام منطقي مرتبط بالذاكرة لحل التنازع. ويُعتَمَد لحل التنازع، غالباً، أسلوب إسناد أفضليات ثابتة إلى كل منفَذ ذاكرة. وتكون واجهة الربط المادية والكهربائية عادة عند كل منفذ مماثلة لتلك الموجودة في مجتزأ ذاكرة وحيد المنفذ. ولذا، فقد يحتاج المعالج أو مجتزأ الدخل/الخرج إلى تعديل بسيط، وقد لا يحتاج إطلاقاً، إلى التخاطب مع ذاكرة متعددة المنافذ.

الشكل (5) ذاكرة متعددة النوافذ

إن طريقة الذاكرة المتعددة المنافذ أعقد من طريقة المسرى، وتتطلب إضافة كمية كبيرة من المنطق إلى نظام الذاكرة. ولكن يُفتَرَض أن تقدم أداء أفضل لأن لكل معالج ممراً مخصصاً إلى كل مجتزأ ذاكرة. وهناك ميزة أخرى لتعدد المنافذ وهي إمكانية تشكيل أجزاء من ذاكرة لتكون «ذاكرة خصوصية» لمعالج واحد أو أكثر ولمجتزآت الدخل/الخرج O/I. تسمح هذه السمة بالأمن المتزايد ضد النفاذ غير المسموح به وبتخزين مساقات الاسترجاع في مناطق من الذاكرة غير معرَّضة للتعديل بوساطة معالِجات أخرى.

3ـ اتِّساق الخابيات cache coherence: من المألوف أن يُشاهد في النظم المعاصرة المتعددة المعالِجات مستوى واحد أو مستويان من الخابيات المرافقة لكل معالج. وإن هذا التنظيم ضروري لتحقيق أداء مناسب. ومع ذلك فإن هذا يخلق مشكلة تُعرَف باسم «اتِّساق الخابيات». وإن جوهر المشكلة هو مايأتي:

يمكن أن توجد نسخ متعددة من المعطيات نفسها وبالوقت نفسه في خابيات مختلفة، فإذا سُمِح للمعالِجات أن تُحَدِّث نسخها الخاصة بها بحرية، فإنه يمكن أن تحوي هذه الخابيات قيماً مختلفة عن الذاكرة. وقد عرِّفت في  أدبيات الحواسيب سياستا كتابة شائعتان:

- سياسة الكتابة خلفاً write back policy: تُوجَّه عمليات الكتابة إلى الخابية فقط. وتُحَدَّث الذاكرة الرئيسية فقط عندما يُفَرَّغ سطر الخابية المقابل من الخابية.

- سياسة الكتابة في أثناء النفاذ write through policy: تُوجَّه جميع عمليات الكتابة إلى الذاكرة الرئيسية والخابية معاً، مما يضمن أن الذاكرة الرئيسية تكون صالحة دائماً.

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

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

4ـ العناقيد clusters: تُعَدُّ الحَوْسَبَة العنقودية إحدى المجالات الجديدة المهمة في تصميم نظم الحواسيب. وهي بديل لتعدد المعالَجة المتناظرة SMP، إذ تقدِّم هذه الطريقة أداءً عالياً ومُتاحية كبيرة وهي مناسبة خصوصاً من أجل تطبيقات المُخَدِّم server. ويمكن تعريف العنقود أنه مجموعة من حواسيب كاملة، موصَّلة، تعمل بعضها مع بعض كمَوْرِد حَوْسَبة موحَّد يمكنه أن يُحدِث انطباعاً بوجود آلة واحدة. يميز التعبير «حاسوب كامل» whole computer نظاماً يمكنه أن يعمل بنفسه منعزلاً عن العنقود؛ ويشار في المراجع العلمية إلى كل حاسوب في عنقود باسم «عقدة» node.

تحقق الحوسبة العنقودية أربع فوائد يمكن عدّها أيضاً أهدافاً أو متطلبات التصميم وهي: التَصَعُّديَّة scalability والمتاحية العالية high availability ونسبة أفضل للكلفة إلى الأداء superior price/performance.

- تشكيلات العناقيد cluster configurations: تُصنَّف العناقيد في المراجع العلمية بعدد من الطرق المختلفة. وربما يعتمد التصنيف الأبسط على اشتراك الحواسيب في عنقود ما بالنفاذ إلى الأقراص نفسها. ويبين الشكل (6-آ) عنقوداً بعقدتين حيث يكون التوصيل البينـي الوحيد هو وصلة عالية السرعة والتـي يمكن أن تُستعمل لتَبادل الرسائل من أجل تنسيق أنشطة العنقود. ويمكن أن تتحقق الوصلة بشبكة محلية (LAN) فيها حواسيب أخرى غير عنقودية أو يمكن أن تكون وسيلة توصيل بَيْنـي مُخصَّصة. ففي الحالة الأخيرة، سيكون لأحد حواسيب العنقود أو أكثر وصلة إلى شبكة محلية LAN أو إلى شبكة واسعة WAN بحيث يكون هناك اتصال بين عنقود المخدِّم وأنظمة الزبون البعيدة. ويُلاحظ في الشكل أن كل حاسوب قد مُثِّل بنظام متعدد المعالِجات. إن هذا ليس ضرورياً لكنه يعزِّز الأداء والمتاحية.

الشكل (6) تشكيلات العناقيد

أما البديل الآخر في التصنيف البسيط المبيَّن في الشكل (6-ب) فهو العنقود ذو الأقراص المشترَكة. ففي هذه الحالة، هناك، عموماً وصلة لنقل الرسائل بين العقد. إضافة إلى ذلك، يوجد نظام فرعي للأقراص مرتبط مباشرة بحواسيب متعددة ضمن العنقود. وفي الشكل السابق، يتألف نظام الأقراص الفرعي من صفيفة مكرَّرة من الأقراص المستقلة (RAID). وقد شاع استعمال نظام RAID أو استعمال تقانة أقراص تكرارية مماثلة أخرى في العناقيد. لذا، فلا تضيع المتاحية العالية، المحقَقة بوجود حواسيب متعددة، باستخدام قرص مشترك والذي هو نقطة الإخفاق الوحيدة في العنقود.

     يتطلب الاستثمار الكامل للتشكيل العتادي للعنقود بعض التحسينات الواجب إضافتها إلى نظام التشغيل الوحيد الحاسوب مثل كيفية إدارة الأعطال failure management، وتوازن الحمل load balancing.

5 ـ النفاذ اللامُنْتَظَم إلى الذاكرة Non-Uniform Memory Access (NUMA): فيما يتعلق بالمنتجات التجارية، فإن المقاربتين الشائعتين لتقديم نظام متعدد المعالِجات هما نظام تعدد المعالِجة المتناظرة والعناقيد. لقد ظهرت، منذ سنوات، مقاربة أخرى في مجال البحث عُرِفت باسم النفاذ اللامُنتَظَم إلى الذاكرة NUMA. تستطيع في طريقة النفاذ هذه جميع المعالِجات النفاذ إلى جميع أجزاء الذاكرة الرئيسية باستعمال تعليمات التحميل والتخزين. ويختلف زمن نفاذ معالج إلى الذاكرة حسب منطقة الذاكرة الرئيسية المطلوبة. إن العبارة الأخيرة صحيحة من أجل جميع المعالِجات؛ ولكن، ومن أجل معالِجات مختلفة، تختلف المناطق السريعة والبطيئة في الذاكرة. أما النفاذ اللامُنْتَظَم إلى الذاكرة مع اتِّساق الخابيات Cache-Coherent NUMA (CC-NUMA) فهو نظام نفاذ لا منتَظَم إلى الذاكرة NUMA يُحافَظ فيه على اتِّساق الخابيات المرتبطة بالمعالِجات المختلفة.

يُعَدُّ نظام NUMA من دون اتِّساق الخابيات مكافئاً تقريباً للنظام العنقودي. أما المنتجات التجارية التـي حظيت باهتمام كبير حديثاً فهي أنظمة CC-NUMA (أي مع اتِّساق الخابيات)، وهي تختلف كلياً عن كل من الأنظمة ذات تعدد المعالِجة المتناظرة والعناقيد. وتُعرَف عادة ـ ولكن ذلك ليس صحيحاً دوماً لسوء الحظ ـ مثل هذه الأنظمة تجارياً بأنظمة CC-NUMA.

إن الهدف من المقاربة (NUMA) هي المحافظة على ذاكرة شفافة لكل النظام، وهذا ما يسمح باستخدام عُقَد متعددة تحوي معالِجات متعددة، لكل منها مسراها الخاص بها أو نظام توصيل بينـي داخلي آخر.

يبين (الشكل 7) تنظيم النفاذ اللامُنتَظَم إلى الذاكرة مع اتِّساق الخابيات CC-NUMA النموذجي. هناك عدة عُقَد مستقلة، وكل عقدة منها هي، في الحقيقة، ذات تنظيم SMP. لذا تحوي كل عقدة عدة معالِجات، ولكل معالج خابيتان L1 و L2 خاصتان به، إضافة إلى الذاكرة الرئيسية. وإن العقدة هي اللبنة الأساسية في التنظيم CC-NUMA الإجمالي. فعلى سبيل المثال، تتضمن كل عقدة في نظام Origin، من إنتاج الشركة Silicon Graphics، معالجين MIPS R 10000، وتتضمن كل عقدة في نظام Sequent NUMA-Q أربعة معالِجات Pentium II. وإن العقد موصَّلة فيما بينها بوساطة وسيلة اتصالات ما، والتـي يمكن أن تعتمد آلية الابتدال، أو الحلقة، أو تعتمد أي وسيلة تشبيك أخرى.

وتتضمن كل عقدة في تنظيم CC-NUMA ذاكرة رئيسية ما. ولكن من وجهة نظر المعالِجات، هناك ذاكرة واحدة فقط قابلة للعنونة، بحيث يكون لكل موقع عنوان واحد في كل النظام. وعندما يستهل معالج ما عملية نفاذ إلى ذاكرة، وإذا لم يكن ذلك الموقع المطلوب موجوداً في خابية المعالج تلك، تستهل عندئذ الخابية L2 عملية جلْب. وإذا كان السطر المطلوب موجوداً في الجزء المحلي من الذاكرة الرئيسية، يُجلَب السطر عن طريق المسرى المحلي. وإذا كان السطر المطلوب في الجزء البعيد عن الذاكرة الرئيسية، يُرسَل عندئذ طلب آليّ لجلْب ذلك السطر عن طريق شبكة التوصيل البيْنيّ، وتسليمه إلى المسرى المحلي، ومن ثم تسليمه إلى الخابية الطالبة المرتبطة بذلك المسرى. إن هذه الفعالية آليَّة وشفافة بالنسبة إلى المعالج وخابيته.

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

وهناك أيضاً عيوب للمقاربة CC-NUMA. أولاً، لاتبدو CC-NUMA شفافة مثل المقاربة SMP؛ وسيتطلب الأمر تغييرات برمجية لنقل التطبيقات ونظام التشغيل من نظام SMP إلى نظام CC-NUMA. ويتضمن ذلك تحصيص الصفحات المذكور سابقاً، وتحصيص الإجرائيات وموازنة الحمل بوساطة نظام التشغيل. وهناك شأن ثانٍ وهو المُتاحيّة، فهذه قضية معقدة وتعتمد على التنجيز الصحيح للنظام CC-NUMA.

فيصل العباس

الموضوعات ذات الصلة:

الحاسوب ـ المعالج الصغري ـ المعالج السلمي الفائق.

مراجع للاسـتزادة:

- D.A. PATTERSON & J. L. HENNESSEY, Computer Organization and Design (Morgan Kuffmann, San Francisco1997).

- D.E. Culler & J. PALSING, Parallel Computer Architecture: A Hardware/Software Approach (Morgan Kaufmann, San Francisco 1991).


التصنيف : التقنيات (التكنولوجية)
النوع : تقانة
المجلد: المجلد التاسع عشر
رقم الصفحة ضمن المجلد : 26
مشاركة :

اترك تعليقك



آخر أخبار الهيئة :

البحوث الأكثر قراءة

هل تعلم ؟؟

عدد الزوار حاليا : 546
الكل : 31203184
اليوم : 28341

القانون الجوي

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