سؤال

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

هل كانت مفيدة؟

المحلول

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

ولسوء الحظ (أو لحسن الحظ)، رسالة عابرة وحشا مختلفا جدا من pthreading - الافتراض الأساسي هو مختلف تماما. أنا أحب <وأ href = "http://blogs.msdn.com/maestroteam/archive/2009/02/27/we-haven-t-forgotten-about-other-models-honest.aspx" يختلط = "نوفولو noreferrer "> هذا الاقتباس من جوشوا فيليبس للفريق مايسترو :" الفرق بين رسالة عابرة والاتصالات للدولة المشتركة ما يعادل الفرق بين إرسال زميل له عن طريق البريد الإلكتروني التي تطلب لها لإكمال المهمة والانفتاح منظم لها لكتابة المهمة مباشرة في بلدها تأليف لائحة أكثر من مجرد كونه وقحا، وهذا الأخير هو المرجح لإرباك لها - أنها قد محوها، لا تلاحظ ذلك، أو قصد تحديد الأولويات بشكل غير صحيح "

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

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

نصائح أخرى

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

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top