  Optimizing application performance in today's hardware architecture landscape
is an important, but increasingly complex task, often requiring detailed
performance analyses. In particular, data movement and reuse play a crucial
role in optimization and are often hard to improve without detailed program
inspection. Performance visualizations can assist in the diagnosis of
performance problems, but generally rely on data gathered through lengthy
program executions. In this paper, we present a performance visualization
geared towards analyzing data movement and reuse to inform impactful
optimization decisions, without requiring program execution. We propose an
approach that combines static dataflow analysis with parameterized program
simulations to analyze both global data movement and fine-grained data access
and reuse behavior, and visualize insights in-situ on the program
representation. Case studies analyzing and optimizing real-world applications
demonstrate our tool's effectiveness in guiding optimization decisions and
making the performance tuning process more interactive.
