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 条
  • [21] Compiler-Directed High-Performance Intermittent Computation with Power Failure Immunity
    Choi, Jongouk
    Kittinger, Larry
    Liu, Qingrui
    Jung, Changhee
    [J]. 2022 IEEE 28TH REAL-TIME AND EMBEDDED TECHNOLOGY AND APPLICATIONS SYMPOSIUM (RTAS), 2022, : 40 - 54
  • [22] Reducing NoC energy consumption through compiler-directed channel voltage scaling
    Chen, Guangyu
    Li, Feihui
    Kandemir, Mahmut
    Irwin, Mary Jane
    [J]. ACM SIGPLAN NOTICES, 2006, 41 (06) : 193 - 203
  • [23] Processor Reliability Enhancement through Compiler-Directed Register File Peak Temperature Reduction
    Yang, Chengmo
    Orailoglu, Alex
    [J]. 2009 IEEE/IFIP INTERNATIONAL CONFERENCE ON DEPENDABLE SYSTEMS & NETWORKS (DSN 2009), 2009, : 468 - 477
  • [24] Compiler-guided code restructuring for improving instruction TLB energy behavior
    Kadayif, I
    Kandemir, M
    Demirkiran, I
    [J]. EURO-PAR 2004 PARALLEL PROCESSING, PROCEEDINGS, 2004, 3149 : 304 - 309
  • [25] Improving the performance of cluster applications through I/O proxy architecture
    Sanchez, Luis Miguel
    Isaila, F.
    [J]. 2006 IEEE INTERNATIONAL CONFERENCE ON CLUSTER COMPUTING, VOLS 1 AND 2, 2006, : 567 - +
  • [26] Code restructuring for improving cache performance of MPSoCs
    Chen, G
    Kandemir, M
    [J]. ICCAD-2005: INTERNATIONAL CONFERENCE ON COMPUTER AIDED DESIGN, DIGEST OF TECHNICAL PAPERS, 2005, : 271 - 274
  • [27] Reducing Instruction Translation Look-Aside Buffer Energy Through Compiler-Directed Resizing
    Allu, Bramha
    Zhang, Wei
    [J]. JOURNAL OF LOW POWER ELECTRONICS, 2006, 2 (02) : 140 - 147
  • [28] Static WCET analysis based compiler-directed DVS energy optimization in real-time applications
    Yi Huizhan
    Chen Juan
    Yang Xuejun
    [J]. ADVANCES IN COMPUTER SYSTEMS ARCHITECTURE, PROCEEDINGS, 2006, 4186 : 123 - 136
  • [29] Compiler-directed scratchpad memory data transfer optimization for multithreaded applications on a heterogeneous many-core architecture
    Xiaohan Tao
    Jianmin Pang
    Jinlong Xu
    Yu Zhu
    [J]. The Journal of Supercomputing, 2021, 77 : 14502 - 14524
  • [30] Compiler-directed scratchpad memory data transfer optimization for multithreaded applications on a heterogeneous many-core architecture
    Tao, Xiaohan
    Pang, Jianmin
    Xu, Jinlong
    Zhu, Yu
    [J]. JOURNAL OF SUPERCOMPUTING, 2021, 77 (12): : 14502 - 14524