Compiler-directed page coloring for multiprocessors

被引:25
|
作者
Bugnion, E
Anderson, JM
Mowry, TC
Rosenblum, M
Lam, MS
机构
[1] Computer Systems Laboratory, Stanford University, Stanford
[2] Dept. of Elec. and Comp. Engineering, University of Toronto, Toronto
关键词
D O I
10.1145/248209.237195
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
This paper presents a new technique, compiler-directed page coloring, that eliminates conflict misses in multiprocessor applications. It enables applications to make better use of the increased aggregate cache size available in a multiprocessor. This technique uses the compiler's knowledge of the access patterns of the parallelized applications to direct the operating system's virtual memory page mapping strategy. We demonstrate that this technique can lead to significant performance improvements over two commonly used page mapping strategies for machines with either direct-mapped or two-way set-associative caches. We also show that it is complementary to latency-hiding techniques such as prefetching. We implemented compiler-directed page coloring in the SUIF parallelizing compiler and on two commercial operating systems. We applied the technique to the SPEC95fp benchmark suite, a representative set of numeric programs. We used the SimOS machine simulator to analyze the applications and isolate their performance bottlenecks. We also validated these results on a real machine, an eight-processor 350MHz Digital AlphaServer. Compiler-directed page coloring leads to significant performance improvements for several applications. Overall, our technique improves the SPEC95fp rating for eight processors by 8% over Digital UNIX's page mapping policy and by 20% over a page coloring, a standard page mapping policy. The SUIF compiler achieves a SPEC95fp ratio of 57.4, the highest ratio to date.
引用
收藏
页码:244 / 255
页数:12
相关论文
共 50 条
  • [31] Compiler-directed code restructuring for improving performance of MPSoCs
    Chen, Guilin
    Kandemir, Mahmut
    IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 2008, 19 (09) : 1201 - 1214
  • [32] Compiler-Directed Soft Error Mitigation for Embedded Systems
    Martinez-Alvarez, Antonio
    Cuenca-Asensi, Sergio A.
    Restrepo-Calle, Felipe
    Palomo Pinto, Francisco R.
    Guzman-Miranda, Hipolito
    Aguirre, Miguel A.
    IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, 2012, 9 (02) : 159 - 172
  • [33] Compiler-directed early load-address generation
    Cheng, BC
    Connors, DA
    Hwu, WMW
    31ST ANNUAL ACM/IEEE INTERNATIONAL SYMPOSIUM ON MICROARCHITECTURE, PROCEEDINGS, 1998, : 138 - 147
  • [34] iDO: Compiler-Directed Failure Atomicity for Nonvolatile Memory
    Liu, Qingrui
    Izraelevitz, Joseph
    Lee, Se Kwon
    Scott, Michael L.
    Noh, Sam H.
    Jung, Changhee
    2018 51ST ANNUAL IEEE/ACM INTERNATIONAL SYMPOSIUM ON MICROARCHITECTURE (MICRO), 2018, : 258 - 270
  • [35] Compiler-Directed Performance Model Construction for Parallel Programs
    Schindewolf, Martin
    Kramer, David
    Cintra, Marcelo
    ARCHITECTURE OF COMPUTING SYSTEMS - ARCS 2010, PROCEEDINGS, 2010, 5974 : 187 - +
  • [36] Compiler-directed thermal management for VLIW functional units
    Mutyam, Madhu
    Li, Feihui
    Narayanan, Vijaykrishnan
    Kandemir, Mahmut
    Irwin, Mary Jane
    ACM SIGPLAN NOTICES, 2006, 41 (07) : 163 - 172
  • [37] EFFECTIVENESS OF COMPILER-DIRECTED PREFETCHING ON DATA MINING BENCHMARKS
    Natarajan, Ragavendra
    Mekkat, Vineeth
    Hsu, Wei-Chung
    Zhai, Antonia
    JOURNAL OF CIRCUITS SYSTEMS AND COMPUTERS, 2012, 21 (02)
  • [38] Automating Compiler-Directed Autotuning for Phased Performance Behavior
    Rusira, Tharindu
    Hall, Mary
    Basu, Protonu
    2017 IEEE INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM WORKSHOPS (IPDPSW), 2017, : 1362 - 1371
  • [39] Compiler-directed code restructuring for operating with compressed arrays
    Yemliha, T.
    Chen, G.
    Ozturk, O.
    Kandemir, M.
    Degalahal, V. S.
    20TH INTERNATIONAL CONFERENCE ON VLSI DESIGN, PROCEEDINGS: TECHNOLOGY CHALLENGES IN THE NANOELECTRONICS ERA, 2007, : 221 - +
  • [40] Compiler-directed instruction duplication for soft error detection
    Hu, JS
    Li, FH
    Degalahal, V
    Kandemir, M
    Vijaykrishnan, N
    Irwin, MJ
    DESIGN, AUTOMATION AND TEST IN EUROPE CONFERENCE AND EXHIBITION, VOLS 1 AND 2, PROCEEDINGS, 2005, : 1056 - 1057