Improving I/O performance of applications through compiler-directed code restructuring

被引:0
|
作者
Kandemir, Mahmut [1 ]
Son, Seung Woo [1 ]
Karakoy, Mustafa [2 ]
机构
[1] Penn State Univ, Dept Comp Sci & Engn, University Pk, PA 16802 USA
[2] Imperial Coll, Dept Comp, London, England
基金
美国国家科学基金会;
关键词
D O I
暂无
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Ever-increasing complexity of large-scale applications and continuous increases in sizes of the data they process make the problem of maximizing performance of such applications a very challenging task. In particular, many challenging applications from the domains of astrophysics, medicine, biology, computational chemistry, and materials science are extremely data intensive. Such applications typically use a disk system to store and later retrieve their large data sets, and consequently, their disk performance is a critical concern. Unfortunately, while disk density has significantly improved over the last couple of decades, disk access latencies have not. As a result, I/O is increasingly becoming a bottleneck for data-intensive applications, and has to be addressed at the software level if we want to extract the maximum performance from modem computer architectures. This paper presents a compiler-directed code restructuring scheme for improving the I/O performance of data-intensive scientific applications. The proposed approach improves I/O performance by reducing the number of disk accesses through a new concept called disk reuse maximization. In this context, disk reuse refers to reusing the data in a given set of disks as much as possible before moving to other disks. Our compiler-based approach restructures application code, with the help of a polyhedral tool, such that disk reuse is maximized to the extent allowed by intrinsic data dependencies in the application code. The proposed optimization can be applied to each loop nest individually or to the entire application code. The experiments show that the average I/O improvements brought by the loop nest based version of our approach are 9.0% and 2.7%, over the original application codes and the codes optimized using conventional schemes, respectively. Further, the average improvements obtained when our approach is applied to the entire application code are 15.0% and 13.5%, over the original application codes and the codes optimized using conventional schemes, respectively. This paper also discusses how careful file layout selection helps to improve our performance gains, and how our proposed approach can be extended to work with parallel applications.
引用
收藏
页码:159 / +
页数:3
相关论文
共 50 条
  • [1] Improving I/O performance through compiler-directed code restructuring and adaptive prefetching
    Son, Seung Woo
    Kandemir, Mahmut
    Karakoy, Mustafa
    [J]. 2008 IEEE INTERNATIONAL SYMPOSIUM ON PARALLEL & DISTRIBUTED PROCESSING, VOLS 1-8, 2008, : 2485 - +
  • [2] Compiler-directed code restructuring for improving performance of MPSoCs
    Chen, Guilin
    Kandemir, Mahmut
    [J]. IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 2008, 19 (09) : 1201 - 1214
  • [3] Compiler-directed code restructuring for operating with compressed arrays
    Yemliha, T.
    Chen, G.
    Ozturk, O.
    Kandemir, M.
    Degalahal, V. S.
    [J]. 20TH INTERNATIONAL CONFERENCE ON VLSI DESIGN, PROCEEDINGS: TECHNOLOGY CHALLENGES IN THE NANOELECTRONICS ERA, 2007, : 221 - +
  • [4] Compiler-directed code restructuring for reducing data TLB energy
    Kandemir, M
    Kadayif, I
    Chen, G
    [J]. INTERNATIONAL CONFERENCE ON HARDWARE/SOFTWARE CODESIGN AND SYSTEM SYNTHESIS, 2004, : 98 - 103
  • [5] Compiler-directed collective-I/O
    Kandemir, M
    [J]. IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 2001, 12 (12) : 1318 - 1331
  • [6] Code efficiency & compiler-directed feedback
    Brenner, J
    Levy, M
    [J]. DR DOBBS JOURNAL, 2003, 28 (12): : 59 - +
  • [7] Design and evaluation of a compiler-directed collective I/O technique
    Memik, G
    Kandemir, MT
    Choudhary, A
    [J]. EURO-PAR 2000 PARALLEL PROCESSING, PROCEEDINGS, 2000, 1900 : 1263 - 1272
  • [8] Compiler-directed resource management for active code regions
    Sree, R
    Settle, A
    Bratt, I
    Connors, D
    [J]. INTERACT-7 2003: SEVENTH WORKSHOP ON INTERACTION BETWEEN COMPILERS AND COMPUTER ARCHITECTURES, PROCEEDINGS, 2003, : 85 - 93
  • [9] Performance potentials of compiler-directed data speculation
    Wu, YF
    Chen, LL
    Ju, R
    Fang, J
    [J]. ISPASS: 2003 IEEE INTERNATIONAL SYMPOSIUM ON PERFORMANCE ANALYSIS OF SYSTEMS AND SOFTWARE, 2003, : 22 - 31
  • [10] Compiler-Directed Performance Model Construction for Parallel Programs
    Schindewolf, Martin
    Kramer, David
    Cintra, Marcelo
    [J]. ARCHITECTURE OF COMPUTING SYSTEMS - ARCS 2010, PROCEEDINGS, 2010, 5974 : 187 - +