زمان‌بندی آگاه از تداخل زمانی در سیستم‌های مبتنی بر پردازنده گرافیکی

نویسندگان

دانشکده مهندسی کامپیوتر، دانشگاه صنعتی امیرکبیر، تهران، ایران

چکیده

معماری‌های جدید پردازنده‌های گرافیکی برای جلوگیری از هدررفت منابع امکان اجرای همزمان چند کرنل را فراهم می‌کنند. بااینحال، اگر دو یا چند کرنل بخواهند همزمان به منابع اشتراکی دسترسی داشته باشند تداخل ایجاد شده و باعث کاهش کارایی می‌شود. در سالهای اخیر پژوهش‌های متعددی در زمینه پیشبینی تداخل اجرای کرنلها انجام شده است، منتهی پیشبینی تداخل بر اساس الگوی زمانی مصرف منابع تابهحال مورد بررسی قرار نگرفته است. در این مقاله روشی برای پیشبینی تداخل زمانی اجرای کرنلها با استفاده از مدلهای یادگیری ماشین ارائه شده است که با استفاده از الگوی زمانی مصرف منابع هر کرنل، تداخل اجرای همزمان دو کرنل را تخمین میزند. همچنین یک روش زمانبندی مکاشف‌های با استفاده از مدل تخمین تداخل پیشنهادی برای اجرای همزمان کرنلها ارائه شده است. ارزیابیهای انجام شده بر روی کاربردهای واقعی نشان میدهد که روش پیشنهادی در اجرای سریعتر کرنلها به طور میانگین 67 %نسبت به حالت اجرای سریال، بیش از 17 %نسبت به بهروزترین زمانبند آگاه از تداخل پیشین و بیش از 27 %نسبت به زمانبند ناآگاه از تداخل بهبود داشته است. همچنین نسبت به این روشها به ترتیب به میزان 26 ،%10 %و 8 %نیز در مصرف انرژی صرفهجویی شده است. 

کلیدواژه‌ها

  • [1] S. Mittal and J. S. Vetter, "A Survey of Methods for Analyzing and Improving GPU Energy Efficiency." Computing Surveys, vol. 47, no. 2, pp. 1-23, 2015.
  • [2] Q. Xu, H. Jeon, K. Kim, W. W. Ro, and M. Annavaram, "Warped-slicer: Efficient Intra-SM Slicing Through Dynamic Resource Partitioning for GPU Multiprogramming," International Symposium on Computer Architecture, pp. 230-242, 2016.
  • [3] N.R. RamMohan and E. Baburaj, "Resource Allocation Using Interference Aware Technique in Cloud Computing Environment," Journal of Digital Content Technology and its Applications, vol. 8, no.1, pp. 35-46, 2014.
  • [4] Y. Ukidave, X. Li, and D. Kael, "Mystic: Predictive Scheduling for GPU-Based Cloud Servers Using Machine Learning," Parallel and Distributed Processing Symposium, pp. 353-362, 2016.
  • [5] S. Shekofteh, H. Noori, M. Naghibzadeh, H. Sadoghi Yazdi, and H. Froning, "Metric Selection for GPU Kernel Classification," Transactions on Architecture and Code Optimization, vol. 15, no. 4, pp. 1-27, 2019.
  • [6] R. Phull, C. Li, K. Rao, H. Cadambi, and S. Chakradhar, "Interference-Driven Resource Management for GPU-Based Heterogeneous Clusters." International Symposium on High-Performance Parallel and Distributed Computing, pp. 109-120, 2012.
  • [7] CUDA Toolkit 10.1, https://developer.nvidia.com/cuda-downloads/, July 2021.
  • [8] Z. Xu, F. Dong, J. Jin, J. Luo, and J. Shen, "GScheduler: Optimizing Resource Provision by Using GPU Usage Pattern Extraction in Cloud Environment," International Conference on Systems, Man and Cybernetics, pp. 3225-3230, 2017.
  • [9] Q. Zhu, B. Wu, X. Shen, L. Shen, and Z. Wang, "Co-Run Scheduling with Power Cap on Integrated CPU-GPU Systems," International Parallel and Distributed Processing Symposium, pp. 967-977, 2017.
  • [10] A. Hugo, A. Guermouche, P. Wacrenier, and R. Namyst, "Composing Multiple StarPU Applications over Heterogeneous Machines: a Supervised Approach," International Symposium on Parallel and Distributed Processing, pp. 1050-1059, 2013.
  • [11] P. Aguilera, J. Lee, A. Farmahini-Farahani, K. Morrow, M. Schulte, and N. S. Kim, "Process Variation-aware Workload Partitioning Algorithms for GPUs Supporting Spatial-Multitasking," Design, Automation and Test in Europe Conference and Exhibition, pp. 1-6, 2014.
  • [12] A. Pattnaik, X. Tang, A. Jog, O. Kayiran, A. K. Mishra, M. T. Kandemir, O. Mutlu, and C. R. Das, “Scheduling Techniques for GPU Architectures with Processing-in-Memory Capabilities,” International Conference on Parallel Architectures and Compilation, pp. 31–44, 2016.
  • [13] A. Karami, F. Khunjush, and S. A. Mirsoleimani, “A Statistical Performance Analyzer Framework for OpenCL Kernels on NVIDIA GPUs,” Journal of Supercomputing, vol. 71, no. 8, pp. 2900–2921, 2015.
  • [14] X. Mei, X. Chu, H. Liu, Y. Leung, and Z. Li, "Energy Efficient Real-Time Task Scheduling on CPU-GPU Hybrid Clusters," IEEE Conference on Computer Communications, pp. 1-9, 2017.
  • [15] V. Chau, X. Chu, H. Liu, and Y. W. Leung, "Energy Efficient Job Scheduling with DVFS for CPU-GPU Heterogeneous Systems," International Conference on Future Energy Systems, pp. 1-11, 2017.
  • [16] T.R. Derrick, and J.M. Thomas, Time Series Analysis: The Cross-Correlation Function. In Innovative Analyses of Human Movement, pp. 189-205, 2004.
  • [17] L. Breiman, “Random Forests,” Machine Learning, vol. 45, no. 1, pp. 5-32, 2001.
  • [19] M. Mohandes, M. Deriche, and S. O. Aliyu, “Classifiers Combination Techniques: A Comprehensive Review,” IEEE Access, vol. 6, pp. 19626-19639., 2018.
  • [23] CUDA Multi-Process Service (MPS), https://docs.nvidia.com/, July 2021.
  • [18] C. Cortes and V. Vapnik, "Support-Vector Networks," Machine Learning, vol. 20, no. 3, pp. 273-297, 1995.
  • [24] E. Alpaydin, Introduction to Machine Learning, MIT Press, 2004.
  • [25] A Gentle Introduction to k-fold Cross-Validation, https://machinelearningmastery.com/k-fold-cross-validation, July 2021.
  • [20] T. Hastie, Elements of Statistical Learning, Springer Science & Business Media, 2009.
  • [21] A. Sharafati, S. B. H. S. Asadollah, and M. Hosseinzadeh, “The Potential of New Ensemble Machine Learning Models for Effluent Quality Parameters Prediction and Related Uncertainty,” Process Safety and Environmental Protection, vol. 140, pp. 68-78, 2020.
  • [22] H. Drucker, “Improving Regressors using Boosting Techniques,” International Conference on Machine Learning, vol. 97, pp. 107-115, 1997.
  • [26] L. Yu, Multilevel Interference-aware Scheduling on Modern GPUs. PhD Thesis, April 2019.
دوره 19، شماره 1
بهار و تابستان
اردیبهشت 1400