Lost in Abstraction: Pitfalls of Analyzing GPUs at the Intermediate Language Level

被引:41
作者
Gutierrez, Anthony [1 ]
Beckmann, Bradford M. [1 ]
Dutu, Alexandru [1 ]
Gross, Joseph [1 ]
Kalamatianos, John [1 ]
Kayiran, Onur [1 ]
LeBeane, Michael [1 ]
Poremba, Matthew [1 ]
Potter, Brandon [1 ]
Puthoor, Sooraj [1 ]
Sinclair, Matthew D. [1 ]
Wyse, Mark [1 ]
Yin, Jieming [1 ]
Zhang, Xianwei [1 ]
Jain, Akshay [2 ]
Rogers, Timothy G. [2 ]
机构
[1] Adv Micro Devices Inc, AMD Res, Sunnyvale, CA 94088 USA
[2] Purdue Univ, Sch Elect & Comp Engn, W Lafayette, IN 47907 USA
来源
2018 24TH IEEE INTERNATIONAL SYMPOSIUM ON HIGH PERFORMANCE COMPUTER ARCHITECTURE (HPCA) | 2018年
关键词
ABI; GPU; Intermediate Language; Intermediate Representation; ISA; Simulation;
D O I
10.1109/HPCA.2018.00058
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Modern GPU frameworks use a two-phase compilation approach. Kernels written in a high-level language are initially compiled to an implementation-agnostic intermediate language (IL), then finalized to the machine ISA only when the target GPU hardware is known. Most GPU microarchitecture simulators available to academics execute IL instructions because there is substantially less functional state associated with the instructions, and in some situations, the machine ISA's intellectual property may not be publicly disclosed. In this paper, we demonstrate the pitfalls of evaluating GPUs using this higher-level abstraction, and make the case that several important microarchitecture interactions are only visible when executing lower-level instructions. Our analysis shows that given identical application source code and GPU microarchitecture models, execution behavior will differ significantly depending on the instruction set abstraction. For example, our analysis shows the dynamic instruction count of the machine ISA is nearly 2x that of the IL on average, but contention for vector registers is reduced by 3x due to the optimized resource utilization. In addition, our analysis highlights the deficiencies of using IL to model instruction fetching, control divergence, and value similarity. Finally, we show that simulating IL instructions adds 33% error as compared to the machine ISA when comparing absolute runtimes to real hardware.
引用
收藏
页码:608 / 619
页数:12
相关论文
共 38 条
  • [1] *AMD, 2016, HCC SAMPL APPL
  • [2] AMD, 2015, AMD GEM5 APU SIM MOD
  • [3] [Anonymous], HCC
  • [4] [Anonymous], P 2008 ACM IEEE C SU
  • [5] [Anonymous], 2012, 7 INT WORKSHOP RECON
  • [6] [Anonymous], SO ISL SER INSTR SET
  • [7] Binkert Nathan, 2011, Computer Architecture News, V39, P1, DOI 10.1145/2024716.2024718
  • [8] Calibration of microprocessor performance models
    Black, B
    Shen, JP
    [J]. COMPUTER, 1998, 31 (05) : 59 - 65
  • [9] Blem E, 2013, INT S HIGH PERF COMP, P1, DOI 10.1109/HPCA.2013.6522302
  • [10] Che SA, 2009, I S WORKL CHAR PROC, P44, DOI 10.1109/IISWC.2009.5306797