زبان ارائه می شود و چهار speedups در داده های بزرگ مشکلات

[ad_1]

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

این هفته در همایش بین المللی معماری موازی و تکنیک های تلفیقی محققان از دانشگاه فنی ماساچوست علم کامپیوتر و هوش مصنوعی آزمایشگاهی (CSAIL) ارائه زبان جدید برنامه نویسی، به نام شیر است که اجازه می دهد تا توسعه دهندگان نرم افزار مدیریت حافظه موثرتر در برنامه هایی که در مقابله با نقاط پراکنده در مجموعه داده های بزرگ.

در آزمون در الگوریتم چند مشترک، برنامه های نوشته شده به زبان جدید چهار بار به عنوان سریع به عنوان کسانی که در زبان موجود نوشته شده بودند. اما محققان بر این باورند که کار بیشتر به سود حتی بزرگتر عملکرد.

دلیل که مجموعه داده های بزرگ امروز مطرح مشکلات حافظه موجود تکنیک های مدیریت سامان Amarasinghe استاد مهندسی برق و علوم کامپیوتر را توضیح می دهد نه آنقدر که به بزرگی که آنها هستند چه کامپیوتر دانشمندان “پراکنده.” تماس نیستند است است که با داده های بزرگ مقیاس راه حل نه لزوما متناسب با مقیاس مشکل افزایش.

“در تنظیمات اجتماعی ما به نگاهی به مشکلات کوچکتر استفاده می شود” Amarasinghe می گوید. “اگر مردم در این ساختمان [CSAIL] را نگاه می کنید، ما همه متصل هستید. اما اگر نگاه مقیاس سیاره من مقیاس من تعداد دوستان. سیاره میلیاردها نفر از مردم است، اما من هنوز هم تنها صدها نفر از دوستان. ناگهان شما مشکل بسیار پراکنده اند.”

به طور مشابه، Amarasinghe می گوید: bookseller آنلاین با، می گویند، ۱۰۰۰ مشتریان ممکن است مانند برای بازدید کنندگان خود با لیستی از کتاب های محبوب ترین آن ۲۰٫ آن، با این حال، که bookseller آنلاین با میلیون ها مشتری می خواهم برای بازدید کنندگان خود با لیستی از کتاب های محبوب ترین آن ۲۰۰۰۰ را دنبال نمی کند.

محلی فکر

امروز در تراشه های رایانه نمی بهینه سازی شده برای داده های پراکنده–در واقع، درست است. چون اجرا و بازگرداندن داده از تراشه حافظه اصلی بانک است، هر هسته یا پردازنده در تراشه مدرن خود “، بانک نسبتا کوچک و محلی، با سرعت بالا حافظه کش” است. به جای دلربا قلم دوم از اقلام داده ها تنها در یک زمان از حافظه اصلی، هسته واکشی کل بلوک از داده ها. و آن بلوک با توجه به اصل محل انتخاب شده است.

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

اگر الگوریتم تنها ۲۰ کتاب از ۲ میلیون در خرده فروش آنلاین پایگاه داده علاقه مند است اما این روش کار نمی کند. اگر داده های مرتبط با کتاب یک درخواست، احتمال دارد که داده های مرتبط با کتاب ۱۰۰ مجاور خواهد شد بی ربط است.

قصد حافظه اصلی مورد اطلاعات تنها در زمان woefully ناکارآمد است. ولادیمیر Kiriansky دانشجوی دکترای مهندسی برق و علوم کامپیوتر و نفر اول در مقاله جدید می گوید: «تا اگر هر بار که شما می خواهید یک قاشق مربا خوری، غلات، شما یخچال را باز کنید، باز کردن کارتن شیر، قاشق شیر بریزید، کارتن را بسته و آن را در یخچال قرار داده است». او با Amarasinghe و ژانگ Yunming نیز دانشجوی دکترای مهندسی برق و علوم کامپیوتر پیوست.

پردازش دسته ای شیر به سادگی می افزاید: چند فرمان به OpenMP گسترش زبان مانند C و فرترن که آسان تر به نوشتن کد برای پردازنده های چند هسته ای. با شیر، یک برنامه نویس چند خط اضافی کد اطراف هر دستور العمل است که iterates از طریق مجموعه داده های بزرگ به دنبال تعداد نسبتا کمی از موارد را وارد مى کند. شیر را کامپایلر–برنامه است که کد های سطح بالا را به دستورالعمل های سطح پایین–تبدیل می کند و سپس ارقام از نحوه مدیریت حافظه درآمده.

با شیر برنامه, هنگامی که هسته در می یابد که آن نیاز به یک قطعه داده ها، آن آن–و cacheful مجاور داده–از حافظه اصلی درخواست نمی کند. در عوض، آن مورد اطلاعات آدرس به لیست آدرس های محلی ذخیره شده می افزاید. هنگامی که لیست طولانی به اندازه کافی است، تمام تراشه های هسته استخر لیست های خود را، با هم گروه آن آدرس است که در نزدیکی یکدیگر و توزیع مجدد آنها را به هسته. به این ترتیب هر هسته تنها اقلام داده ها است که در آن می داند به آن نیاز دارد و که می تواند بازیابی کارآمد درخواست.

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

[ad_2]

0 پاسخ

دیدگاه خود را ثبت کنید

تمایل دارید در گفتگوها شرکت کنید؟
در گفتگو ها شرکت کنید.

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *