نام پژوهشگر: سیما جهانی

استفاده از یک رویکرد تکاملی جهت کاشی بندی و تولید کد موازی برای حلقه های دوسطحی
پایان نامه وزارت علوم، تحقیقات و فناوری - دانشگاه تبریز - دانشکده ریاضی 1393
  سیما جهانی   شهریار لطفی

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