الگوریتم امروز

وبلاگ تخصصی الگوریتم

الگوریتم امروز

وبلاگ تخصصی الگوریتم

وبلاگ علمی و مخصوص مباحث الگوریتمی است.
نظر خصوصی نگذارید چون جواب نمی‌دهم نظر عمومی بگذارید بدون نام هم که باشد همانجا جواب می‌دهم.

بایگانی

۱۰۶ مطلب با موضوع «پردازش موازی» ثبت شده است

یادتون هست وقتی که کتاب‌های صفر و یک مد شده بودند. (یک ربطی به فیزیک داشت و ما می‌خواندیم که بگوییم خوانده‌ایم.)

حالا این پروژه‌ی موازی را دیدم یادم افتاد. :)) به درد نخورتر از این چیزی ندیده‌ام! :) تا جایی که یادم است قرار بود پروژه مفید و کاربردی باشد...

من ایمیل زدم درخواست دادم مهلتش تمدید بشود الآن تا ۵شنبه وقت دارد.

۰ نظر موافقین ۰ مخالفین ۰ ۰۱ تیر ۹۳ ، ۱۱:۴۲
سپیده آقاملائی

۱- multithreaded programming

الف) برنامه‌ی ترانهاده‌ی ماتریس و اثبات درستی آن

ب) اگر بعد از هر فراخوانی زیرمسأله یک sync بگذاریم چه می‌شود؟

۲- یک برنامه چندریسه‌ای بنویسید که اعداد را به دو قسمت کمتر مساوی میانگین و بیشتر از میانگین تقسیم کند اما ترتیب اعداد ورودی را به هم نزند.

۳- در برنامه‌ی MST موازی قسمت های زیر را چه کسی برای چی در چه زمانی و ... انجام می‌داد؟

الف) P(i) = P(P(i)

ب) L(i) = L(P(i))

۴- مسیریابی:

الف) مثالی بزنید که 2n/3 بافر نیاز داشته باشد. (قسمت هر پردازنده در صورت سوال غلط بود)

ب) آن را با مرتب سازی حل کنید. زمان؟

ج) آن را با پیش پردازش حل کنید. زمان؟

۵- الگوریتم parallel prefix را برای مدل hypercube بنویسید.

۶- مرتب سازی روی مدل پروانه‌ای/hypercube را بنویسید.

۰ نظر موافقین ۰ مخالفین ۰ ۲۷ خرداد ۹۳ ، ۲۳:۲۳
سپیده آقاملائی

من به طرز خنده‌داری نوشتم دو تا درخت داریم به جای پروانه! :)

۰ نظر موافقین ۰ مخالفین ۰ ۲۷ خرداد ۹۳ ، ۱۶:۱۹
سپیده آقاملائی

ما بهترین مدلی که داریم شبیه PRAM یک گراف دوبخشی کامل است که هر رأس از هر بخش را به هر رأس از بخش دیگر وصل می‌کند. دلیل ادغام پردازنده‌های ریشه در MOT هم همین است که گراف K_(N,N) معادل N پردازنده باشد که هر کدام به N پردازنده‌ی دیگر وصل هستند. دلیل اینکه از درخت به جای گره‌ها استفاده می‌کنیم این است که در غیر این صورت درجه‌ی رأسها به شدت زیاد می‌شود.

پس از اینجا می‌فهمیم که برای طراحی الگوریتم برای MOT باید ابتدا PRAM آن را طراحی کنیم بعد آن را به MOT تبدیل کنیم.

۰ نظر موافقین ۰ مخالفین ۰ ۲۵ خرداد ۹۳ ، ۱۱:۱۷
سپیده آقاملائی
روشهای ارسال یک پیام به همه‌ی پردازنده‌ها در مدل ابرمکعب (هر پردازنده یک عدد q بیتی دارد و هر بیت آن را عوض کنیم به یک پردازنده‌ی همسایه‌ی آن می‌رسیم.)
۱- روش درخت دوجمله‌ای: در این روش یک پردازنده (مثلاً صفر) اطلاعات را به ترتیب به همسایه بعد آخر تا اول خود می‌فرستد. این پردازنده ها هم به همین ترتیب برای پردازنده‌های زیرمجموعه خود می‌فرستند.
زمان این کار به اندازه‌ی طول پیام * تعداد بیت‌های پردازنده‌ها (لگاریتم تعداد پردازنده‌ها) می‌شود.
۲- الگوریتم خط لوله درخت دوجمله‌ای (pipelined binomial tree)
در این روش به جای اینکه کل پیام را هر بار بفرستیم یک بیت پیام را می‌فرستیم و در مرحله‌ی بعد بیت بعدی و ادامه می‌دهیم تا کل پیام ارسال شود. زمان این کار به اندازه‌ی طول پیام به اضافه‌ی تعداد بیت‌های پردازنده‌ها (لگاریتم تعداد پردازنده‌ها) می‌شود.
۳- الگوریتم جانسون و هو (Johnsson & Ho)
هر بیت پیام را به پردازنده‌ی یک بعد می‌فرستد و هر کدام همین کار را ادامه می‌دهند. اگر تعداد بیت‌های پیام و تعداد بیت‌های پردازنده‌ها برابر باشد زمان این الگوریتم به اندازه‌ی تعداد بیت‌ها خواهد بود.
۱ نظر موافقین ۰ مخالفین ۰ ۲۳ خرداد ۹۳ ، ۱۷:۳۴
سپیده آقاملائی
زمانش از لگاریتمی بهتر نمی‌شود و در نتیجه efficiency آن هم ۱ نمی‌شود ولی باز هم انگار به عنوان الگوریتم خوب مورد قبول است!! (اشکال کتاب پرهامی)
http://www.mcs.anl.gov/~itf/dbpp/text/node126.html
۰ نظر موافقین ۰ مخالفین ۰ ۲۳ خرداد ۹۳ ، ۱۶:۴۶
سپیده آقاملائی
مربوط به سوال ۱۴.۸
مربوط به سوال ۱۴.۱۱
۰ نظر موافقین ۰ مخالفین ۰ ۲۰ خرداد ۹۳ ، ۱۵:۵۶
سپیده آقاملائی
من از زمان تحویل تمرین دکتر آبام نهایت تشکر را دارم! تنها دلیلی بود که من فهمیدم که امتحان‌هام توی خرداده نه تیر! (فقط هندسه توی تیره)
اولین امتحان تقریبی است که ۲۲ است بعدی موازی است که ۲۷ است بعدی ۳ تیر هندسه محاسباتی پیشرفته است.
۰ نظر موافقین ۰ مخالفین ۰ ۱۲ خرداد ۹۳ ، ۰۷:۵۱
سپیده آقاملائی

۰ نظر موافقین ۰ مخالفین ۰ ۱۰ خرداد ۹۳ ، ۱۵:۲۷
سپیده آقاملائی

در سوال ۱.۵۰ به الگوریتم ۱.۵.۵ ارجاع داده شده است که به صورت زیر است:
الگوریتم closure را با رابطه‌ی زیر اجرا می‌کنیم:

۰ نظر موافقین ۰ مخالفین ۰ ۰۹ خرداد ۹۳ ، ۱۲:۳۶
سپیده آقاملائی