پیش‌‌بینی دما در پردازنده‌‌های چندهسته‌‌ای با استفاده از رگرسیون بردار پشتیبان

نویسندگان

1 دانشجوی دکتری، دانشکدۀ مهندسی کامپیوتر- دانشگاه صنعتی شاهرود – شاهرود - ایران

2 دانشیار، دانشکدۀ مهندسی کامپیوتر - دانشگاه صنعتی شاهرود – شاهرود - ایران

چکیده

افزایش تعداد هسته‌‌های پردازنده به افزایش توان محاسباتی و به ‌موجب آن، افزایش دمای پردازنده منجر می‌‌شود. کنترل و مدیریت دما در این پردازنده‌ها اهمیت زیادی دارد. مدیریت دما به دو رویکرد واکنشی و فعال تقسیم می‌‌شود. برخلاف رویکرد واکنشی، در روش‌‌های فعال، دما پیش از رسیدن به حد آستانه با استفاده از مدل دمایی، پیش‌‌بینی و کنترل می‌‌شود. در این مقاله، برای پیش‌‌بینی دما، مدلی براساس SVR پیشنهاد شده است. برای آموزش مدل، با استفاده از حسگرهای دمایی و شمارنده‌‌های کارایی موجود در داخل پردازنده، مجموعه‌‌داده‌‌ای شامل تنوع زیادی از تغییرات دمایی جمع‌آوری شده است. برای افزایش دقت مدل، ویژگی‌‌های دیگری با نام‌‌های سابقه‌‌ای و کنترلی از ویژگی‌های موجود استخراج شده‌اند. برای کاهش سربار محاسباتی دو راهکار پیشنهاد شده است؛ یکی استفاده از دو مدل SVR و دیگری انتخاب ویژگی مناسب بر پایۀ اطلاعات متقابل. در انتها، مدل پیشنهادی برای پیش‏بینی دما برای فاصله‌‌های زمانی 2 تا 5 ثانیه، در شرایط کاری مختلف ارزیابی شده است. نتایج نشان می‌‌دهند با انتخاب 11 ویژگی دمای 2 ثانیه آینده با میانگین قدر مطلق خطای 5/0 درجۀ سانتی‌گراد پیش‌بینی می‌‌‌شود.

کلیدواژه‌ها


عنوان مقاله [English]

Thermal Prediction in Multicore processors using Support Vector Regression

نویسندگان [English]

  • Javad Mohebbi Najm Abad 1
  • Alii Soleimani eivari 2
1 Dept. of Computer Engineering, Shahrood University of Technology, Shahrood, Iran
2 Dept. of Computer Engineering, Shahrood University of Technology, Shahrood, Iran
چکیده [English]

Increasing the number of processor cores leads to increasing the density of the computing power processor and also raising the temperature. Temperature management is very important in these processors. Thermal management methods are introduced to reduce the CPU temperature. Reactive and proactive approaches are two sets of these schemes. Unlike the reactive techniques, proactive methods predict the temperature using thermal prediction model before reaching its threshold. In this paper, a hybrid model of several SVR models is proposed for predicting temperature. An appropriate dataset is created for training proposed model that includes a high diversity of processor temperature variations. Some features of dataset are measured using temperature sensors and system performance counters. Other features, with historical and control names are calculated with the proposed processes to increase the accuracy of thermal model. Two SVR models are used in the proposed thermal model to reduce its operational overhead. The proper features for each SVR model are selected by the feature selection algorithm based on mutual information. The proposed model is evaluated for temperature prediction for 2 to 5 time distances. The results show that with a selection of 11 features for thermal prediction model of the next 2 seconds, the mean absolute error is about 0.5 °C.

کلیدواژه‌ها [English]

  • Mutual Information
  • Feature Selection
  • Thermal Prediction
  • Support Vector Regression
  • Dynamic Thermal Management

1- مقدمه[1]

برای افزایش عملکرد پردازنده‌‌ها از روش‌‌های مختلفی برای افزایش توان محاسباتی آنها بهره برده‌‌اند. نخست، از افزایش فرکانس اعمالی به پردازنده، برای افزایش توان محاسباتی آن استفاده کردند. افزایش فرکانس پردازنده علاوه بر افزایش هزینۀ تولید، به افزایش گرمای تولیدی پردازنده‌‌ها منجر می‌‌شود. بدین منظور، پردازنده‌‌های چندهسته‌‌ای ارائه شدند که باوجود استفاده از فرکانس‌‌های پایین‌‌تر، سرعت انجام عملیات زیادی دارند. برای افزایش توان محاسباتی در این نوع پردازنده‌‌ها، افزایش هسته‌‌ها در ناحیۀ محدودی از سطح نیمه‌‌هادی صورت گرفته است. این موضوع به افزایش توان مصرفی و به موجب آن، افزایش دما در پردازنده منجر می‌شود. دمای زیاد باعث کاهش قابلیت اطمینان و کاهش طول عمر پردازنده می‌شود [1].

یکی از رویکردهای کنترل دمای پردازنده، مدیریت دمای پویا[1] (DTM) نام دارد. در این رویکرد، در زمان اجرای سیستم از روش‌‌های مناسب برای کاهش دما استفاده می‌‌شود [1]. از دسته‌‌بندی‌‌های DTM، تقسیم‌‌بندی آن به دو رویکرد واکنشی[2] و فعال[3] است. در رویکرد واکنشی، بعد از رسیدن دما به حد آستانۀ پردازنده، از روش‌‌هایی بهره می‌‌برند که سریع‌تر به کاهش دما منجر می‌‌شوند. این روش‌‌ها بیشتر باعث کاهش عملکرد سیستم می‌‌شوند. در مقایسه با روش مذکور، رویکردهای فعال DTM، پیش از رسیدن دمای پردازنده به مقدار نامطلوب، از آن جلوگیری می‌‌کنند. پیش‌‌بینی دقیق دمای پردازنده برای فاصله‌‌های زمانی مطلوب از بخش‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌های مهم رویکرد فعال DTM است. از طرفی، در هر دو رویکرد، پیش‌‌بینی دما پیش از استفاده از روش‌‌های کنترل دما، این امکان را ایجاد می‌‌کند تا روشی مناسب را برای افزایش عملکرد سیستم انتخاب کنند.

برخی از مدل‌های پیش‌‌بینی دما، از روش‌های ریاضی مانند روش‌های درون‌‌یابی بر مجموعه داده‌‌ای از رکوردهای فعالیت سیستم استفاده می‌‌کنند [5-2]. این رکوردها، دما و اطلاعات وضعیت پردازنده را شامل می‌شود که در زمان اجرای بارکاری، با نظارت حسگرهای دمایی و شمارنده‌‌های کارایی پردازنده، جمع‌‌آوری می‌‌شوند. همچنین از روش‌های هوش مصنوعی و روش‌های یادگیری ماشین نیز برای ایجاد این مدل‌ها استفاده شده است [10-6]. مدل رگرسیون بردار پشتیبان(SVR)[4] مدلی است که به دلیل سرعت و دقت زیاد، در سال‌‌های اخیر برای پیش‌‌بینی دما استفاده می‌شده است [8,6]. این دو ویژگی مدل SVR، از دلایل استفاده از آن در مدل دمایی پیشنهادی در این مقاله است.

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

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

  •  برای مدل پیش‌‌بینی دمای پیشنهادی، ویژگی‌هایی جدید با پردازش‌‌های پیشنهادی ایجاد شده است که تأثیر چشمگیری در دقت مدل دارد.
  • در مدل پیشنهادی از دو مدل SVR استفاده شده است که برای آموزش هریک از آنها مجموعه دادۀ مناسب ایجاد می‌‌شود. برای افزایش عملکرد مدل، برای هریک از مدل‌های SVR، ویژگی‌‌های ورودی مناسب انتخاب می‌‌‌شوند.
  •  دقت مدل پیشنهادی، برای فاصله‌‌های مختلف زمانی با توجه به ویژگی‌‌های انتخابی در سیستم چندهسته‌‌‌ای بررسی شده است.

در ادامه، این مقاله به‌صورت زیر سازمان‌دهی شده است: در بخش دوم مدل‌های پیش‌بینی دمای پردازنده بررسی شده‌اند. در بخش سوم، روش SVR و انتخاب ویژگی بر پایۀ اطلاعات متقابل معرفی شده‌‌اند. در بخش چهارم، مدل‌‌‌‌ پیش‌‌بینی دمای پیشنهادی معرفی می‌‌شود. ارزیابی مدل‌‌ پیشنهادی برای فاصله‌‌های مختلف زمانی در بخش پنجم ارائه می‌‌شود. درنهایت، در بخش ششم، نتیجه‌گیری کار بیان می‌‌شود.

2- ادبیات پژوهش

بسیاری از مدل‌های پیش‌‌بینی دمای معرفی‌شده، با استفاده از آمارهای جمع‌آوری‌شده از اجرای برنامه‌‌ها بر روی پردازنده، ایجاد شده و آموزش دیده‌اند [7,6]. بیشتر از این آمارها، در روش رگرسیون، برای تعیین ضریب‌‌های رابطۀ دمایی چندجمله‌ای استفاده می‌‌شوند. در یک تقسیم‌‌بندی، مدل‌‌های پیش‌‌بینی دما به دو دسته برون‌‌خط و برخط متمایز می‌شوند. مدل‌‌های برون‌‌خط با استفاده از مجموعه داده‌‌های جمع‌آوری‌شده، آموزش می‌‌بینند. سپس، در زمان اجرا، از مدل‌‌های فراهم‌شده برای پیش‌‌بینی برخط دما استفاده می‌‌‌‌‌‌‌‌‌شود [11,6]. این نوع الگوها سربار آموزش را در زمان اجرا ندارند؛ ولی درصورتی‌که با تغییرهای ناگهانی دما برخورد کنند، ممکن است دقت مناسب را در پیش‌‌بینی ارائه نکنند. در مقابل این رویکرد، استفاده از روش‌های برخط برای پیش‌بینی دمای پردازنده، با هدف افزایش دقت مدل، شایان توجه قرارگرفته است [3,2]. این نوع مدل‌‌های پیش‌‌بینی دما، در زمان اجرا روی پنجره‌‌ای از آخرین مشاهدات، آموزش مدل را به‌صورت برخط انجام می‌‌دهند؛ برای مثال، اگر از رابطه‌‌ای چندجمله‌ای برای مدل پیش‌‌بینی استفاده شود، ضرایب رابطه با استفاده از آخرین پنجرۀ مشاهدات سیستم تعیین می‌‌شوند. در این حالت، در صورت استفاده از پنجره‌‌‌ای با اندازۀ ، نمونۀ ام، با اجرای تابع  روی  نمونۀ قبلی، پیش‌بینی دما را انجام می‌‌‌دهد. برای تابع  که در آن  دمای نمونۀ ام است، از تابع‌‌های میانگین ساده، وزن‌‌دار و نمایی برای پیش‌بینی  استفاده می‌شود [6].

روش‌های تحلیل سری زمانی برای پیش‌‌بینی برخط دما استفاده شده‌‌اند. در این راستا، مدل‌‌های خود رگرسیون میانگین متحرک[5] (ARMA) که همبستگی را در سری‌‌های زمانی شناسایی می‌‌کنند، در تعدادی از کارها برای پیش‌بینی دما استفاده شده‌اند [3,2]. معادلۀ ARMA شامل دو بخش خود رگرسیون (AR) و میانگین متحرک (MA) است که در رابطۀ 1 نمایش داده شده است.

(1)

 

 مقدار دما در زمان  و ها ضریب‌‌ مقدارهای پیشین دما بوده است که در بخش AR معادله قرار گرفته‌اند.  خطاهای به‌دست‌آمده و  ها ضریب مقدار خطاها هستند. این بخش از معادله، بخش MA در معادله معرفی می‌‌شود. مقدار  نیز در زمان تعیین ضریب‌‌ها روی پنجرۀ نمونه‌‌های مشاهده‌شده مشخص می‌‌شود.  و  به‌ترتیب اندازۀ پنجرۀ AR و MA را مشخص می‌‌کنند.

با توجه به تأثیر چشمگیر تغییرات دمای همسایه‌‌های یک هسته بر دمای آن، در تعدادی از مدل‌‌های پیشنهادی، برای پیش‌‌بینی دمای یک هسته، به مقادیر دمای دیگر هسته‌ها نیز توجه شده است [12,11,4]. در نمونه‌‌ای از کارهای ارائه‌شده، از رابطۀ 2 برای پیش‌بینی دما استفاده شده است [4].

(2)

 

 دمای فعلی هسته،  گرادیان دمایی هسته و  میانگین گرادیان دمایی هسته‌های همسایه هستند. مقدار ضریب‌‌های ،  و  به‌صورت برون‌‌خط، با استفاده از رگرسیون خطی، بر مجموعه دادۀ جمع‌آوری‌شده از دمای هسته‌‌های پردازنده محاسبه می‌‌شوند. در این روش به این نکته توجه نشده است که در سیستم عملی، تأثیر هسته‌‌های مجاور یک هسته در دمای آن متفاوت است.

از مهم‌ترین مشخصه‌‌های یک مدل پیش‌‌بینی دما، توجه آن به رفتار بارکاری در حال اجرا است. در بیشتر مدل‌‌های ارائه‌شده، برای بررسی رفتار برنامه از ابزارهای سنجش فراهم‌شده برای پردازنده مانند شمارنده‌های کارایی و نشانگرهای توان مصرفی بهره برده‌‌‌اند [14,13,11,5]. در این راستا، برای تخمین دما از رابطۀ 3 استفاده شده است که ترکیبی از شمارنده‌های کارایی است [5].

(3)

 

 مقدار شمارندۀ کارایی ام و  تعداد چرخه‌های پردازنده است. ها ضریب‌‌های شمارنده‌‌های کارایی هستند. برای تعیین ضریب‌‌ها، ابتدا با اجرای برنامه‌‌های مختلف روی پردازنده، مجموعه دادۀ لازم ایجاد می‌‌شود؛ آنگاه با درون‌‌یابی خطی روی مجموعه داده، ضریب‌‌‌‌‌ها محاسبه می‌‌شوند. همچنین،  دمای اندازه‌‌گیری‌شدۀ پردازنده در حالت بیکاری است.

از دیگر کارهای انجام‌شده برای ایجاد مدل پیش‌‌بینی دما با توجه به رفتار برنامه‌‌ها، کار کچران و همکاران است [11]. آنها با استفاده از شمارنده‌‌های کارایی، فازهای رفتاری بارکاری را شناسایی کرده و برای هر فاز، از مدل جداگانه‌‌ بهره برده‌‌اند. نخست، مجموعه‌‌ داده‌‌ای شامل تعداد زیادی شمارندۀ کارایی حاصل از اجرای برنامه‌‌ها روی سیستم تهیه کرده‌اند؛ آنگاه با استفاده از تحلیل مؤلفه‌های اصلی[6] (PCA)، خروجی این شمارنده‌ها را به دو جزء اصلی کاهش داده‌‌اند. سپس، برای تعیین فازهای رفتاری مختلف از خوشه‌‌‌‌‌بندیKMeans  روی نمونه‌‌های جمع‌آوری‌شده استفاده کرده‌‌‌اند. درنهایت، برای هر فاز با رابطۀ 4، مدل مجزایی برای پیش‌‌بینی دما تنظیم کرده‌‌اند.

(4)

 

 دمای هستۀ ام در زمان  و  و  ضریب‌‌‌های مدل از دید هسته  هستند. مقدار  اثر بارکاری را بر دمای هسته  تعیین می‌‌کند. به سبب اینکه در این روش، برای هریک از حالت‌‌های ممکن سیستم، به ضریب‌‌های جداگانه‌‌ای برای مدل دما نیاز است، تعداد مدل‌های موردنیاز این رویکرد،افزایش می‌‌یابد.

برای ایجاد مدل‌‌های پیش‌‌بینی دما، روش‌های یادگیری ماشین نیز به کار برده‌ شده‌‌اند. از شبکۀ عصبی پرسپترون چندلایه‌‌ای[7] (MLP) برای پیش‌‌بینی دمای آینده بهره گرفته‌‌اند [10,9,7]. در این کارها، برای پیش‌‌بینی دمای آینده، از دمای فعلی و توان مصرفی بهره گرفته‌‌اند. در مدل‌‌های پیشنهادی، به‌صورت مستقیم به فرکانس پردازنده، سرعت فن و بارکاری اجرایی روی هریک از هسته‌‌های پردازنده توجه نمی‌‌شود.

یکی از کارایی‌ترین روش‌‌های پیشنهادی برای پیش‌‌بینی دما، استفاده از روش SVR است [8,6]. در یکی مهم‌ترین پژوهش‌هایی که به‌تازگی دربارۀ این موضوع ارائه شده است، از روش SVR و ابزار HotSpot [15] بهره برده‌‌‌اند [6]. در این راستا، آموزش SVR برای پیش‌‌بینی رابطۀ توان مصرفی با شمارنده‌‌های کارایی، با استفاده از داده‌های جمع‌آوری‌شده انجام می‌‌شود؛ آنگاه در زمان اجرا، توان پیش‌بینی‌شده با استفاده از SVR به ابزار پیکربندی‌شده HotSpot داده‌ می‌شود تا دمای هسته را پیش‌بینی کند. داشتن دانش معماری پردازنده از مهم‌ترین نیازهای پیکربندی ابزار HotSpot است. از پژوهش‌هایی دیگر انجام‌شده با روش SVR می‌‌‌توان به [8] اشاره کرد که در آن از 34 شمارنده کارایی برای پیش‌‌بینی دمای آینده استفاده شده است. باید توجه داشت ویژگی‌‌های مهمی از سیستم، ازجمله دمای فعلی هسته‌ها در آن لحاظ نشده است.

برای افزایش دقت مدل پیش‌‌بینی دما، انتخاب ویژگی‌‌های مناسب از مهم‌‌ترین نیازهای مدل است. در کارهای متعددی، پارامترهای مدل‌‌های پیش‌‌بینی دما، به‌صورت محدود و با توجه به بینش و مهارت‌های فردی محقق انتخاب شده‌اند. در برخی دیگر از مدل‌‌ها نیز، از تعداد زیادی پارامتر، بدون توجه به وابستگی آنها با دمای آینده و البته وابستگی بین خود پارامترها استفاده شده است. تعداد ویژگی‌‌های زیاد باعث کاهش دقت مدل و همچنین افزایش سربار آموزش و اجرای آن می‌شود [17,16]. انتخاب مجموعۀ ویژگی‌‌های مؤثر با حداقل تعداد لازم، تأثیر چشمگیری در افزایش دقت مدل‌‌های پیش‌‌بینی دما دارند.

3- مبانی نظریه

در این بخش، مدل SVR و روش کاهش ویژگی بر پایۀ اطلاعات متقابل معرفی می‌‌شوند.

3-1- رگرسیون بردار پشتیبان (SVR)

رگرسیون بردار پشتیبان بر پایۀ مدل طبقه‌‌بندی ماشین‌‌‌های بردار پشتیبان ارائه شده است [18]. SVR برای حل مسائل رگرسیون غیرخطی استفاده می‌‌شود [20-18]. برای توضیح مختصر SVR، فرموله‌‌سازی آن ‏انجام می‌‌شود. در این راستا، مجموعه دادۀ  که با رابطۀ 5 نمایش داده شده، شامل بردارهای ورودی  و خروجی متناظر  است.

(5)

 

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

(6)

 

برای حل مسئلۀ رگرسیون غیرخطی با SVR، نخست، ورودی‌‌ها به‌صورت غیرخطی به فضای ویژگی  با ابعاد زیاد نگاشت می‌‌شود که به‌صورت خطی با خروجی وابستگی دارند؛ بدین منظور از رابطه 7 استفاده می‌‌شود [18].

(7)

 

 بردار وزن،  مقدار بایاس و  تابعی است که ورودی‌‌‌ها را از فضای R به فضای  تصویر می‌‌کند.

در SVR هدف پیداکردن تابع  به‌گونه‌ای است که به‌اندازۀ  از مقادیر واقعی انحراف داشته باشد و با‌وجوداین، خطی نیز باشد. برای داده‏های خارج از باند از یک تابع جریمه با رابطۀ 8 تعریف می‏شود [18].

(8)

 

از طرفی ریسک عملیاتی تابع  با رابطۀ 9 محاسبه می‏شود.

(9)

 

کاهش ریسک عملیاتی برای همه داده‏ها با توجه به بهینه‏سازی تابع رگرسیون با رابطۀ 10 انجام می‏شود [18].

(10)

 

 ضریب ثابت تابع ریسک است. برای داده‏هایی که مقدار  آنها بیشتر از  باشد، مقدار  و یا  که مقدار تخطی را نشان می‏دهد، با رابطه‏های 11 و 12 محاسبه می‏شود.‏

(11)

 

(12)

 

از طرفی رابطۀ 13 بین تابع جریمه و مقدارهای تخطی برقرار است.

(13)

 

درنهایت، تابع هدف کلی برای تخمین تابع  با رابطۀ 14 محاسبه می‏شود [18].

(14)

 

S.t.

 

 

 

برای ایجاد شکل دوگان رابطۀ 14، برای هریک از قیدها از ضریب لاگرانژ، استفاده و سپس ساده‏سازی انجام می‏شود. درصورتی‌که  و ، به‌ترتیب ضریب‏ قیدهای اول و دوم رابطۀ 14 باشند، بعد از ساده‏سازی، رابطۀ 15 حاصل می‏شود [18].

(15)

 

برای مسائل غیرخطی ضرب داخلی دو تابع  و  با تابع کرنل گوسی ارائه‌شده در رابطۀ 16 جایگزین می‏شود [18].

(16)

 

درنهایت، تابع  با رابطۀ 17 محاسبه می‏شود.

(17)

 

در این رابطه،  با رابطۀ 18 محاسبه می‏شود.  بردار پشتیبان است.

(18)

 

3-2- انتخاب ویژگی بر پایۀ اطلاعات متقابل

انتخاب مجموعۀ ویژگی‌‌ها با هدف بیشینه‌سازی معیار وابستگی آماری آنها با خروجی مدل و کمینه‌کردن اطلاعات متقابل[8] (MI) بین آنها انجام می‌‌شود [22,21,17,16]. در این راستا رابطه‌‌های مربوطه معرفی می‌‌شود. مقدار MI بین دو ویژگی  و  با رابطۀ 19 محاسبه می‌‌شود [16].

(19)

 

،  و  به‌ترتیب توابع چگالی احتمال متغیرهای ،  و وقوع هم‌زمان آنها هستند. با استفاده از رابطۀ 19، وابستگی همۀ زیرمجموعه‌‌های ممکن از مجموعۀ ویژگی‌‌های اولیه با خروجی مدل محاسبه می‌‌شود. با استفاده از رابطۀ 20، زیرمجموعه با بیشترین مقدار وابستگی انتخاب می‌شود [16].

(20)

 

 زیرمجموعه‌‌‌ای از ویژگی‌‌های اولیه و  مقدار وابستگی  را با خروجی مدل  نشان می‌‌دهد.

درصورتی‌که مجموعۀ انتخابی شامل ویژگی‌‌هایی باشد که همبستگی زیادی با هم داشته باشند، این امکان وجود دارد که ویژگی‌‌های انتخابی، بهترین انتخاب برای شناسایی سیستم نباشند. در این راستا، از شرط حداقل افزونگی برای یافتن زیرمجموعه‌‌ای از ویژگی‌‌ها با کمترین همبستگی با یکدیگر استفاده می‌‌شود. حداقل افزونگی با رابطۀ 21 محاسبه می‌‌‌شود [16].

(21)

 

 میانگین MI بین ویژگی‌‌‌ها در زیرمجموعۀ  است.

با ترکیب رابطه‌‌های 20 و 21، مفهومی با عنوان کمینۀ افزونگی بیشینۀ وابستگی[9] (mRMR) معرفی شده است. اساس mRMR با رابطۀ 22 تعریف می‌‌شود [16].

(22)

 

 عملگری برای ترکیب روابط بیشینۀ وابستگی و کمینۀ افزونگی است.

با افزایش تعداد اعضای مجموعۀ ویژگی‌‌های مدل، تعداد زیرمجموعه‌‌ها به‌صورت نمایی افزایش می‌‌یابد. در این حالت، محاسبه‌‌‌های لازم برای یافتن حداکثر مقدار ، غیر‌‌عملی خواهد بود؛ به همین دلیل، روش‌هایی برای تخمین mRMR معرفی‌شده‌اند که پیچیدگی محاسباتی بسیار کمتری نسبت به آن دارند. از متداول‌‌ترین روش‌‌های تخمین mRMR، دو روش تفاضل اطلاعات متقابل[10] (MID) و خارج‌‌قسمت اطلاعات متقابل[11] (MIQ) است [17]. MID و MIQ به‌ترتیب با رابطه‌‌های 23 و 24 محاسبه می‌‌‌شوند.

(23)

 

(24)

 

4- مدل دمایی پیشنهادی

در این بخش روال توسعۀ مدل پیش‌‌بینی دمای پیشنهادی معرفی می‌‌شود. برای توسعۀ مدل، سه مرحلۀ آماده‌‌سازی مجموعۀ داده، پالایش مجموعۀ ویژگی‌‌ها و آموزش و آزمایش SVR انجام می‌‌شود. این مراحل به‌ترتیب در بخش‌‌‌های بعدی معرفی می‌‌شوند.

4-1- ایجاد مجموعه‌‌‌‌‌داده

در یک پردازندۀ چندهسته‌ای، علاوه بر وجود منابع مشترک بین هسته‌‌ها، هریک از هسته‌‌ها اجزای اختصاصی نیز دارند. در بسیاری از پردازنده‌‌ها از فرکانس ساعت یکسان برای همۀ هسته‌‌ها استفاده می‌‌شود. برای خنک‌کردن مکانیکی، از فن خنک‌‌کننده به همراه حرارت گیر[12] بهره می‌‌برند. پردازنده‌‌های کنونی از تعدادی شمارندۀ کارایی برای شمارش رخدادهای مربوط به سیستم عامل، برنامه‌‌ها و سرویس‌‌های در حال اجرا روی پردازنده استفاده می‌‌کنند. بیشتر پردازنده‌‌ها مجموعه‌‌ای اختصاصی از شمارنده‌‌های کارایی برای هر هسته دارند. همچنین، برای فراهم‌کردن اطلاعات تکمیلی، از حسگرهایی مانند حسگر دما برای هر هستۀ پردازنده بهره می‌‌برند.

مدل پیش‌‌بینی دمای پیشنهادی روی سیستم چهار هسته‌ای Intel’s Core i7-950 بررسی می‌‌شود. با استفاده از ابزار lm-sensor، اطلاعات دمایی از حسگرها دریافت می‌‌شود. تنظیم پویای ولتاژ و فرکانس، با استفاده از ابزار cpufreq انجام می‌‌شود. همچنین، انجام تغییرات سرعت فن با استفاده از اسکریپت هسته‌‌ی fancontrol است. شمارنده‌‌‌های کارایی با استفاده از زیرسیستم perf موجود در سیستم عامل لینوکس خوانده می‌‌شوند. لیست شمارنده‌‌های کارایی استفاده‌شده در مدل پیشنهادی در جدول (1) نمایش داده شده است. همچنین، از برنامه‌‌های محکSPEC CPU2006، که برنامه‌‌های تهیه‌شده برای ایجاد تغییرات دمایی هستند، به‌صورت موازی روی هسته‌‌های پردازنده استفاده می‌‌‌شود.

جدول (1): لیست شمارنده‌‌‌های کارایی

CONTEXT-SWITCHES

CPU-MIGRATIONS

PERF_COUNT_SW_PAGE_FAULTS

CYCLES

PERF_COUNT_STALLED_CYCLES_FRONTEND

PERF_COUNT_STALLED_CYCLES_BACKEND

INSTRUCTIONS

BRANCHES

BRANCH-MISSES

CACHE-REFERENCES

IO_TRANSACTIONS

L1D_ALL_REF

CACHE-MISSES

 

به سبب اینکه مدل‌‌ پیش‌‌بینی دمای پیشنهادی مبتنی بر مشاهدۀ عملکرد سیستم است، برای افزایش دقت مدل‌‌، باید تنوع بیشتری از حالت‌‌های سیستم را ایجاد کرد. در این راستا، برای ایجاد حالت‌‌های متنوع در سیستم، از ترکیب‌‌های مختلف سرعت فن، فرکانس پردازنده و بارکاری، آزمایشی انجام شده است. در شکل (1) الگوریتم استفاده‌شده در این آزمایش ارائه ‏می‏شود.

 

 

};

 

 

 

 

 

 

 

 

 

 

;

;

 

 

    ;

 

 

 

شکل (1): شبه‌‌‌کد ثبت‌کردن حالت سیستم

 

در الگوریتم ارائه شده، در ابتدا سطوح مختلف سرعت فن و فرکانس پردازنده انتخاب می‌‌شوند. در آزمایش انجام‌شده، با توجه به محدودۀ سرعت فن، هفت گام شامل مقادیر {50، 84، 110، 140، 184، 224، 255} مدولاسیون پهنای پالس[13] (PWM) برای سرعت فن انتخاب می‌‌شوند. برای تغییرات فرکانس پردازنده نیز از هفت گام شامل مقادیر {1596000، 1862000، 2128000، 2394000، 2660000، 2926000، 3060000} گیگاهرتز بهره برده شده است. سپس، یک نخ[14] فراخوانی‌شده که به‌صورت هم‌‌زمان با الگوریتم اصلی اجرا می‌‌شود، از آن، برای خواندن و ثبت حالت سیستم استفاده می‌‌شود. حالت سیستم شامل دمای هسته‌‌های پردازنده، فرکانس پردازنده، سرعت فن و شمارنده‌‌های کارایی هسته مد نظر برای پیش‌‌بینی دما است.

در الگوریتم، از حلقه‌‌ای استفاده شده است که برابر با تعداد هسته‌‌های پردازنده اجرا می‌‌شود. در مرحلۀ نخست، برنامۀ محک به‌صورت تصادفی، انتخاب و روی هسته مدنظر اجرا می‌‌شود. در مرحلۀ دوم، سوم و چهارم به‌ترتیب دو، سه و چهار برنامه به‌صورت تصادفی انتخاب شده است که یکی از برنامه‌‌ها به هسته مدنظر و باقی برنامه‌‌ها به‌صورت تصادفی به دیگر هسته‌‌های پردازنده تخصیص داده می‌‌شوند. در هنگام اجرای این الگوریتم، در فواصل زمانی یک‌ثانیه‌ای حالت سیستم ثبت می‏شود. در هر مرحله، مقادیر سرعت فن، با توجه به لیست آنها و به‌صورت صعودی افزایش می‌‌یابند. برای تغییرات فرکانس، ابتدا لیست مقادیر فرکانس با استفاده از تابع  به‌هم‌ریخته می‌‌شود. این امر باعث می‌شود حالات متنوعی در میزان تغییرات فرکانس در پردازنده ایجاد شود. بعد از هر تغییر فرکانس پردازنده، به مدت 10 ثانیه، تغییری در میزان فرکانس و سرعت فن ایجاد نمی‌شود.

4-2- آماده‌‌‌سازی مجموعه‌‌داده

تغییر دما به رویدادی وابسته است که موجب می‌شود به‌‌تدریج و با فاصله‌ای زمانی صورت گیرد. این امر سبب شده است ترتیب نمونه‌‌ها در مجموعه‌دادۀ جمع‌آوری‌شده، مدل معنی‌‌دار مشخصی داشته باشند. برای بهبود عملکرد مدل پیش‌‌بینی دما، می‌‌توان بر وابستگی بین نمونه‌‌های متوالی تکیه کرد. در این راستا تلاش شده است ویژگی‌‌های جدیدی از مقادیر آماری اندازه‌‌گیری‌شده ایجاد شود تا شامل تاریخچۀ حالت‌‌های سیستم برای نمونه باشد.

نخستین بخش از پارامترهای پیشنهادی، پارامترهای سابقه‌‌ای برای هر نمونه است. این پارامترها، سابقۀ تغییرهای سخت‌‌افزاری و نرم‌‌افزاری را برای هر نمونه نگهداری می‌‌کند. ازجمله پارامترهای سابقه‌‌ای، مقادیر دمای هسته‌‌ها و شمارنده‌‌های کارایی چند نمونۀ قبلی هر نمونه است. همچنین، با استفاده از گرادیان، تعدادی دیگر از پارامترهای سابقه‌‌ای ایجاد شده است. گرادیان پارامتر  با فاصلۀ  با رابطۀ 25 محاسبه می‌‌شود.

(25)

 

 مقدار پارامتر در نمونۀ  و  مقدار همان پارامتر در  نمونۀ قبلی است. برای هر نمونه تعدادی از گرادیان‌‌های اول و تعدادی از گرادیان‌‌های دوم تهیه شده است. گرادیان اول، میانگین سرعت تغییرات در طی  نمونۀ متوالی است؛ درحالی‌که گرادیان دوم، میانگین شتاب تغییرات در همان بازه است.

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

(26)

 

برای پارامتر کنترلی ،  مقدار پارامتر در نمونۀ  و  مقدار همان پارامتر در نمونۀ بعدی است. در این مقاله میزان تغییر فرکانس پردازنده و سرعت فن به‌عنوان پارامترهای کنترلی به مدل پیش‌‌بینی دما داده می‌‌شود.

4-3- توسعه‌ و ارزیابی مدل

مدل پیش‌‌بینی دمای پیشنهادی، برای هسته در سیستم چندهسته‌ای ارزیابی می‌‌شود. هستۀ مدنظر با نام هستۀ هدف معرفی می‌‌شود. ورودی‌‌های مدل شامل مقادیر پارامترهای سابقه‌‌ای دمای هسته، دمای هسته‌‌های مجاور، فرکانس پردازنده، سرعت فن خنک‌کننده و مقدار شمارنده‌‌های کارایی و گرادیان آنها در فاصله‌‌های زمانی {1,2,3} ثانیه است. همچنین، از پارامترهای کنترلی تغییر فرکانس پردازنده و سرعت فن نیز به‌عنوان ورودی‌‌های مدل، بهره گرفته ‏شده است. خروجی مدل، پیش‌بینی دما را با فاصلۀ زمانی  انجام می‌‌‌دهد.

در این مقاله، برای بررسی دقت مدل پیشنهادی، از معیارهایی مبتنی بر ارزیابی خطا، همچون میانگین قدر مطلق خطا[15] (MAE)، انحراف معیار قدر مطلق خطا[16] (SDAE) و احتمال خطای بیش از 3 درجه سانتی‌‌گراد[17] (POE) استفاده می‏شود که به‌ترتیب با رابطه‌های 27، 28 و 29 محاسبه می‌شود.

(27)

 

(28)

 

(29)

 

 تعداد نمونه‌‌ها،  دمای هدف و  دمای پیش‌بینی‌شده برای نمونۀ ام است.  مجموعۀ مورد آزمون و  مجموعۀ پیش‌بینی‌های مدل است.

درخور ذکر است اگر دمای پیش‌‌بینی شدۀ پردازنده، بیش از مقدار درست آن باشد، روش‌‌های مدیریت دمای استفاده‌شده به کاهش بیش از نیاز دمای سیستم منجر می‌‌شوند. بیشتر روش‌‌های کاهش دما، به کاهش عملکرد سیستم منجر می‌‌شوند. از طرفی، در صورتی که دمای پیش‌‌بینی شده کمتر از مقداری باشد که در سیستم ایجاد می‌‌شود، احتمال افزایش دما از دمای حدآستانه پردازنده وجود دارد. هرچه دقت مدل کمتر باشد، احتمال ایجاد نقاط داغ در پردازنده و خرابی آن افزایش می‌‌یابد. در این راستا، برای محاسبۀ دقت مدل دمایی، از پارامترهای MAE و SDAE استفاده می‌‌‌شود. همچنین، از پارامتر POE برای محاسبۀ احتمال خطاهای بالای 3 درجه سانتی‌‌گراد بهره گرفته شده است. از این پارامتر برای محاسبۀ میزان خطاهای بالای مدل پیش‌‌بینی دما استفاده می‌‌شود. این خطاها باعث آسیب جدی برای پردازنده می‌شوند.

برای توسعۀ مدل، ابتدا به مقایسۀ دو حالت ‌‌پرداخته شده است. در یک حالت، تنها از پارامترهای نشان‌‌دهندۀ حالت فعلی سیستم برای پیش‌‌بینی دما استفاده می‌‌شود. در حالت دوم، علاوه بر استفاده از پارامترهای حالت فعلی سیستم، از پارامترهای پیشنهادی در این مقاله استفاده می‌‌‌‌‌شود که شامل پارامترهای سابقه‏ای و کنترلی هستند. مجموع پارامترها در این حالت 128 عدد است. نتیجۀ مقایسه‏ در جدول (2) نمایش داده شده است. استفاده از پارامترهای پیشنهادی، سبب کاهش مقدار MAE مدل پیش‌‌بینی دما از 2/2 به 97/0 درجه سانتی‌‌گراد می‌‌شود. با این وجود، زمان اجرای مدل برای پیش‌‌بینی نمونه حدود 10 برابر افزایش می‌یابد.

اما به سبب اینکه ممکن است نیازی به استفاده از همۀ این 128 پارامتر نباشد، تأثیر پارامترهای مختلف بر دقت مدل دمایی بررسی می‌‌شود. در این راستا با الگوریتم‏های MID و MIQ، ویژگی‌‌های موجود در مجموعۀ پارامترهای ورودی، در بردار  براساس میزان وابستگی داده‌ای با مقدار هدف مدل‌‌‌ها اولویت‌بندی می‏شود. بر اساس این، در  گام، زیرمجموعه‌هایی شامل  عنصر ابتدایی از  را با مدل SVR، ارزیابی و میزان خطای پیش‌بینی برای هریک اندازه‌گیری می‌‌شود. نتیجه در شکل (2) نمایش داده شده است. با توجه به شکل، به استفاده از 128 پارامتر برای مدل پیش‌‌بینی دما نیاز نیست و با انتخاب حدود 72 ویژگی با MID و MIQ حداقل خطای مدل به دست می‌آید. از آنجا به بعد با افزایش تعداد ویژگی‌‌ها، خطا در مدل افزایش می‌‌یابد. از طرفی کاهش تعداد پارامترهای ورودی، باعث کاهش چشمگیر زمان اجرای مدل می‌‌شود. درخور ذکر است در آزمایش‏های انجام‌شده، زمان اجرای مدل SVR برای پیش‌‌بینی دما برای نمونه، در حالتی که از 72 پارامتر بهره می‏برد، نسبت به 128 پارامتر بیش از 5 برابر کاهش می‌‌‌یابد.

 

شکل (2): اثر افزایش تعداد ویژگی‌‌های انتخابی با استفاده از روش‏های MID و MIQ در دقت مدل پیش‌‌بینی دما

در شکل (2)، ویژگی که باعث کاهش محسوس مقدار خطا می‏شود، میزان تغییر فرکانس است. به سبب اینکه در آزمایش‏ها بازۀ زمانی تغییر فرکانس 10 ثانیه است، تعداد نمونه‏های کمتری شامل اثر تغییر فرکانس بر دما هستند. بر اساس این، تغییر فرکانس با اینکه اهمیت زیادی در پیش‏بینی دمای تعداد زیادی از نمونه‏ها دارد، همبستگی بیشتری با مقدار دما ندارد. درخور ذکر است تغییر فرکانس به‌سرعت باعث تغییر رفتار دمایی پردازنده می‌شود و در صورت توجه‌نکردن به آن، پیش‏بینی دما با خطای زیادی مواجه می‏شود. با بررسی مجموعه‌دادۀ جمع‌آوری‌شده، به‌جز در موارد مربوط به تغییر فرکانس، تغییر رفتار دمایی به‌سرعت اتفاق نمی‌‌افتد. ‏در این راستا، داده‏های فراهم‌شده برای پیش‏بینی دمای 2 ثانیه آینده به دو مجموعه‌داده تقسیم شده است. بخش نخست شامل نمونه‏هایی است که در آن میزان تغییر فرکانس و به‌صورت کلی، گرادیان آینده صفر باشد و بخش دوم شامل نمونه‏های غیرصفر است. برای داده‏های بخش نخست، حداکثر تغییرات دما 7 درجه سانتی‌گراد است؛ درحالی‌که در بخش دوم 21 درجه سانتی‌گراد است. از طرفی واریانس تغییرات دما برای بخش اول و دوم به‌ترتیب حدود 1.5 و 44 درجۀ سانتی‌گراد است. این تفاوت رفتاری دما برای نمونه‏های این دو بخش، دلیلی برای ارائه مدل ترکیبی برای پیش‌‌بینی دما شد. مدل پیش‌‌‌بینی دمای پیشنهادی از دو مدل SVR برای این دو حالت تشکیل شده است. با توجه به شکل (3)، برای نمونه‏هایی که در آنها تغییری در فرکانس و سرعت فن نسبت به نقطۀ پیش‏بینی هدف ایجاد می‌‌شود از مدل SVR دوم استفاده می‏شود. از طرفی، برای دیگر نمونه‏ها، مدل SVR اول استفاده می‌‌شود.

برای بررسی رویکرد ارائه‌شده، نخست مجموعه‌دادۀ جمع‌آوری‌شده، با توجه به نمونه‏ها به دو بخش تقسیم می‏شوند. یک بخش، مناسب برای آموزش مدل SVR اول و بخش دیگر، مناسب برای آموزش مدل SVR دوم است. برای هریک از این مدل‏ها، با استفاده از مجموعه‌دادۀ مربوطه، انتخاب پارامترهای مناسب با استفاده از الگوریتم MID انجام می‌‌شود. در شکل (4)، اثر افزایش تعداد ویژگی‌‌ها در مقدار MAE مدل پیش‌بینی دما با فاصلۀ دو ثانیه، برای هر دو مدل SVR نمایش داده شده است. در هر دو مدل SVR، ابتدا با افزایش تعداد ویژگی‌‌ها مقدار خطای مدل‌‌ها کاهش می‌یابد و از نقطه‏ای به بعد افزایش تعداد ویژگی‏ها به افزایش خطا منجر می‏شود. براساس نتیجۀ به‌دست‌آمده، برای رسیدن به بهترین دقت مدل‌‌ها، باید تعدادی از ویژگی‌‌های پیشنهادی را به‌عنوان ورودی انتخاب کرد. با توجه به شکل (4)، با انتخاب 11 ویژگی برای هر دو مدل می‌‌توان به‌دقت مناسب مدل پیش‌‌بینی دمای 2 ثانیه آینده دست ‌‌یافت. در این حالت، میانگین خطای MAE مدل، 0.56 درجۀ سانتی‌گراد است. در جدول (2) مقایسۀ استفاده از پارامترهای مختلف ورودی برای مدل پیش‌‌بینی دمای 2 ثانیه آینده ارائه شده است. مدل پیشنهادی علاوه بر کاهش خطای درخور توجه مدل، زمان اجرای کمتری نسبت به دیگر رویکردها دارد.

 

شکل (3): مدل پیش‌‌بینی دمای پیشنهادی

 

 

 

جدول (2):پیش‌‌‌بینی دمای 2 ثانیه آینده با پارامترهای مختلف

نوع ورودی‌‌‌های مدل پیش‌‌بینی دما

تعداد ورودی‌‌ها

   

(%)

زمان اجرای نمونه ( )

حالت فعلی سیستم

19

2/2

9/2

24/8

5-10×6568/8

حالت فعلی سیستم + پارامترهای سابقه‌‌ای و کنترلی

128

97/0

37/1

4

4-10×7852/7

پارامترهای انتخابی برای مدل پیشنهادی

11

56/0

67/0

54/0

5-10×6027/2

 

 

 

شکل (4): اثر تعداد ویژگی‌‌‌ها در دقت مدل‌‌های SVR استفاده‌شده در مدل پیش‌‌بینی دمای 2 ثانیه آینده

 

شکل (5): مقایسۀ دمای پیش‌‌بینی و مشاهده‌‌شده 2 ثانیه آینده برای تعدادی از نمونه‌‌‌های آزمایشی

5- ارزیابی مدل پیشنهادی

مدل‌‌ پیشنهادی برای پیش‌‌بینی دمای هسته، برای فاصله‌‌های زمانی 2 تا 5 ثانیه آینده، ارزیابی شده است. برای هر فاصلۀ زمانی، مدل پیش‌‌بینی مجزا فراهم می‌‌شود. برای هر مدل SVR استفاده‌شده در این مدل‌‌های پیش‌‌بینی، مجموعه دادۀ مناسب برای آموزش فراهم‌شده و ویژگی‌‌های مناسب انتخاب می‌‌شوند. ویژگی‌‌های انتخابی برای هریک از مدل‌‌های SVR مربوط به فاصله‌‌های مختلف زمانی تفاوت‌‌ زیادی با یکدیگر دارند. در جدول (3) برای هریک از مدل‌‌های پیش‏بینی، تعداد ویژگی‌‌های مناسب به همراه مقدار MAE، SDAE و POE مربوطه نمایش داده شده است.

بعد از انتخاب ویژگی‌‌های مناسب و به‌عبارت‌دیگر، ورودی‌‌های مناسب، ارزیابی مدل‌‌های پیش‌‌بینی دما انجام شده است. باید توجه داشت داده‌‌های آزمایش به‌صورت به‌هم‌ریخته به مدل‌‌ها داده می‌‌شوند تا سنجش دقیق‌‌تری از کارایی مدل‌ها انجام شود. در شکل (5) برای نمایش دقت مدل‌‌ پیش‌‌بینی دمای 2 ثانیه آینده، مقدار پیش‌بینی‌شده و مشاهده‌‌شدۀ بخشی از داده‌‌ها ارائه شده است. نتایج حاکی از دقت زیاد مدل پیشنهادی است.


جدول (3): بهترین نتیجه به‌دست‌‌آمده از تعداد ویژگی‌‌های انتخابی برای مدل‌‌های دمایی برای فاصله‌‌های زمانی مختلف

مدل

فاصلۀ زمانی

تعداد ویژگی‌‌‌ها

MAE (°C)

SDAE (°C)

POE (%)

SVR model 1

2

11

4۷/0

6/0

1/0

SVR model 1

3

11

53/0

65/0

11/0

SVR model 1

4

10

57/0

67/0

13/0

SVR model 1

5

10

62/0

71/0

16/0

SVR model 2

2

11

2/1

2/1

11/3

SVR model 2

3

10

29/1

28/1

1/4

SVR model 2

4

12

37/1

48/1

1/5

SVR model 2

5

11

43/1

38/1

5/5

 

 

با توجه به نتایج نمایش داده‌شده در جدول (3)، با انتخاب حدود 11 ویژگی برای هریک از مدل‌‌های SVR موجود در مدل‌‌های پیش‌‌بینی دما، می‌‌توان به‌دقت بیشتری در پیش‌‌بینی دما برای فاصله‌‌های مختلف زمانی دست یافت. نتایج کلی استفاده از مدل‌‌های SVR در قالب مدل پیش‌‌بینی دما در جدول (4) نمایش داده شده است. از آنجایی که میزان تغییر فرکانس در پردازنده، کمتر از زمان‌‌هایی است که تغییر فرکانس صورت نمی‌‌گیرد، میانگین خطای کلی مدل نزدیک به خطای مدل اول SVR است. درخور ذکر است خطای کمتر از 0.8 درجۀ سانتی‌گراد در پیش‌‌بینی دما برای فاصله‌‌های زمانی 2 تا 5 ثانیه، نشان از دقت زیاد مدل پیشنهادی دارد. گفتنی است برای پیش‌‌بینی دمای 2 ثانیه آینده، در 96 درصد مواقع، حداکثر خطای یک درجۀ سانتی‌‌گراد دیده می‌‌شود. همچنین برای پیش‌‌بینی 3، 4 و 5 ثانیۀ آینده، به‌ترتیب 94، 88 و 84 درصد داده‌‌ها دارای حداکثر خطای یک درجۀ سانتی‌گراد هستند.

در ادامه ارزیابی، مدل پیشنهادی با مدل پیش‌‌بینی دمای ارائه‌شدۀ کچران مقایسه می‌‌شود. مدل ایشان در بخش 2 معرفی شده است [11]. همچنین در جدول (4)، نتایج حاصل از پیش‌‌بینی دما با استفاده از رویکرد ارائه‌شدۀ کچران برای فاصله‌‌های مختلف زمانی نشان داده شده‌اند. مقایسۀ نتایج این دو رویکرد، نشان‌‌دهندۀ دقت بسیار بهتر رویکرد پیشنهادی نسبت به کچران است. از طرفی، زمان پیش‌‌بینی دمای 2 ثانیۀ آینده برای هر نمونه در روش کچران 5-10×7151/6 است. زمان اجرای مدل کچران، 2.5 برابر بیشتر از مدل پیشنهادی روی مجموعه داده یکسان است.

در ادامه، مقایسه‌‌ای بین مدل پیشنهادی با مدل دمایی استاکمن و همکاران [8] انجام شده است. استاکمن از مدل SVR برای پیش‌‌بینی دما استفاده کرده است. ورودی‌‌های مدل ایشان، تنها شامل شمارنده‌‌های کارایی است. نتیجۀ استفاده از مدل ایشان روی مجموعه داده یکسان با مدل پیشنهادی نیز در جدول (4) نمایش داده شده است. مدل ارائه شده از استاکمن، به دلیل انتخاب‌نشدن ویژگی‌‌های مناسب برای مدل دمایی، خطای زیادی دارد.

 

 

جدول (4): معیارهای ارزیابی خطای مدل‏های پیش‌‌بینی دمای پیشنهادی و کچران برای فاصله‏های مختلف زمانی

مدل

فاصله زمانی (S)

MAE (°C)

SDAE (°C)

POE (%)

پیشنهادی

2

56/0

67/0

54/0

کچران

2

4/1

2/2

8

استاکمن

2

7/3

1/3

40

پیشنهادی

3

64/0

72/0

9/0

کچران

3

7/1

5/2

11

استاکمن

3

9/3

21/3

41

پیشنهادی

4

7/0

77/0

06/1

کچران

4

1/2

8/2

15

استاکمن

4

01/4

34/3

41

پیشنهادی

5

76/0

82/0

2/1

کچران

5

6/2

3

20

استاکمن

5

3/4

4/3

44

 

 

از دیگر آزمایش‌‌‌های انجام‌شده، مقایسۀ مدل‌‌های SVR، MLP، سیستم استنتاج عصبی-فازی وفقی[xviii] (ANFIS) و الگوریتم حداقل میانگین مربع[xix] (LMS) است. از LMS برای یافتن ضریب‌‌های فیلتر خطی مناسب برای مدل پیش‌‌بینی دما استفاده می‌‌شود. به بیانی دیگر، LMS، نماینده‌‌ای از مدل‌‌های خطی مناسب برای پیش‌‌بینی دما، در این مقایسه شرکت دارد. نتیجۀ استفاده از مدل‌‌های مذکور با ویژگی‌‌های ورودی یکسان برای پیش‌‌بینی دمای 2 ثانیه آینده در شکل (6) ارائه شده است. در این مقایسه نیز، SVR نتیجۀ بهتری نسبت به دیگر مدل‌‌ها ارائه می‌‌دهد.

 

شکل (6): مقایسۀدقت استفاده از مدل‌‌‌های SVR، MLP، ANFIS و LMS در مدل دمایی پیشنهادی برای پیش‌‌بینی دمای 2 ثانیۀ آینده

6- نتیجه‌‌‌گیری

در این مقاله، مدل دمایی شامل دو مدل SVR برای پیش‌‌بینی دما ارائه شده است. برای هر مدل SVR، ویژگی‌‌ها و مجموعه‌دادۀ مناسب برای آموزش و آزمایش آن ایجاد شده است. تعدادی از ویژگی‌‌های انتخابی، حالت فعلی سیستم را نشان می‌دهد و شامل دمای هسته‌‌‌‌ها، فرکانس پردازنده، سرعت فن و شمارنده‌‌های کارایی هستند. علاوه بر این، برای هر نمونه در مجموعه‌داده از چند مقدار پیشین این ویژگی‌‌ها و گرادیان‌‌های اول و دوم آنها تا 3 ثانیه قبل نیز به‌عنوان دیگر ویژگی‌‌های مدل پیش‌‌بینی دما استفاده می‌‌شود. از طرفی، مقدار تغییر فرکانس پردازنده و سرعت فن با عنوان‌‌ گرادیان‌‌های آینده به مدل داده می‌‌شوند. به دلیل تعداد زیاد این ویژگی‌‌ها، برای افزایش عملکرد مدل پیش‌بینی دما، تعدادی از بهترین ویژگی‌‌ها با استفاده از الگوریتم mRMR-MID، برای هر مدل SVR انتخاب می‌‌شوند. از معیارهای میانگین قدرمطلق خطا، انحراف معیار قدرمطلق خطا و درصد خطای پیش‌‌‌بینی بالای 3 درجه سانتی‌گراد، در بررسی دقت مدل پیش‌‌بینی دمای پیشنهادی استفاده شده است. مدل پیشنهادی برای پیش‌‌بینی دما برای فاصله‌‌های زمانی 2 تا 5 ثانیه آینده ارزیابی شده است. نتایج به‌‌دست‌‌آمده نشان‌‌دهندۀ دقت زیاد مدل‌‌ پیش‌‌بینی دمای پیشنهادی هستند.



[1] تاریخ ارسال مقاله: 20/01/1396

تاریخ پذیرش مقاله: 22/01/1397

نام نویسندۀ مسئول: علی سلیمانی

نشانی نویسندۀ مسئول: ایران – شاهرود – خیابان دانشگاه – دانشگاه صنعتی شاهرود – دانشکده برق



[1] Dynamic Thermal Management

[2] Reactive

[3] Proactive

[4] Support Vector Regression

[5] AutoRegressive–Moving-Average

[6] Principal Component Analysis

[7] Multi-Layer Perceptron

[8] Mutual Information

[9] Minimum Redundancy Maximum Relevance

[10] Mutual Information Difference

[11] Mutual Information Quotient

[12] Heat sink

[13] Pulse Width Modulation

[14] Thread

[15] Mean Absolute Errors

[16] Standard Deviation of Absolute Errors

[17] Percentage of Outliers Errors

[xviii] Adaptive Neuro-Fuzzy Inference System

[xix] Least Mean Square

[1] J. Kong, S. W. Chung, K. Skadron, "Recent thermal management techniques for micro-processors", ACM Computing Surveys (CSUR), Vol. 44, No. 3, 42 pages, 2012.

[2] A. K. Coskun, T. S. Rosing, and K. C. Gross, "Proactive temperature balancing for low cost thermal management in MPSoCs", Computer-Aided Design, IEEE/ACM International Conference, pp. 250-257, 2008.

[3] A. K. Coskun, T. S. Rosing, and K. C. Gross, "Utilizing predictors for efficient thermal manage-ment in multiprocessor SoCs", IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, Vol. 28, No. 10, pp. 1503-1516, 2009.

[4] G. Liu, M. Fan, and G. Quan, "Neighbor-aware dynamic thermal management for multi-core platform", Proceedings of the Conference on Design, Automation and Test in Europe, pp. 187-192, 2012.

[5] A. Kumar, L. Shang, L. S. Peh, and N. K. Jha, "HybDTM: a coordinated hardware-software approach for dynamic thermal management", Proceedings of the 43rd annual Design Auto-mation Conference, pp. 548-553, 2006.

[6] M. Zaman, A. Ahmadi, and Y. Makris, "Workload characterization and prediction: A pathway to reliable multi-core systems", On-Line Testing Symposium (IOLTS), pp. 116-121, 2015.

[7] G. Yang, Q. Qiu, and Q. Wu, "A multi-agent framework for thermal aware task migration in manycore systems", IEEE Transactions on Very Large Scale Integration (VLSI) Systems, Vol. 20, No. 10, pp. 1758-1771, 2012.

[8] M. Stockman, M. Awad, H. Akkary, R. Khanna, "Thermal status and workload prediction using support vector regression", Energy Aware Com-puting, International Conference, pp. 1-5, 2012.

[9] P. Kumar, D. Atienza, "Neural network based on-chip thermal simulator", Circuits and Systems (ISCAS), Proceedings of 2010 IEEE International Symposium, pp. 1599-1602, 2010.

[10] A. Vincenzi, A. Sridhar, M. Ruggiero, D. Atienza, "Fast thermal simulation of 2D/3D integrated circuits exploiting neural networks and GPUs", Proceedings of the 17th IEEE/ACM international symposium on low-power electronics and design, pp. 151-156, 2011.

[11] R. Cochran, and S. Reda, "Thermal prediction and adaptive control through workload phase detection", ACM Transactions on Design Auto-mation of Electronic Systems (TODAES), Vol. 18, No. 1, pp. 7-26, 2013.

[12] Z. Liu, T. Xu, S. X. D Tan, H. Wang, "Dynamic thermal management for multi-core micro-processors considering transient thermal effects", Design Automation Conference (ASP-DAC), pp. 473-478, 2013.

[13] K. J. Lee, K. Skadron, "Using performance counters for runtime temperature sensing in high-performance processors," Parallel and Distributed Processing Symposium, 2005.

[14] S. J. Lu, R. Tessier, W. Burleson, "Dynamic on-chip thermal sensor calibration using performance counters", IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, Vol. 33, No. 6, pp. 853-866, 2014.

[15] K. Skadron, M. R. Stan, W. Huang, S. Velusamy, K. Sankaranarayanan, D. Tarjan, "Temperature-aware microarchitecture: Extended discussion and results," University of Virginia, Dept. of Computer Science, Technical Report, 2003.

[16] H. Peng, F. Long, C. Ding, "Feature selection based on mutual information criteria of max-dependency, max-relevance, and minredundancy", IEEE Transactions on pattern analysis and machine intelligence, Vol. 27, No. 8, pp. 1226-1238, 2005.

[17] M. Mandal, A. Mukhopadhyay, "An improved minimum redundancy maximum relevance approach for feature selection in gene expression data", Procedia Technology 10, pp. 20-27, 2013.

[18] N. Cristianini, J. Shawe-Taylor, "An introduction to support vector machines and other kernel-based learning methods", Cambridge university press, 2000.

[19] R. K. Jain, K. M. Smith, P. J. Culligan, J. E. Taylor, "Forecasting energy consumption of multi-family residential buildings using support vector regression: Investigating the impact of temporal and spatial monitoring granularity on performance accuracy", Applied Energy, Vol. 123, No. 15, pp. 168-178, 2014.

[20] L. Ge, J. Shi, P. Zhu, "Melt index prediction by support vector regression", In Control, Automation and Information Sciences (ICCAIS), pp. 60-63, 2016.

[21] F. Li, D. Miao, W. Pedrycz, "Granular multi-label feature selection based on mutual infor-mation", Pattern Recognition, Vol. 67, No. 1, pp. 410-423, 2017.

[22] N. Hoque, H. A. Ahmed, D. K. Bhattacharyya, J. K. Kalita, "A Fuzzy mutual Information-based feature selection method for classification", Fuzzy Information and Engineering, Vol. 8, No. 3, pp. 355-384, 2016.