ارزیابی عملکرد برداری سازی کامپایلرها در معماری X۸۶ در حضور گسترش های AVX-۱۰۲

سال انتشار: 1404
نوع سند: مقاله کنفرانسی
زبان: فارسی
مشاهده: 25

فایل این مقاله در 5 صفحه با فرمت PDF قابل دریافت می باشد

استخراج به نرم افزارهای پژوهشی:

لینک ثابت به این مقاله:

شناسه ملی سند علمی:

INDEXCONF08_024

تاریخ نمایه سازی: 20 بهمن 1404

چکیده مقاله:

پردازنده های مدرن تقریبا همگی به واحدهای وکتوری (Vector Units) مجهز هستند که امکان انجام همزمان عملیات حسابی مشابه بر روی چندین مجموعه از عملوندها را فراهم می کنند. بهره برداری بهینه کامپایلرها از این واحدها به ویژه در برنامه های محاسباتی سنگین و نیازمند کارایی بالا مانند یادگیری ماشین، شبیه سازی های علمی و پردازش تصویر نقش تعیین کننده ای در بهبود عملکرد دارد. این مقاله به بررسی توانمندی کامپایلرهای GCC و Clang در فرآیند برداری سازی (Vectorization) کد بر روی معماری X۸۶ می پردازد و تمرکز اصلی آن بر گسترش های نوین AVX-۱۰۲ (Advanced Vector Extensions) است که قابلیت های پیشرفته تری را برای محاسبات برداری فراهم می کنند. به منظور ارزیابی، تجربی از مجموعه تست TSVC۲ استفاده شده است. این مجموعه شامل طیف متنوعی از حلقه هاست که به طور خاص برای سنجش قابلیت برداری سازی کامپایلرها طراحی شده اند. آزمایش ها بر روی سخت افزارهای سازگار با ۱۰۲-AVX انجام گرفت و نتایج نشان می دهد که هر دو کامپایلر GCC و Clang در این معماری جدید افزایش قابل توجهی در تعداد حلقه های برداری سازی شده از خود نشان می دهند، هرچند تفاوت هایی در کیفیت کد تولیدی و میزان بهره وری مشاهده می شود.

کلیدواژه ها:

میکرو معماری برداری سازی ، ۱۰۲-AVX ، کامپایلر ، حافظه نهان

نویسندگان

متین حاجی علی خمسه

دانشگاه شمسی پور