研究生: |
林庭瑜 Lin, Ting-Yu |
---|---|
論文名稱: |
能源複雜度在平行演算法之評估模型及分析 Investigation on the Energy Complexity of Parallel Algorithms |
指導教授: |
王小璠
Wang, Hsiao-Fan |
口試委員: |
李允中
廖崇碩 |
學位類別: |
碩士 Master |
系所名稱: |
工學院 - 工業工程與工程管理學系 Department of Industrial Engineering and Engineering Management |
論文出版年: | 2012 |
畢業學年度: | 100 |
語文別: | 英文 |
論文頁數: | 73 |
中文關鍵詞: | 能源複雜度 、時間複雜度 、複雜度 、平行演算法 、能量消耗 |
外文關鍵詞: | Energy complexity, Time complexity |
相關次數: | 點閱:2 下載:0 |
分享至: |
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
基於節約能源日益重要之趨勢,及各種攜帶型電子產品日漸普及卻始終受限於電池容量不足之需求,本研究提出了一個有系統且可行的能源複雜度估算模型,以期在一般熟知的時間及空間複雜度等評估演算法效率之基準外,提供一個可以針對演算法的能源消耗進行評估之模組。目的在於提供程式設計或演算法開發人員一個可以分析並比較演算法耗能的估算模型,進而選擇最適合且可達到最低能源消耗的決策,甚至可依循本模組進行程式之最低能量消耗設計,以因應環保議題逐被重視的未來,同時解決消費性電子產品使用時限不足之市場需求。本研究主要專注於執行平行演算法時的能量消耗探討,因其可利用處理器多工之特性,在不影響時間消耗的前提下得到最低能量消耗的需求,進而提供我們比較不同演算法能耗之依據。演算法執行時能源消耗主要來自四個層面:分別為處理器執行指令能耗、處理器傳遞訊息能耗、指令讀取記憶體能耗以及資料讀取記憶體能耗。透過有系統的計算,我們可以利用Big-O的表現方式求出在最佳數量的處理器下,演算法執行時所需的最少能量消耗。本研究分別以六個經典的演算法為例,實際示範並說明模型的可適性。最後,本研究也提出了驗證的方法,並透過此方法,證明本能源複雜度模型,在計算機處理器可負荷的工作範圍內,確實具有相當的準確度以評估演算法之能源消耗。
Due to the energy crisis, energy consumption from software computation has become an issue. This study investigates the factors affecting energy consumed from a parallel algorithm, and then provides the general measure of each factor together with a comparison with time complexity as normally adopted for measuring the complexity of an algorithm. With several experiments conducted, the proposed method is shown to be systematic, practical, and able to assist a system designer or software developer in estimating the energy consumption upon execution. Finally, we establish an approach to verifying the accuracy of the model. The results show that with the upper bound of the input size that a parallel processor can normally handle, the accuracy of the energy complexity model is ensured.
In this study, due to the reason that energy and time complexities will be indistinguishable in the case of sequential algorithms, we shall focus on the measure of energy complexity for parallel algorithms. Based on the proposed model, energy consumption upon execution mainly originates from four sources: (1) consumption by the processor during the execution of instructions, (2) consumption by the processor for data communication, (3) consumption by the memory storage while accessing instructions, and (4) consumption by the memory storage for data accessing. By progressive calculations, we can capitalize on the performance of the Big-O to obtain the lowest possible energy consumption subject to the optimal number of processors employed as a prerequisite. This research is based on six classical calculation models, and the feasibility of the models is affirmed by substantial practical experiments.
[1]. Bingham B. D. and M. R. Greenstreet, “Computation with energy-time trade-offs: Models, algorithms and lower-bounds,” in ISPA, p.143-152 (2008).
[2]. Chandrakasan A., R. Brodersen, “Low power digital CMOS design,” Kluwer Academic Publishers, Boston (1995).
[3]. Curtis-Maury M., A. Shah, F. Blagojevic, D. Nikolopoulos, B. de Supinski, and M. Schulz, “Prediction Models for Multi-dimensional Power-Performance Optimization on Many Cores,” in PACT, pp. 250-259 (2008).
[4]. Geist G. and C. Romine, “ LU Factorization Algorithms on Distributed- Memory Multiprocessor Architectures,” SIAM Journal on Scientific and Statistical Computing, vol. 9, p. 639 (1988).
[5]. Gondzio, J. and R. Sarkissian, “Parallel Interior Point Solver for Structured Linear Programs,” Mathematical Programming, 96(3), 561-584 (2003).
[6]. Gonzalez R. and M. A. Horowitz, “Energy dissipation in general purpose microprocessors,” IEEE Journal of Solid-State Circuits, vol. 31, p.1277-1284 (1995).
[7]. Henessy J.L., D.A.Patterson, “Computer architecture: A quantitative approach, ” Morgan Kaufman, San Mateo, CA (1990).
[8]. Jain R., D. Molnar, and Z. Ramzan, “Towards a model of energy complexity for algorithms,” In Wireless Communications and Networking Conference, vol. 3, pp. 1884-1890 (2005).
[9]. Klabjan, D., E. Johnson, G.L. Nemhauser, “A Parallel Primal-Dual Simplex Algorithm,” Operations Research Letters 27, 47-55 (2000).
[10]. Knuth D., The Art of Computer Programming, Volume 3: Sorting and Searching, Third Edition. Addison-Wesley, ISBN 0-201-89685-0. Pages 106–110 of section 5.2.2: Sorting by Exchanging. (1997).
[11]. Korthikanti V. A. and G. Agha, “Analysis of parallel algorithms for energy conservation in scalable multicore architectures,” in ICPP, pp. 212-219 (2009).
[12]. Korthikanti V. A. and G. Agha, “On the energy complexity of parallel algorithms,” International Conference on Parallel Processing (2011).
[13]. Martin A. J., “Towards an energy complexity of computation,” Information Processing Letters, vol. 39, p. 181-187 (2001).
[14]. Petersen, J. A. M., Bodson, M., “Constrained Quadratic Programming Techniques for Control Allocation,” IEEE Transactions on Control Systems Technology, Vol. 14, No. 1, pp. 91-98 (2006).
[15]. Potra F. A., R. Sheng, “A modified O(nL) infeasible-interior-point algorithm for LCP with quadratic convergence,” Reports on Computational Mathematics 54, Department of Mathematics, The University of Iowa, Iowa City, IA 52242, USA (1994).
[16]. Singer, S., and Singer, S, “Complexity analysis of nelder-mead search iterations,” Applied Mathematics and Computation, 185-196 (1999).
[17]. Tierno J.A., “An energy-complexity model for VLSI computations,” Ph.D. Thesis, California Institute of Technology (1995).
[18]. Tiwari V., S. Malik, A. Wolfe, “Power analysis of embedded software: A first step towards software power minimization,” IEEE Transactions on VLSI Systems, Vol. 2, pp. 437-445 (1994).
[19]. Wolfe P., “The simplex method for quadratic programming,” Econometrica, 27, p.382-398 (1959).
[20]. Zhao C. Y., “Parallel Quick sort algorithm With PVM optimization,” Parallel & Distributed Processing, pp.18-27 (1998).
[21]. Zotos K., A. Litke, A. Chatzigeorgiou, S. Nikolaidis, and G. Stephanides,“Energy complexity of software in embedded systems,” in Proc. IASTED Int. Conf. Autom., Control Appl. (ACIT-ACA), Novosibirsk, Russia,
Jun. 20-24 (2005).
[22]. Design and Analysis of Algorithm. (2012, March). Merge Sort [Web blog message].Retrieved from http://www.personal.kent.edu/~rmuhamma/Algorithms/MyAlgorithms/Sorting/mergeSort.htm
[23]. Wikipedia. (2012, April 2). Quick Sort [Online encyclopedia].Retrieved from http://en.wikipedia.org/wiki/Quick_sort
[24]. Wikipedia. (2012, April 6). Merge Sort [Online encyclopedia].Retrieved from http://en.wikipedia.org/wiki/Mergesort