| 研究生: |
陳俊諭 Chen, Chun-Yu |
|---|---|
| 論文名稱: |
事務式設計模型及其MPEG-2編碼器之應用 A Transaction-based Design Model and Its MPEG-2 Encoder Design |
| 指導教授: |
周哲民
Jou, Jer-Min |
| 學位類別: |
碩士 Master |
| 系所名稱: |
電機資訊學院 - 電機工程學系 Department of Electrical Engineering |
| 論文出版年: | 2014 |
| 畢業學年度: | 102 |
| 語文別: | 中文 |
| 論文頁數: | 64 |
| 中文關鍵詞: | 平行 、事務 、預測 、電路模型 |
| 外文關鍵詞: | Parallelism, Transaction, Speculation, Circuit Model |
| 相關次數: | 點閱:109 下載:1 |
| 分享至: |
| 查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
在多核心的電路中,如何有效率地執行動作成為了重要的議題。最有效率的執行方式是所有核心同時處在工作狀態,盡可避免任一核心處在閒置狀態。然而在所有核心平行執行時,控制相依與資料相依必然產生資料同步的問題,因此系統需要管理機制來處理核心對共用資料存取造成的衝突。
Transactional Memory(TM)確保了特殊電路的獨立性和原子性,可維持系統內的資料同步,還能簡化使用者在電路設計上的複雜度。特殊電路被稱為事務(Transaction),以版本管理機制和衝突管理機制來達成資料同步,並維持獨立性和原子性。版本管理機制用於決定新舊值該如何擺放,避免執行前的舊值或執行過程產生的新值在提交前遺失。衝突管理機制用於偵測衝突和解決衝突,避免WAR(讀後寫)、RAW(寫後讀)、WAW(寫後寫)等資料存取上的衝突。
另外預測電路是特殊的平行化程式,針對程式間的相依或動作間的相依進行預測,讓這些程式或動作可以在多核心系統上平行執行。但是預測控制相依或預測資料相依有失敗的風險,因此程式提交時必須循序提交。一旦有衝突,順序在後的程式就必須中止並重新執行。
我們提出了「事務的預測電路模型」(transactional speculative circuit model),利用TM的概念管理多模組平行且預測執行的電路。在原有的電路上加入版本管理和衝突管理所需要的電路,使得該設計可以有效管理衝突並維持正確的執行順序,還能提升執行電路速度。
In the multi-core system, how to execute the operations efficiently has become an important issue. The most efficient executing state is that all cores stay in the working state simultaneously, avoiding any of these cores staying in the idle state. However, the control dependency and data dependency must cause the data synchronization problems when all cores execute in parallel; therefore, a strategy for conflict management in system is needed when shared data is accessed by cores.
Transactional Memory(TM) system ensures the isolation property and atomicity property of the special circuit, and these properties will keep the data synchronization and simplify the complexity of circuit design for users. The special circuit is called “transaction”, and the data synchronization in TM system is achieved by version management mechanisms and conflict management mechanisms; besides, the isolation and atomicity of transaction is kept by above two management mechanisms. Version management mechanism is used for deciding the position of the old values and new values, avoiding the old values (unmodified values) and the new values (modified values) are lost before a transaction commits. Conflict management mechanism is used for conflict detection and conflicts resolution, avoiding WAR, RAW, and WAW conflicts which are causing by data accessing.
Speculative circuit is one kind of special parallelizing circuits. The system speculates the value of dependencies between programs or between operations, so the programs or the operations could execute in parallel on multi-core system. However, there is the risk of failure in speculation of control dependency or speculation of data dependency, so the programs have to commit in serial order. Once a conflict exists, the program with later order has to abort and restart.
We propose a “transactional speculative circuit model”, and the concept of TM system is used for managing the circuit with many modules which execute speculatively in parallel. The additional circuits for version management and conflict management are put into the original circuit; and the additional design will manage conflicts efficiently, and it also keeps the correct executing order in the new design. The design will improve the speed of circuit executing.
[1] Marc Lupon, Grigorios Magklis, Antonio Gonzalez, “A Dynamically Adaptable Hardware Transactional Memory,” A Dynamically Adaptable Hardware Transactional Memory,” in Proceedings of the 43rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO), 2010, pp. 27-38.
[2] Quentin L. Meunier, Frederic Petrot, “Lightweight Transactional Memory systems for NoCs based architectures: Design, implementation and comparison of two policies,” Journal of Parallel and Distributed Computing, 70(10):1024-1041, 2010.
[3] Hany E. Ramadan, Christopher J. Rossbach, Donald E. Porter, Owen S. Hofmann, Aditya Bhandari, and Emmett Witchel, “MetaTM/TxLinux: Transactional Memory For An OperatingSystem,” ACM SIGARCH Computer Architecture News, vol. 35, no. 2, 2007.
[4] Arrvindh Shriraman, Sandhya Dwarkadas, Michael L. Scott, “Implementation Tradeoffs in the Design of Flexible Transactional Memory Support,” J. Parallel Distrib. Comput., 70(10), October 2010.
[5] Chen Tian, Min Feng, Vijay Nagarajan, Rajiv Gupta, “Copy Or Discard Execution Model For Speculative Parallelization On Multicores,” Proceedings of 41st IEEE/ACM International Symposium on Microarchitecture, 2008, pp.330-341.
[6] http://zh.wikipedia.org/wiki/MPEG-2.
[7] Jayaram Bobba, Kevin E. Moore, Haris Volos, Luke Yen, Mark D. Hill, Michael M. Swift, David A. Wood, “Performance Pathologies in Hardware Transactional Memory,” in Procs. of the 34th Intl Symp on Computer Architecture, Jun. 2007.
[8] Shweta Kulkarni, Prachi Kulkarni, Juie Deshpande, Priyadarshini Kakade, Priti Ranadive, Madhuri Tasgaonakar, Shilpa Deshpande, “Taxonomy for Transactional Memory Systems,”
[9] Tian, Chen, et al. "Speculative parallelization of sequential loops on multicores."International journal of parallel programming 37.5 (2009): 508-535.
[10] Zilles, Craig, and Lee Baugh. "Extending hardware transactional memory to support non-busy waiting and non-transactional actions." TRANSACT: First ACM SIGPLAN Workshop on Languages, Compilers, and Hardware Support for Transactional Computing. 2006.
[11] Del Barrio, Alberto A., Seda Ogrenci Memik, Senior Member, IEEE, Mar´ıa C. Molina, Jos´e M. Mend´ıas, and Rom´an Hermida. "A distributed controller for managing speculative functional units in high level synthesis." Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on 30.3 (2011): 350-363.
[12] Christopher J. Rossbach, Owen S. Hofmann, Donald E. Porter, Hany E. Ramadan, Aditya Bhandari, and Emmett Witchel. "TxLinux: Using and managing hardware transactional memory in an operating system." ACM SIGOPS Operating Systems Review. Vol. 41. No. 6. ACM, 2007.
[13] http://vaplab.ee.ncu.edu.tw/~cfwang/4.html
[14] http://vaplab.ee.ncu.edu.tw/chinese/pcchang/course2003b/comsp/FGS/mpeg.htm
[15] http://iopp50.blogspot.tw/2011/03/ycbcr-420ycbcr-422ycbcr-411-ycbcr-444.html
[16] http://www.mir.com/DMG/chroma.html