موازية :: حلقات

تنفيذ الحلقات باستخدام الإجراءات الفرعية المتوازية المتوازية
التحميل الان

موازية :: حلقات الترتيب والملخص

الإعلانات

  • Rating:
  • رخصة:
  • Perl Artistic License
  • اسم الناشر:
  • Peter Valdemar M?rch
  • موقع ويب الناشر:
  • http://search.cpan.org/~pmorch/

موازية :: حلقات العلامات


موازية :: حلقات وصف

تنفيذ الحلقات باستخدام الإجراءات الفرعية المتوازية المتوازية غالبا ما تقوم حلقة بحسابات حسابات حيث لا يعتمد كل تكرار للحلقة على التكرار السابق، ويمكن إجراء التكرارات فعلا بأي ترتيب .PARALLEL :: LOOPS وحدة PERL التي تتيح لك تشغيل مثل هذه الحلقات بالتوازي باستخدام الكل يتم نقل وحدات المعالجة المركزية تحت تصرفك. يتم نقل قيم الترحيل تلقائيا من الأطفال إلى أولياء الأمور عبر MESHISS أو HAISS، والتي تم تكوينها بشكل صريح لهذا النوع من المشاركة عبر $ PL-> Share (). سيتم إجراء عمليات التجزئة التي سيتم تحويل المفاتيح التي يتم تعيينها في الأطفال (ولكن غير محلها أو إلغاء تحديدها)، وعند العناصر التي يتم دفعها إلى Rays في الأطفال يتم دفعها إلى الأصل RASRAY TOO (ولكن لاحظ أن الترتيب غير مضمون لتكون كما هو كان من شأنه أن يتم ذلك في عملية واحدة، نظرا لعدم وجود طريقة لمعرفة الطفل الذي سينتهي أولا!) إذا كنت تستطيع أن ترى بناء جملة محرج قليلا، فأنت في الأساس الحصول على التوقيف وعلى الرغم من الحلقات التي يمكن تشغيلها بالتوازي دون وجود لإزعاج الشوكة والأنابيب والإشارات وما إلى ذلك. كل هذا يتم التعامل معها لك بواسطة هذه الوحدة. بلدي maxprocs = 5؛ بلدي $ pl = الموازي :: loops-> جديد (maxprocs دولار)؛ بلدي parameters = (0 .. 9)؛ # نحن نريد إجراء بعض الحسابات الضخمة لكل @ @ @ و # تخزين كل نتيجة حسابية في الإخراج. لهذا السبب، نحن # "التعادل" الإخراج، بحيث يتم نقل التغييرات إلى الإخراج في أي عملية طفل # (انظر أدناه) تلقائيا وتحديثها في الأصل الأصل أيضا. بلدي إعادة إرجاع $ pl-> حصة (مقود \)؛ $ pl-> foreach (\ parameters، sub {# this this this "سحرية" يتم تنفيذه العمليات المتوازية للأطفال المتوازي # # مثال بسيط، ولكن هذا يمكن أن يكون حساب ضخم سيتم توززه، بحيث # $ MaxProcs عمليات مختلفة تحسب SQRT # في وقت واحد لقيم مختلفة من $ _ على عداد CPUS $ المختلفة {$ _} = SQRT ($ _)؛})؛ foreach (barameters) {printf "i: d sqrt (i): f \ n"، $ _، $ returnvalevalues {$ _}؛ } يمكنك أيضا استخدام Rays بدلا من Males، و / أو أثناء الحلقات بدلا من foreach: myreturnvalues؛ $ pl-> حصة (\ @ returnvalues)؛ بلدي $ i = 0؛ $ pl-> بينما (sub {$ i ++ <10}


موازية :: حلقات برامج ذات صلة

RMI.

استدعاء الأسلوب عن بعد مع وكلاء شفافة ...

153

تحميل