研究生: |
史伯其 Shih, Po-Chi |
---|---|
論文名稱: |
透過預排式處理器分配技術在多叢集系統中增進平行工作排程效能 Improving Parallel Job Scheduling Performance in Multi-cluster through Look-Ahead Processor Allocation |
指導教授: |
鍾葉青
Chung, Yeh-Ching |
口試委員: |
鍾葉青
賴冠州 金仲達 黃國展 許慶賢 李哲榮 周志遠 |
學位類別: |
博士 Doctor |
系所名稱: |
電機資訊學院 - 資訊工程學系 Computer Science |
論文出版年: | 2012 |
畢業學年度: | 100 |
語文別: | 英文 |
論文頁數: | 83 |
中文關鍵詞: | 平行工作排程 、處理器分配 、異質多叢集系統 、預排 |
外文關鍵詞: | parallel job scheduling, processor allocation, heterogeneous multi-cluster, look-ahead |
相關次數: | 點閱:1 下載:0 |
分享至: |
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
多叢集系統是一個廣泛應用於超級電腦、格網計算及雲端計算的基礎架構,如何有效率的運用多叢集中的資源也因此受到越來越多的重視,其中最主要的挑戰就是如何做資源排程,其中如何將資源分配給各個工作是個重要的議題,一個聰明的資源分配方法要能有效的考量工作提出的需求,以及目前的資源使用狀態,來增進系統效能。
本論文探討異質多叢集系統中的處理器分配議題,主要負責在多叢集所有可用的處理器中選擇該分配那些處理器給每個工作,傳統的處理器分配方法僅考量單一效能因素,如資源碎裂或是速度異質性,因此產生了如Best-Fit及Fastest-First這樣的分配方法。然而這些方法僅能在某些工作特性下表現優秀。在本論文中我們提出預排式處理器分配方法,此方法利用目前在等待中的工作所提供的資訊,例如有多少工作在等待、這些工作的執行順序、它們需求的處理器數目及預估的執行時間等,來決定要分配哪個叢集的處理器給每個工作,因此資源的分配是動態的,並且會依照目前的工作及資源使用狀況來決定。
我們透過廣泛的模擬實驗來評估所提出方法的效能,實驗變因包括各種可能影響效能的因素如工作特性及資源的組成。實驗結果顯示出預排式處理器分配方法的效能,在絕大多的實驗變因中都能比傳統的處理器分配方法有更好的表現。另外,結果也顯示了工作執行時間預估的優點,即便在時間預估的非常不準確的情況下都能有不錯的效能表現。若能得到準確的時間預估,則所提出的方法可以比傳統的方法最高提升4倍的效能。
Multi-cluster are an important and commonly used architecture in supercomputing, grid computing and the emerging cloud computing paradigm. Techniques for efficiently exploiting multi-cluster resources become increasingly significant. A critical aspect of exploiting these resources is the challenge of scheduling, in which how to allocate resources to each job is an important issue. Intelligent allocation algorithm can make good use of the information provided by the submitted jobs and current resource status to improve the system performance.
In this dissertation we focus on the issues of processor allocation in heterogeneous multi-cluster (HMC) system. In a HMC system, processor allocation is responsible for choosing available processors among clusters for job execution. Traditionally, processor allocation in HMC considers only single performance factor, resource fragmentation or processor heterogeneity, which leads to heuristics such as Best-Fit (BF) and Fastest-First (FF). However, those heuristics only favor certain types of workloads and cannot be changed adaptively. In this dissertation we propose the look-ahead processor allocation technique, which make use of the information of the waiting jobs, such as amount, execution sequence, processor requirement, and runtime estimation, to guide the decision of processor allocation. Thus, the allocation decision is made dynamically according to current workload and resource configurations.
Extensive simulations that consider different workload and resource configurations are conducted for performance evaluation. Simulation results show the effectiveness of look-ahead processor allocation methods, which can achieve better performance than traditional allocation methods for most cases. Results also indicate that the information of estimated job runtime can efficiently improve the system performance, even with high estimation error. With precise job runtime, the performance improvement can be made up to four times over traditional methods.
D. Lifka, "The ANL/IBM SP scheduling system," Proceedings of the International Workshop on Job Scheduling Strategies for Parallel Processing, pp. 295-303, 1995.
[2] R. B. (editor), High Performance Cluster Computing: Architectures and Systems, vol. 1. USA: Prentice Hall1999.
[3] I. Foster, "The Grid: A New Infrastructure for 21st Century Science," Physics Today, vol. 55, pp. 42-47, 2002.
[4] M. Armbrust, et al., "Above the clouds: A berkeley view of cloud computing," EECS Department, University of California, Berkeley, Tech. Rep. UCB/EECS-2009-28, 2009.
[5] A. Bucur and D. Epema, "The Influence of the Structure and Sizes of Jobs on the Performance of Co-allocation," Job Scheduling Strategies for Parallel Processing, pp. 154-173, 2000.
[6] J. H. Abawajy and S. P. Dandamudi, "Parallel job scheduling on multicluster computing system," Cluster Computing, 2003. Proceedings. 2003 IEEE International Conference on, pp. 11-18, 2003.
[7] M. J. William, "Improving parallel job scheduling performance in multi-clusters through selective job coallocation," Clemson University, 2005.
[8] J. Qin and M. A. Bauer, "A Study on Job Co-Allocation in Multiple HPC Clusters," High-Performance Computing in an Advanced Collaborative Environment, 2006. HPCS 2006. 20th International Symposium on, pp. 3-3, 2006.
[9] A. I. D. Bucur and D. H. J. Epema, "Scheduling Policies for Processor Coallocation in Multicluster Systems," Parallel and Distributed Systems, IEEE Transactions on, vol. 18, pp. 958-972, 2007.
[10] O. Sonmez, H. Mohamed, and D. Epema, "On the Benefit of Processor Coallocation in Multicluster Grid Systems," IEEE Transactions on Parallel and Distributed Systems, vol. PP, pp. 1-1, 2010.
[11] U. Schwiegelshohn, A. Tchernykh, and R. Yahyapour, "Online scheduling in grids," Proceedings of the IEEE International Symposium on In Parallel and Distributed Processing (IPDPS '08), pp. 1-10, 2008.
[12] V. Hamscher, U. Schwiegelshohn, A. Streit, and R. Yahyapour, "Evaluation of Job-Scheduling Strategies for Grid Computing," Proceedings of the First IEEE/ACM International Workshop on Grid Computing, pp. 191-202, 2000.
[13] K.-C. Huang, P.-C. Shih, and Y.-C. Chung, "Towards Feasible and Effective Load Sharing in a Heterogeneous Computational Grid," Proceedings of the 2nd International Conference on Advances in Grid and Pervasive Computing (GPC '07), pp. 229-240, 2007.
[14] P.-C. Shih, K.-C. Huang, and Y.-C. Chung, "Improving grid performance through processor allocation considering both speed heterogeneity and resource fragmentation," The Journal of Supercomputing, pp. 1-27, 2010.
[15] K.-C. Huang and H.-Y. Chang, "An Integrated Processor Allocation and Job Scheduling Approach to Workload Management on Computing Grid," Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA '06), Las Vegas, USA, pp. 703-709, 2006.
[16] K.-C. Huang, "Performance Evaluation of Adaptive Processor Allocation Policies for Moldable Parallel Batch Jobs," Proceedings of the Third Workshop on Grid Technologies and Applications, Hsinchu, Taiwan, 2006.
[17] C. Ernemann, V. Hamscher, and R. Yahyapour, "Benefits of global grid computing for job scheduling," Proceedings of the IEEE/ACM International Workshop on Grid Computing, pp. 374-379, 2004.
[18] U. Lublin and D. G. Feitelson, "The workload on parallel supercomputers: modeling the characteristics of rigid jobs," Journal of Parallel and Distributed Computing, vol. 63, pp. 1105-1122, 2003.
[19] W. Cirne and F. Berman, "A model for moldable supercomputer jobs," Parallel and Distributed Processing Symposium., Proceedings 15th International, p. 8 pp., 2001.
[20] Z. Weizhe, A. M. K. Cheng, and H. Mingzeng, "Multisite co-allocation algorithms for computational grid," Proceedings of the 20th IEEE International Symposium on Parallel and Distributed Processing (IPDPS '06), 2006.
[21] Q. Xiao, "An Availability-Aware Task Scheduling Strategy for Heterogeneous Systems," IEEE Transaction on Computers, vol. 57, pp. 188-199, 2008.
[22] D. G. Feitelson and R. Larry, "Parallel Job Scheduling: Issues and Approaches," Proceedings of the Workshop on Job Scheduling Strategies for Parallel Processing, 1995.
[23] A. W. Mu'alem and D. G. Feitelson, "Utilization, predictability, workloads, and user runtime estimates in scheduling the IBM SP2 with backfilling," IEEE Transactions on Parallel and Distributed Systems, vol. 12, pp. 529-543, 2001.
[24] D. G. Feitelson, L. Rudolph, and U. Schwiegelshohn, "Parallel Job Scheduling — A Status Report," Proceedings of the International Workshop on Job Scheduling Strategies for Parallel Processing, pp. 1-16, 2005.
[25] D. G. Feitelson and A. M. Weil, "Utilization and predictability in scheduling the IBM SP2 with backfilling," Proceedings of the IEEE International Symposium on Parallel and Distributed Processing (IPDPS), pp. 542-546, 1998.
[26] D. G. Feitelson, "Experimental analysis of the root causes of performance evaluation results: a backfilling case study," IEEE Transactions on Parallel and Distributed Systems, vol. 16, pp. 175-182, 2005.
[27] E. Shmueli and D. G. Feitelson, "Backfilling with lookahead to optimize the packing of parallel jobs," Journal of Parallel and Distributed Computing, vol. 65, pp. 1090-1107, 2005.
[28] D. Tsafrir, Y. Etsion, and D. G. Feitelson, "Backfilling Using System-Generated Predictions Rather than User Runtime Estimates," IEEE Transactions on Parallel and Distributed Systems, vol. 18, pp. 789-803, 2007.
[29] Z. Yanyong, H. Franke, J. Moreira, and A. Sivasubramaniam, "An integrated approach to parallel scheduling using gang-scheduling, backfilling, and migration," IEEE Transactions on Parallel and Distributed Systems, vol. 14, pp. 236-247, 2003.
[30] D. B. Jackson, Q. Snell, and M. J. Clement, "Core Algorithms of the Maui Scheduler," Proceedings of the 7th International Workshop on Job Scheduling Strategies for Parallel Processing, 2001.
[31] S.-H. Chiang and S. Vasupongayya, "Design and Potential Performance of Goal-Oriented Job Scheduling Policies for Parallel Computer Workloads," IEEE Transactions on Parallel and Distributed Systems, vol. 19, pp. 1642-1656, 2008.
[32] L. M. Ni, S. W. Turner, and B. H. C. Cheng, "Contention-Free 2D-Mesh Cluster Allocation in Hypercubes," IEEE Transactions on Computers, vol. 44, pp. 1051-1055, 1995.
[33] D. D. Sharma and D. K. Pradhan, "Processor Allocation in Hypercube Multicomputers: Fast and Efficient Strategies for Cubic and Noncubic Allocation," IEEE Transactions on Parallel and Distributed Systems, vol. 6, pp. 1108-1122, 1995.
[34] E. Carsten, H. Volker, S. Uwe, Y. Ramin, and S. Achim, "On Advantages of Grid Computing for Parallel Job Scheduling," Proceedings of the 2nd IEEE/ACM International Symposium on Cluster Computing and the Grid (CCGrid '02), 2002.
[35] K. Li, "Job scheduling and processor allocation for grid computing on metacomputers," Journal of Parallel and Distributed Computing, vol. 65, pp. 1406-1418, 2005.
[36] W. Cirne and F. Berman, "Using Moldability to Improve the Performance of Supercomputer Jobs," Journal of Parallel and Distributed Computing, vol. 62, pp. 1571-1601, 2002.
[37] S. Srinivasan, V. Subramani, R. Kettimuthu, P. Holenarsipur, and P. Sadayappan, "Effective Selection of Partition Sizes for Moldable Scheduling of Parallel Jobs," High Performance Computing — HiPC 2002, pp. 174-183, 2002.
[38] L. He, S. A. Jarvis, D. P. Spooner, X. Chen, and G. R. Nudd, "Hybrid Performance-Oriented Scheduling of Moldable Jobs with QoS Demands in Multiclusters and Grids," Grid and Cooperative Computing – GCC 2004, pp. 217-224, 2004.
[39] J. Hungershofer, "On the combined scheduling of malleable and rigid jobs," Computer Architecture and High Performance Computing, 2004. SBAC-PAD 2004. 16th Symposium on, pp. 206-213, 2004.
[40] K. Jansen and H. Zhang, "An Approximation Algorithm for Scheduling Malleable Tasks Under General Precedence Constraints," Algorithms and Computation, pp. 236-245, 2005.
[41] D. G. Feitelson, R. Larry, S. Uwe, C. S. Kenneth, and W. Parkson, "Theory and Practice in Parallel Job Scheduling," Job Scheduling Strategies for Parallel Processing, 1997.
[42] M. Garey and R. Graham, "Bounds for Multiprocessor Scheduling with Resource Constraints," SIAM Journal on Computing, vol. 4, pp. 187-200, 1975.
[43] U. Schwiegelshohn, W. Ludwig, J. L. Wolf, J. Turek, and P. S. Yu, "Smart SMART Bounds for Weighted Response Time Scheduling," SIAM J. Comput., vol. 28, pp. 237-253, 1999.
[44] P. Phinjaroenphan, S. Bevinakoppa, and P. Zeephongsekul, "A Heuristic Algorithm for Mapping Parallel Applications on Computational Grids," Advances in Grid Computing - EGC 2005, pp. 1086-1096, 2005.
[45] V. Shestak, et al., "A hybrid Branch-and-Bound and evolutionary approach for allocating strings of applications to heterogeneous distributed computing systems," Journal of Parallel and Distributed Computing, vol. 68, pp. 410-426, 2008.
[46] D. Datta, C. Fonseca, and K. Deb, "A multi-objective evolutionary algorithm to exploit the similarities of resource allocation problems," Journal of Scheduling, 2008.
[47] R. Y. Uwe Schwiegelshohn, "Fairness in parallel job scheduling," Journal of Scheduling, vol. 3, pp. 297-320, 2000.
[48] N. Doulamis, et al., "Adjusted fair scheduling and non-linear workload prediction for QoS guarantees in grid computing," Computer Communications, vol. 30, pp. 499-515, 2007.
[49] K. Li, "Experimental performance evaluation of job scheduling and processor allocation algorithms for grid computing on metacomputers," Parallel and Distributed Processing Symposium, 2004. Proceedings. 18th International, p. 170, 2004.
[50] D. England and J. B. Weissman, "Costs and Benefits of Load Sharing in the Computational Grid," Job Scheduling Strategies for Parallel Processing, pp. 160-175, 2005.
[51] G. Sabin, R. Kettimuthu, A. Rajan, and P. Sadayappan, "Scheduling of Parallel Jobs in a Heterogeneous Multi-site Environment," Job Scheduling Strategies for Parallel Processing, pp. 87-104, 2003.
[52] V. Hamscher, U. Schwiegelshohn, A. Streit, and R. Yahyapour, "Evaluation of Job-Scheduling Strategies for Grid Computing," Proceedings of the 7th International Conference on High Performance Computing(HiPC-2000), pp. 191-202, 2000.
[53] J. G. A. K. A. R. Matthias Brune, "Managing clusters of geographically distributed high-performance computers," Concurrency: Practice and Experience, vol. 11, pp. 887-911, 1999.
[54] A. Bucur and D. Epema, "Local versus Global Schedulers with Processor Co-allocation in Multicluster Systems," Job Scheduling Strategies for Parallel Processing, pp. 184-204, 2002.
[55] C. Ernemann, V. Hamscher, A. Streit, and R. Yahyapour, "Enhanced Algorithms for Multi-site Scheduling," Grid Computing — GRID 2002, pp. 219-231, 2002.
[56] C. Ernemann, V. Hamscher, A. Streit, and R. Yahyapour, "On Effects of Machine Configurations on Parallel Job Scheduling in Computational Grids," Proceedings of International Conference on Architecture of Computing Systems, ARCS, pp. 169-179, 2002.
[57] S. Banen, A. Bucur, and D. Epema, "A Measurement-Based Simulation Study of Processor Co-allocation in Multicluster Systems," Job Scheduling Strategies for Parallel Processing, pp. 105-128, 2003.
[58] A. I. D. Bucur and D. H. J. Epema, "The performance of processor co-allocation in multicluster systems," Cluster Computing and the Grid, 2003. Proceedings. CCGrid 2003. 3rd IEEE/ACM International Symposium on, pp. 302-309, 2003.
[59] W. M. Jones, L. W. Pang, W. B. Ligon, and D. Stanzione, "Bandwidth-aware co-allocating meta-schedulers for mini-grid architectures," Proceedings of the 2004 IEEE International Conference on Cluster Computing, 2004.
[60] A. I. D. Bucur and D. H. J. Epema, "An evaluation of processor co-allocation for different system configurations and job structures," Computer Architecture and High Performance Computing, 2002. Proceedings. 14th Symposium on, pp. 195-203, 2002.
[61] S. Srinivasan, S. Krishnamoorthy, and P. Sadayappan, "A robust scheduling technology for moldable scheduling of parallel jobs," Cluster Computing, 2003. Proceedings. 2003 IEEE International Conference on, pp. 92-99, 2003.
[62] L. Barsanti and A. Sodan, "Adaptive Job Scheduling Via Predictive Job Resource Allocation," Job Scheduling Strategies for Parallel Processing, pp. 115-140, 2007.
[63] G. Sabin, M. Lang, and P. Sadayappan, "Moldable Parallel Job Scheduling Using Job Efficiency: An Iterative Approach," Job Scheduling Strategies for Parallel Processing, pp. 94-114, 2007.
[64] Parallel Workloads Archive, http://www.cs.huji.ac.il/labs/parallel/workload/.
[65] G. F. Dror, "Packing Schemes for Gang Scheduling," Proceedings of the Workshop on Job Scheduling Strategies for Parallel Processing, 1996.
[66] A. Silberschatz, J. Peterson, and P. Galvin, "Operating System Concepts," Addison-Wesley Publishing Company, pp. 155-156, 1991.