Careers | Phone Book | A - Z Index

Roofline Performance Model

Roofline is a visually intuitive performance model used to bound the performance of various numerical methods and operations running on multicore, manycore, or accelerator processor architectures. Rather than simply using percent-of-peak estimates, the model can be used to assess the quality of attained performance by combining locality, bandwidth, and different parallelization paradigms into a single performance figure. One can examine the resultant Roofline figure in order to determine both the implementation and inherent performance limitations.

  • Introduction The Roofline model is oriented around the interplay between application data locality, data bandwidth, and computational throughput.  Each of these topics are further refined and discussed here. Arithmetic Intensity The core parameter behind the Roofline model is Arithmetic Intensity. Arithmetic Intensity is the ratio of total floating-point operations to total data movement (bytes). A BLAS-1 vector-vector increment ( x[i]+=y[i] ) would have a very low arithmetic intensity of 0.0417 (N FLOPS /…
  • Software We have created, collaborated, and leveraged, on a number of tools to affect Roofline modeling.  Broadly speaking, these tools implement a subset of machine characterization, application instrumentation, cache simulation, and bottleneck identification.  Moreover these tools can trade performance overhead for accuracy allowing users to commence with rough high-level characterization and proceed to detailed analysis on key…
  • People A number of researchers have and continue to contribute to the Roofline effort at LBL Samuel Williams Charlene Yang Khaled Ibrahim Doug Doerfler Leonid Oliker Terry Ligocki Brian Van Straalen Matthew Cordery Linda Lo   …
  • Publications The following represents a core list of Roofline-related publications. They can provide a more in-depth discussion of the theory, application, and nuances associated with using the Roofline…