مقاله محدودیت های ضبط موازی سازی سطح دستور همراه با متن لاتین

این مقاله در 30 صفحه و در قالب word در زمینه موازی سازی سیستم عامل ها تهیه و تنظیم شده است این مقاله از یک مقاله لاتین و معتبر (از سایت ساینس دایرکت) ترجمه و ویرایش شده است
دسته بندی کامپیوتر و IT
بازدید ها 0
فرمت فایل doc
حجم فایل 705 کیلو بایت
تعداد صفحات فایل 30
مقاله محدودیت های ضبط موازی سازی سطح دستور همراه با متن لاتین

فروشنده فایل

کد کاربری 25253
کاربر

این مقاله در 30 صفحه و در قالب word در زمینه موازی سازی سیستم عامل ها تهیه و تنظیم شده است این مقاله از یک مقاله لاتین و معتبر (از سایت ساینس دایرکت) ترجمه و ویرایش شده است.

فهرست
چکیده
مقدمه
2.یک مدل برای اجرای یک برنامه به صورت موازی
2.1 حذف وابستگی کنترل و وابستگی صحیح مدیریت پشته
2.2 انشعاب نظری و غیر نظری.
3-چارچوب آزمایشی.
3.1 شبیه ساز PerPI.
3.2مجموعه معیارهای cBenchو مجموعه داده انتخابی.
3.3شبیه سازی مدلهای مختلف.
3.4 شبیه سازی مدل انشعابی.
3.5 نتایج شبیه سازی
3.6 IPL مدل انشعابی بر روی کدهای اصلاح شده
3.7 تفاوت بین مدل انشعاب نظری با غیر نظری چیست؟
4.کارهای مرتبط بر روی مسیر موازی سازی خودکار
5. نتیجه گیری
مراجع.

چکیده

ما ظرفیت مدل های مختلف در حال اجرا را برای بهره مندی از موازی سازی سطح دستور (IPL) تحلیل کردیم.ابتدا، نشان می دهیم که قفل های ضبط فاصله IPLساکن (مقیم) هستند. ما این موارد را نشان می دهیم: 1)دریافت(واکشی)به صورت موازی2)تغییر نام منابع حافظه 3)از بین بردن وابستگی صحیح پارازیتی بر روی مدیریت پشته کلیدهای ضبط فاصله IPL.دوم پتانسیل یک مدل اجرایی جدید به نام انشعاب نظری را اندازه گیری می کنیم،که در آن یک اجرا به صورت پویا توسط انشعاب در هر تابع و حلقه مرزی ورودی چند نخی است و نخها برای پیوند مشتریان تغییر نام داده به دیگر تولید کنندگان ارتباط برقرار می کنند.ما نشان می دهیم که یک اجرا می تواند به طور خودکار توسط انشعاب نظری و تغییر نام قابل تعمیم موازی سازی شود.بسیاری از IPLدور، با افزایش اندازه داده ،می تواند به درستی برنامه های کامپایل شده براساس الگوریتم های موازی را ضبط کند.

کلمات کلیدی:
موازی سازی خودکار، موازی سازی ضبط سطح دستور IPLدور،انشعاب نظری ، تغییر نام حافظه

Limits of Instruction-Level Parallelism Capture.

Abstract
We analyse the capacity of different running models to benefit from the Instruction-Level Parallelism (ILP). First,
we show where the locks to the capture of distant ILP reside. We show that i) fetching in parallel, ii) renaming
memory references and iii) removing parasitic true dependencies on the stack management are the keys to capture
distant ILP. Second, we measure the potential of a new running model, named speculative forking, in which a run
is dynamically multi-threaded by forking at every function and loop entry frontier and threads communicate to link
renamed consumers to their producers. We show that a run can be automatically parallelized by speculative forking
and extended renaming. Most of the distant ILP, increasing with the data size, can be captured for properly compiled
programs based on parallel algorithms.
Keywords: Automatic parallelization, Instruction-Level Parallelism, distant ILP capture, speculative forking,
memory renaming

AbstractWe analyse the capacity of different running models to benefit from the Instruction-Level Parallelism (ILP). First,we show where the locks to the capture of distant ILP reside. We show that i) fetching in parallel, ii) renamingmemory references and iii) removing parasitic true dependencies on the stack management are the keys to capturedistant ILP. Second, we measure the potential of a new running model, named speculative forking, in which a runis dynamically multi-threaded by forking at every function and loop entry frontier and threads communicate to linkrenamed consumers to their producers. We show that a run can be automatically parallelized by speculative forkingand extended renaming. Most of the distant ILP, increasing with the data size, can be captured for properly compiledprograms based on parallel algorithms.Keywords: Automatic parallelization, Instruction-Level Parallelism, distant ILP capture, speculative forking,memory renaming


برنامه نویسی موازی شبکه روی سیستم GPU چندهسته ای شتاب یافته با بهینه سازی

برنامه نویسی موازی شبکه روی سیستم GPU چندهسته ای شتاب یافته با بهینه سازی
دسته بندی پژوهش
بازدید ها 0
فرمت فایل doc
حجم فایل 288 کیلو بایت
تعداد صفحات فایل 8
برنامه نویسی موازی شبکه روی سیستم GPU چندهسته ای شتاب یافته با بهینه سازی

فروشنده فایل

کد کاربری 25253
کاربر

برنامه نویسی موازی­ شبکه روی سیستم GPU چندهسته­ای شتاب­یافته با بهینه­ سازی

چکیده
واضح است که کدگذاری شبکه به عنوان روشی امیدوارکننده برای بهبود بازده شبکه و پهنای باند موجود پدید آمده است. اما، با توجه به پیچیدگی محاسباتی بالا، قابلیت پیاده­سازی کدگذاری شبکه هنوز هم به عنوان یک چالش بر جای مانده است. همچنین، کاربردهای شتاب­یافته با GPU محدود به روش­های سنتی هستند، که در آن GPU بعنوان یک کوپروسسور[1] برای مصرف مجموعه­داده­های انتقالی از CPU استفاده می­شود. بنابراین، یک چارچوب کدگذاری شبکه موازی مهاجم با بهینه­سازی برای GPU سفارشی شده است، که در آن یک گرنیولاریتی[2] مناسب موازی­شدگی برای کدگذاری شبکه ارائه شده است، و GPU نه تنها می­تواند به عنوان مصرف­کننده داده، بلکه تولیدکننده داده­ نیز عمل کند. علاوه بر این، کدگذاری شبکه خطی تصادفی، در GPU فعال شده با CUDA موازی و بهینه­سازی شده است تا به اعتباربخشی روش ارائه شده بپردازد. نتایج عملی [آزمایشگاهی] نشان می­دهد که موازی کردن کدگذاری شبکه در سیستم چندهسته شتاب­یافته با GPU استفاده از روش­های پیشنهادی بسیار موثر است.

کلمات کلیدی: GPU، کدگذاری شبکه، موازی­سازی، CUDA، بهینه­سازی.

1. مقدمه

کدگذاری شبکه، یکپارچه­سازی کدگذاری اطلاعات و مسیریابی شبکه، تکنیکی برای تبادل اطلاعات است، که در آن بسته­های اطلاعاتی قبل از ارسال کدبندی [کدگذاری] می­شوند.

با توجه به مزایایی از قبیل بهبود بازده شبکه، متعادل کردن بارها، کاهش تاخیر انتقال و مصرف انرژی گره، و افزایش استحکام شبکه [1]، کدگذاری شبکه به طور گسترده­ای در ذخیره­سازی فایل­های توزیعی [2] در شبکه­های بی­سیم استفاده شده است [3]. با این حال، واقعیت وجود محیط شبکه غیرقطعی [4]، پیچیدگی محاسباتی بالای کدگذاری شبکه [5] به عملکرد سیستم­های کدگذاری شبکه [5] آسیب می­رساند، لذا قابلیت پیاده­سازی آن هنوز هم یک چالش است. بنابراین، بهینه­سازی کدگذاری شبکه [6] کاربردی است، و بهینه­سازی به نفع کاهش محاسبات و هزینه کدگذاری شبکه از جمله الگوریتم بهبود کدگذاری شبکه [7] و شتاب کدگذاری شبکه مبتنی بر سخت افزار یا معماری [5] [8-9] است.

کدگذاری شبکه شتاب­یافته با معماری GPU به نتایج قابل­توجهی دست یافته است و هنوز هم در حال پیشرفت است. با این حال، کار قبلی برای به حداکثر رساندن مصرف منابع محاسباتی GPU برای بازده سیستم کدگذاری شبکه موازی اختصاص داده شده است اما هنوز هم مطلوب نیست. همچنین، کار کمی بر روی بهینه­سازی سلسله مراتب حافظه برای سیستم کدگذاری شبکه وجود دارد. بنابراین، یک چارچوب کدگذاری موثر شبکه موازی از جمله بهینه­سازی حافظه برای بهبود بهره­برداری علاوه بر مصرف منابع محاسباتی GPU ارائه شده لازم است.

2. معماری و مدل برنامه نویسی CUDA


شکل 1، نمایی کلی از معماری سیستم مشترک متشکل از GPU و CPU را نشان می­دهد، که در آن داده­ها بین CPU و GPU با کانال PCIe مورد تقاضا انتقال می­یابند. معماریGPU شامل تعدادی از مولتی­پروسسورهای مقیاس­پذیر (SMها) است که هر کدام شامل هشت هسته جریان پردازنده (SP) است و هر سه SM تشکیل یک شاخه مولتی پروسسور ریسه­ای (TPC) در NVidia GTX 280، حافظه پنهان[3] ثابت خواندنی، و حافظه پنهان بافت[4] خواندنی است. علاوه بر این، هر SM دارای16KB حافظه داخلی خواندنی و نوشتنی است که وجه مشترک همه SP های 8 بیتی است.

...


تحلیل الگوریتم شاخه و قید موازی آسنکرون ( Asynchronous Parallel Branch and Bound Algorithm )

تحلیل الگوریتم شاخه و قید موازی آسنکرون ( Asynchronous Parallel Branch and Bound Algorithm )
دسته بندی کامپیوتر و IT
بازدید ها 0
فرمت فایل doc
حجم فایل 24 کیلو بایت
تعداد صفحات فایل 50
تحلیل الگوریتم شاخه و قید موازی آسنکرون ( Asynchronous Parallel Branch and Bound Algorithm )

فروشنده فایل

کد کاربری 26386
کاربر

تحلیل الگوریتم شاخه و قید موازی آسنکرون ( Asynchronous Parallel Branch and Bound Algorithm )

بخشهایی از متن:

چکیده:

در این مقاله توضیحی درباره کامپیوترهای موازی می‌دهیم و بعد الگوریتمهای موازی را بررسی می‌کنیم. ویژگیهای الگوریتم branch & bound را بیان می‌کنیم و الگوریتمهای b&b موازی را ارائه می‌دهیم و دسته‌ای از الگوریتمهای b&b آسنکرون برای اجرا روی سیستم MIMD را توسعه می‌دهیم. سپس این الگوریتم را که توسط عناصر پردازشی ناهمگن اجرا شده است بررسی می‌کنیم.

نمادهای perfect parallel و achieved effiency را که بطور تجربی معیار مناسبی برای موازی‌سازی است معرفی می‌کنیم زیرا نمادهای قبلی speed up (تسریع) و efficiency (کارایی) توانایی کامل را برای اجرای واقعی الگوریتم موازی آسنکرون نداشتند. و نیز شرایی را فراهم کردیم که از آنومالیهایی که به جهت موازی‌سازی و آسنکرون بودن و یا عدم قطعیت باعث کاهش کارایی الگوریتم شده بود، جلوگیری کند.

...

- کامپیوترهای موازی (Parallel computers):

یکی از مدلهای اصلی محاسبات Control drivenmodel است، در این مدل کاربر باید صریحاً ترتیب انجام عملیات را مشخص کند و آن دسته از عملیاتی که باید به طور موازی اجرا شوند را تعیین کند. این مدل مستقل از عناصر پردازش به صورت زیر تقسیم‌بندی می‌شود:

- کامپیوترهای SISD، که یک عنصر پردازشی وجود دارد و توان انجام فقط یک عمل را در یک زمان دارد.

- کامپیوترهای MIMD، دارای چندین عنصر پردازشی هستند که بطور موازی دستورالعمل‌های متفاوت را روی دیتاهای متفاوت انجام می‌دهند.

- کامپیوترهای SIMD، همه عناصر پردازشی‌شان یک دستور یکسان را در یک زمان بر روی داده‌های متفاوتی انجام می‌دهند. اگر چه امکان پنهان کردن عناصر پردازشی وجود دارد. عنصر پردازشی پنهان شده نتیجه عملی را که انجام داده ذخیره نمی‌کند.

سیستمهای SIMD بر اساس نحوه ارتباط و اتصال عناصر پردازشی به یکدیگر خود به بخشهایی تقسیم می‌شوند: اگر تمام عناصر پردازشی به یکدیگر متصل باشند و از طریق یک حافظه مشترک ارتباط داشته باشند، به آن tightly coupled system گویند.

و اگر عناصر پردازش حافظه مشترک نداشته باشند اما از طریق شبکه‌ای بهم متصل باشند و بروش message passing با هم ارتباط داشته باشند، به آن loosely coupled system گویند.

حافظه مشترک در tightly coupled system ها هم نقطه قوت و هم نقطه ضعف این سیستمها است. امکان به اشتراک گذاشتن راحت و سریع اطلاعات بین عناصر پردازشی مختلف را فراهم می‌کند. ارتباط به عملیات ساده read و wite روی حافظه مشترک خلاصه می‌شود و هر عنصر پردازشی مستقیماً با دیگر عناصر پردازشی ارتباط برقرار می‌کند. با این حال، اگر تعداد عناصر پردازشی متصل به حافظه مشترک افزایش یابد، حافظه مشترک تبدیل به گلوگاه (Bottleneck) می‌شود.

بنابراین تعداد عناصر پردازشی در یک سیستم tightly coupled محدود است. به جهت اینکه تمام عناصر پردازشی بایستی به ان حافظه مشترک متصل باشند، این سیستمها بصورت کامل از پیش ساخته هستند و امکان اضافه کردن عناصر پردازش به سیستم وجود ندارد.

از طرف دیگر، ارتباط در یک سیستم loosely coupled کند و آهسته است. تبادل پیامها نیاز به زمانی بیش از زمان لازم برای نوشتن یا خواندن از یک حافظه مشترک دارد. این امکان هم وجود دارد که یک عنصر پردازش مستقیماً به عنصر پردازش دیگر که قصد ارتباط دارد متصل نباشد.

در مقابل compactness بودن سیستمهای tightly coupled ، عناصر پردازشی در یک سیستم loosely coupled می‌توانند در تمام نقاط توزیع شوند. لذا فاصله فیزیکی که یک پیام باید طی کند، بیشتر می‌شود. به جهت این حقیقت که عناصر پردازشی برای ارتباط در یک شبکه از یک پروتکل استفاده می‌کنند، lossely coupled system می‌توانند شامل انواع مختلفی از عناصر پردازشی باشند. امکان اضافه کردن عناصر پردازشی اضافه‌تری به سیستم وجود دارد. در حالت کلی عناصر پردازشی خودشان یک کامپیوتر کاملی هستند.

مثالی از سیستمهای loosely coupled، Distributed Processing utilities Package است که بعداُ به تفضیل درباره آنها توضیح می‌دهیم.