CcNav: Understanding Compiler Optimizations in Binary Code
CcNav: Understanding Compiler Optimizations in Binary Code
复制标题
CcNav:了解二进制代码中的编译器优化
DOI:
10.1109/tvcg.2020.3030357
复制
发表时间:
2021
影响因子:
5.2
通讯作者:
Isaacs, Katherine E.
中科院分区:
文献类型:
--
作者:
Devkota, Sabin;Aschwanden, Pascal;Kunen, Adam;Legendre, Matthew;Isaacs, Katherine E.
Program developers spend significant time on optimizing and tuning programs. During this iterative process, they apply optimizations, analyze the resulting code, and modify the compilation until they are satisfied. Understanding what the compiler did with the code is crucial to this process but is very time-consuming and labor-intensive. Users need to navigate through thousands of lines of binary code and correlate it to source code concepts to understand the results of the compilation and to identify optimizations. We present a design study in collaboration with program developers and performance analysts. Our collaborators work with various artifacts related to the program such as binary code, source code, control flow graphs, and call graphs. Through interviews, feedback, and pair-analytics sessions, we analyzed their tasks and workflow. Based on this task analysis and through a human-centric design process, we designed a visual analytics system Compilation Navigator (CcNav) to aid exploration of the effects of compiler optimizations on the program. CcNav provides a streamlined workflow and a unified context that integrates disparate artifacts. CcNav supports consistent interactions across all the artifacts making it easy to correlate binary code with source code concepts. CcNav enables users to navigate and filter large binary code to identify and summarize optimizations such as inlining, vectorization, loop unrolling, and code hoisting. We evaluate CcNav through guided sessions and semi-structured interviews. We reflect on our design process, particularly the immersive elements, and on the transferability of design studies through our experience with a previous design study on program analysis.
登录
查看更多内容
DOI:
10.1145/2047196.2047225
发表时间:
2011-10
期刊:
Proceedings of the 24th annual ACM symposium on User interface software and technology
影响因子:
--
作者:
Thorsten Karrer;Jan-Peter Krämer;Jonathan Diehl;Bjoern Hartmann;Jan O. Borchers
通讯作者:
Thorsten Karrer;Jan-Peter Krämer;Jonathan Diehl;Bjoern Hartmann;Jan O. Borchers
DOI:
10.1109/tvcg.2019.2934285
发表时间:
2019
影响因子:
5.2
作者:
Williams, Katy;Bigelow, Alex;Isaacs, Katherine E.
通讯作者:
Isaacs, Katherine E.
DOI:
10.1109/infvis.1999.801852
发表时间:
1999
期刊:
Proceedings 1999 IEEE Symposium on Information Visualization (InfoVis'99)
影响因子:
--
作者:
Chris Stolte;Robert P. Bosch;P. Hanrahan;M. Rosenblum
通讯作者:
M. Rosenblum
DOI:
10.1109/icsm.2004.1357801
发表时间:
2004
期刊:
20th IEEE International Conference on Software Maintenance, 2004. Proceedings.
影响因子:
--
作者:
J. Krinke
通讯作者:
J. Krinke
DOI:
10.1109/tvcg.2018.2865076
发表时间:
2019-01
影响因子:
5.2
作者:
Yixuan Zhang;Kartik Chanana;Cody Dunne
通讯作者:
Yixuan Zhang;Kartik Chanana;Cody Dunne