Cited by 111Parallel Computing and Optimization TechniquesComputer Graphics and Visualization TechniquesNumerical Methods and Algorithms

Roofline: An Insightful Visual Performance Model for Floating-Point Programs and Multicore Architectures

Open access
Williams, Samuel, Waterman, Andrew, Patterson, David·2009·Lawrence Berkeley National Laboratory

Abstract

We propose an easy-to-understand, visual performance model that offers insights to programmers and architects on improving parallel software and hardware for floating point computations.

Integrity signals

Registry

Crossref · 10.2172/1407078

Cites

0 citation errors · 0 not checkable

Statistics

Nothing to recompute.

Claims the paper makes

0 of 14 cited sources checked · 0 supported · 0 flagged

  • Findingreasoning

    The Opteron X4 has slightly more than four times the peak floating-point performance of the Opteron X2 with the same memory bandwidth.

    “As the clock rate is slightly faster-2.2GHz for X2 versus 2.3 GHz for X4-the X4 has slightly more than four times the peak floating-point performance of the X2 with the same memory bandwidth.”
    Quote in the paperNot a substantial claim
  • Findingcitation

    The operational intensity of SpMV varies from 0.17 before a register blocking optimization to 0.25 Flops per byte afterwards.

    “The operational intensity varies from 0.17 before a register blocking optimization to 0.25 Flops per byte afterwards [29].”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [29] 29. R. Vuduc, J. Demmel, K. Yelick, S. Kamil, R. Nishtala, and B. Lee. "Performance Optimizations and Bounds for Sparse Matrix-Vector Multiply," Supercomputing (SC02), Nov. 2002. source
  • Findingnone given

    The stencil derived from the explicit heat equation PDE on a uniform 256^3 3-D grid does 8 floating-point operations for every 24 bytes of compulsory memory traffic on write-allocate architectures, yielding an operational intensity of 0.33.

    “This stencil will do 8 floatingpoint operations for every 24 bytes of compulsory memory traffic on write-allocate architectures, yielding an operational intensity of 0.33.”
    Quote in the paperNot a substantial claim
  • Findingown data

    The Opteron X4 ridge point is to the left of the Xeon, at an operational intensity of 4.4 Flops per byte.

    “Figure 3 shows that the ridge point in the Roofline model is to the left of the Xeon, at an operational intensity of 4.4 Flops per byte.”
    Quote in the paperNot a substantial claim
  • Findingnone given

    The Intel Xeon has the highest peak double precision performance of the four multicores.

    “The Intel Xeon has the highest peak double precision performance of the four multicores.”
    Quote in the paperNot a substantial claim
  • Classified as probably not a substantial claim. 55
  • May combine two claims. 55
  • The quote only partly states this claim. 2
  • Probably not a substantial claim: may not pass S3 (load-bearing). May combine two claims.

    Findingnone given

    The IBM Cell QS20 is a heterogeneous design with a relatively simple PowerPC core and eight SPEs that have their own unique SIMD-style instruction set and local memory instead of a cache.

    “It is a heterogeneous design, with a relatively simple PowerPC core and with eight SPEs (Synergistic Processing Elements) that have their own unique SIMD-style instruction set.Each SPE also has its own local memory instead of a cache.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingown data

    For the 128^3 and 512^3 point 3-D FFT transforms examined, the operational intensities are 1.09 and 1.41, respectively.

    “For the 128 3 -and 512 3 point transforms we examine, the operational intensities are 1.09 and 1.41, respectively.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingreasoning

    The Sun UltraSPARC T2+ has the highest memory bandwidth of the four.

    “It has the highest memory bandwidth of the four, for each chip has two dualchannel memory controllers that can drive four sets of DDR2/FBDIMMs.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingnone given

    The Sun T2+ keeps multiple memory transfers in flight by using many threads.

    “It keeps multiple memory transfers in flight by using many threads.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingnone given

    The IBM Cell ridge point of operational intensity is 0.65.

    “The IBM Cell ridge point of operational intensity is 0.65.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingreasoning

    The Sun T2+, with the lowest ridge point, was the easiest computer to program for these kernels, due to its large memory bandwidth and its easy-to-understand cores.

    “The Sun T2+, with the lowest ridge point, was easiest to program, due to its large memory bandwidth and its easy-to-understand cores.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing), S4 (based). May combine two claims.

    Findingnone given

    The Opteron X4 has a memory controller on chip, its own path to 667 MHz DDR2 DRAM, and separate paths for coherency.

    “The Opteron X4 has a memory controller on chip, its own path to 667 MHz DDR2 DRAM, and separate paths for coherency.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing). May combine two claims.

    Findingreasoning

    In Figure 1a, a kernel with operational intensity 2 is compute bound and a kernel with operational intensity 1 is memory bound.

    “In Figure 1a, a kernel with operational intensity 2 is compute bound and a kernel with operational intensity 1 is memory bound.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingnone given

    The IBM Cell QS20 has the highest clock rate of the four multicores at 3.2 GHz.

    “The clock rate of IBM Cell QS20 is highest of the four multicores at 3.2 GHz.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingown data

    Figure 2b shows memory bandwidth ceilings of 11 GBytes/sec without software prefetching, 4.8 GBytes/sec without memory affinity optimizations as well, and 2.7 GBytes/sec with only unit stride optimizations.

    “Figure 2b shows the memory bandwidth ceilings of 11 GBytes/sec without software prefetching, 4.8 GBytes/sec without memory affinity optimizations as well, and 2.7 GBytes/sec with only unit stride optimizations.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingreasoning

    Both x86 multicores offer the no-allocate store cache optimization, and Cell does not have this problem since it uses DMA; hence T2+ is the only one with the lower intensity of 0.70.

    “Both x86 multicores offer this cache optimization, and Cell does not have this problem since it uses DMA.Hence, T2+ is the only one with the lower intensity of 0.70.”
    Quote in the paperSubstantial claim
  • May combine two claims.

    Findingown data

    The Intel Xeon's peak double precision performance can be achieved only with operational intensities of at least 6.7, or balance requires 55 floating-point operations for every double precision operand (8 bytes) going to DRAM.

    “However, the Roofline model in Figure 3a shows that this can be achieved only with operational intensities of at least 6.7; started alternatively, balance requires 55 floatingpoint operations for every double precision operand (8 bytes) going to DRAM.”
    Quote in the paperSubstantial claim
  • May combine two claims.

    Findingreasoning

    On Xeon and X4, an entire 128x128 plane fits in cache, increasing temporal locality and improving the operational intensity to 1.64 for the 128^3-point 3-D FFT.

    “On Xeon and X4, an entire 128x128 plane fits in cache, increasing temporal locality and improving the intensity to 1.64 for the 128 3 -point transform.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingown data

    The paper develops Roofline models for 4 recent multicore computers and optimizes 4 floating-point kernels, and shows that the ceilings and rooflines bound the achieved results for all computers and kernels.

    “To demonstrate the utility of the model, we develop Roofline models for 4 recent multicore computers and then optimize 4 floating-point kernels.We then show that the ceilings and rooflines bound the achieved results for all computers and kernels.”
    Quote in the paperSubstantial claim
    • Rests on an assumption: For the four kernels, there is sufficient parallelism to utilize all the cores and threads and to keep them load balanced.
  • Probably not a substantial claim: may not pass S3 (load-bearing), S4 (based). May combine two claims.

    Findingnone given

    For most kernels, achieving parity between multiplies and additions is very difficult, but for a few, parity is natural.

    “For most kernels, achieving parity between multiplies and additions is very difficult, but for a few, parity is natural.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingnone given

    The four multicore computers in Table 1 are all dual-socket systems.

    “Table 1 lists the key characteristics of the four multicore computers of this section, which are all dual-socket systems.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingreasoning

    The Sun T2+ has the highest memory bandwidth, so its ridge point is an exceptionally low operational intensity of just 0.33 Flops per byte.

    “The Sun T2+ has the highest memory bandwidth so the ridge point is an exceptionally low operational intensity of just 0.33 Flops per byte.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingnone given

    The Opteron X4 is the only computer of the four with on-chip L3 caches.

    “The Opteron X4 also uses sophisticated cores with high peak floating-point performance, but it is the only computer of the four with on-chip L3 caches.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingown data

    The computational optimizations and the memory bandwidth optimizations overlap in the middle of Figure 2c.

    “The middle of Figure 2c shows that the computational optimizations and the memory bandwidth optimizations overlap.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingnone given

    The Intel Xeon is the only one of the four machines with a front side bus connecting to a common north bridge chip and memory controller.

    “It is the only one of the four machines with a front side bus connecting to a common north bridge chip and memory controller.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingnone given

    Sparse matrix-vector multiplication is an example where parity between multiplies and additions is natural.

    “One example is sparse matrix-vector multiplication.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingnone given

    The Flops to byte ratio of LBMHD is 0.70 versus 0.25 or less in SpMV.

    “The Flops to byte ratio is 0.70 versus 0.25 or less in SpMV.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingreasoning

    If the working set is small enough for the hardware to filter, the snoop filter nearly doubles the delivered memory bandwidth.

    “If the working set is small enough for the hardware to filter, the snoop filter nearly doubles the delivered memory bandwidth.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing), S4 (based).

    Findingnone given

    There are kernels where operational intensity increases with problem size, such as Dense Matrix and FFT problems.

    “For example, there are kernels where the operational intensity increases with problem size, such as for Dense Matrix and FFT problems.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingown data

    The system modeled in Figure 1a has a peak double precision floating-point performance of 17.6 GFlops/sec and a peak memory bandwidth of 15 GBytes/sec from the paper's benchmark.

    “The system being modeled has a peak double precision floating-point performance of 17.6 GFlops/sec and a peak memory bandwidth of 15 GBytes/sec from our benchmark.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingreasoning

    One exchange involves reading and writing 16 bytes, so its operational intensity is 1/32.

    “One exchange involves reading and writing 16 bytes, so its operational intensity is 1/32.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingreasoning

    The ceilings are measured once, but they can be reordered depending on whether the multiplies and adds are naturally balanced or not in the kernel.

    “The ceilings are measured once, but they can be reordered depending whether the multiplies and adds are naturally balanced or not in the kernel (see Section 4).”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingown data

    All 16 kernel-computer cases validate the Roofline bound and bottleneck model, since the upper and lower ceilings bound performance and the kernels were optimized as the lower ceilings suggest.

    “All 16 cases validate this bound and bottleneck model since the upper and lower ceilings of Roofline bound performance and the kernels were optimized as the lower ceilings suggest.”
    Quote in the paperSubstantial claim
  • May combine two claims.

    Findingreasoning

    With a ridge point close to the Xeon, the Opteron X4 was about as much effort to program, since it benefited from the most types of optimizations.

    “With a ridge point close to the Xeon, the Opteron X4 was about as much effort, since the Opteron X4 benefited from the most types of optimizations.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingown data

    The operational ridge points for the two x86 computers were 4.4 and 6.7, meaning 35 to 55 Flops per 8-byte operand that accesses DRAM.

    “The operational ridge points for the two x86 computers were 4.4 and 6.7-meaning 35 to 55 Flops per 8-byte operand that accesses DRAM”
    Quote in the paperSubstantial claim
  • May combine two claims.

    Findingreasoning

    Cell offered the highest performance on these kernels, but T2+ was the easiest computer on which to achieve its highest performance.

    “Cell offered the highest performance on these kernels, but T2+ was the easiest computer on which to achieve its highest performance.”
    Quote in the paperSubstantial claim
  • May combine two claims.

    Findingreasoning

    The Sun T2+'s L2 cache was only 16-way set associative, which can lead to conflict misses when 64 threads access the cache, as it did for Stencil.

    “The downside was that the L2 cache was only 16-way set associative, which can lead to conflict misses when 64 threads access the cache, as it did for Stencil.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingown data

    For the examples in this paper, the amount of integer code and the integer performance can affect performance.

    “For the examples in this paper, the amount of integer code and the integer performance can affect performance.”
    Quote in the paperNot a substantial claim
  • May combine two claims. The quote only partly states this claim.

    Findingreasoning

    The IBM Cell, with a ridge point almost as low as the Sun T2+, provided two types of challenges: awkward compilation for SIMD instructions and a more challenging memory system.

    “The IBM Cell, with a ridge point almost as low as the Sun T2+, provided two types of challenges.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingown data

    The cache-hit rates of the three multicores with on-chip caches are at least 94% for stencil and 98% for FFT.

    “For example, the cache-hit rates of our three multicores with on-chip caches are at least 94% for stencil and 98% for FFT.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingnone given

    It was awkward to compile for the SIMD instructions of Cell's SPE, so at times the authors needed to help the compiler by inserting intrinsic statements with assembly language instructions into the C code.

    “First, it was awkward to compile for the SIMD instructions of Cell's SPE, so at times we needed to help the compiler by inserting intrinsic statements with assembly language instructions into the C code.”
    Quote in the paperNot a substantial claim
  • May combine two claims. The quote only partly states this claim.

    Findingown data

    For 3-D FFT, the surrounding ceilings are memory bound for Xeon and X4 but compute bound for T2+ and Cell.

    “For FFT, interestingly, the surrounding ceilings are memory bound for Xeon and X4 but compute bound for T2+ and Cell.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingown data

    The metric limiting performance is memory bound in 15 of 16 ceilings for Xeon and X4, while it is almost evenly split between memory and compute bound for T2+ and Cell.

    “The metric that limits performance is in bold: 15 of 16 ceilings are memory bound for Xeon and X4 while it's almost evenly split for T2+ and Cell.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingnone given

    It was not easy to create the fastest version of these numerical methods on the divergent multicore architectures presented here.

    “Our experience, however, is that it was not easy to create the fastest version of these numerical methods on the divergent multicore architectures presented here.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Findingown data

    Autotuning three of the four kernels gets very close to the compulsory memory traffic; the resultant working set is sometimes only a small fraction of the cache.

    “Autotuning three of the four kernels gets very close to the compulsory memory traffic; in fact, the resultant working set is sometimes only a small fraction of the cache.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingcitation

    Three of the results were considered significant enough to be accepted for publication at major conferences.

    “Indeed, three of the results were considered significant enough to be accepted for publication at major conferences [12][25] [26].”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [12][25][26]

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

  • Probably not a substantial claim: may not pass S3 (load-bearing). May combine two claims.

    Findingnone given

    The Intel Xeon was difficult to program because it was hard to understand the memory behavior of the dual front side buses, hard to understand how hardware prefetching worked, and because of the difficulty of getting good SIMD code from the compiler.

    “The Intel Xeon was difficult because it was hard to understand the memory behavior of the dual front side buses, hard to understand how hardware prefetching worked, and because of the difficulty of getting good SIMD code from the compiler.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Findingnone given

    The memory behavior of the Opteron X4 was easier to understand than that of the Xeon.

    “However, the memory behavior of the Opteron X4 was easier to understand than that of the Xeon.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Interpretationnone given

    Like the Roofline, the ceilings only need be measured once per multicore computer.

    “The good news is that like the Roofline, the ceilings only need be measured once per multicore computer.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Premisecitation

    Computational ceilings can come from an optimization manual.

    “Like the computational Roofline, the computational ceilings can come from an optimization manual [2], although it's easy to imagine collecting the necessary parameters from simple microbenchmarks.”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [2] 2. AMD, Software Optimization Guide for AMD Family 10h Processors, Publication 40546, April 2008.

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

  • Classified as probably not a substantial claim.

    Interpretationreasoning

    Operational intensity suggests the DRAM bandwidth needed by a kernel on a particular computer.

    “Thus, operational intensity suggests the DRAM bandwidth needed by a kernel on a particular computer.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing). May combine two claims.

    Study design and conductreasoning

    Cell's 1 GB main memory is too small to hold 512^3 points, so the 512^3 operational intensity result is estimated.

    “(Cell's 1 GB main memory is too small to hold 512 3 points, so we estimate this result.)”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Interpretationnone given

    A Roofline can be used repeatedly on different kernels because it does not vary.

    “Given a Roofline, you can use it repeatedly on different kernels, since the Roofline doesn't vary.”
    Quote in the paperNot a substantial claim
  • Classified as probably not a substantial claim.

    Interpretationnone given

    The x-coordinate of the ridge point is the minimum operational intensity required to achieve maximum performance.

    “The x-coordinate of the ridge point is the minimum operational intensity required to achieve maximum performance.”
    Quote in the paperSubstantial claim
  • Classified as probably not a substantial claim.

    Interpretationreasoning

    The height of the gap between a ceiling and the next higher one is the potential reward for trying that optimization.

    “The height of the gap between a ceiling and the next higher one is the potential reward for trying that optimization.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S2 (checkable). May combine two claims.

    Premisecitation

    The dwarfs will be important to computing in most current and future applications, so designers are advised to make sure they run well on systems they create.

    “The claim is that they will be important to computing in most current and future applications, so designers are advised to make sure they run well on systems that they create, whether or not their creations are parallel.”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [4] 4. K. Asanovic, R. Bodik, B. Catanzaro, J. Gebis, K. Keutzer, D. Patterson, W. Plishker, J. Shalf, S. Williams, K. Yelick. "The landscape of parallel computing research: A view from Berkeley." Tech. Rep. UCB/EECS-2006-183, EECS, U.C. Berkeley, Dec 2006.

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

  • Probably not a substantial claim: may not pass S3 (load-bearing). May combine two claims.

    Interpretationreasoning

    Figure 2 suggests that optimization 1, which improves ILP/SIMD, has a large potential benefit for improving computation on that computer, and optimization 4, which improves memory affinity, has a large potential benefit for improving memory bandwidth on that computer.

    “Thus, Figure 2 suggests that optimization 1, which improves ILP/SIMD, has a large potential benefit for improving computation on that computer, and optimization 4, which improves memory affinity, has a large potential benefit for improving memory bandwidth on that computer.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Interpretationown data

    The operational intensity of LBMHD is high enough that both computational and memory bandwidth optimizations make sense on all multicores but the T2+, whose Roofline ridge point is below that of LBMHD.

    “Figures 3 and4 show that the operational intensity of LBMHD is high enough that both computational and memory bandwidth optimizations make sense on all multicores but the T2+, whose Roofline ridge point is below that of LBMHD.”
    Quote in the paperSubstantial claim
    • Rests on an assumption: LBMHD tends to get a small fraction of peak performance on uniprocessors because of the complexity of the data structures and the irregularity of memory access patterns.
  • May combine two claims.

    Interpretationreasoning

    Memory traffic from conflict and capacity misses can considerably lower the operational intensity of a kernel, so such misses should be eliminated.

    “Memory traffic from conflict and capacity misses can considerably lower the operational intensity of a kernel, so we should try to eliminate such misses.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Interpretationreasoning

    For sparse matrix-vector multiplication, floating-point mix should be placed as the lowest ceiling because it is inherent.

    “For that domain, we would place floating-point mix as the lowest ceiling, since it is inherent.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Interpretationreasoning

    The ridge point suggests the level of difficulty for programmers and compiler writers to achieve peak performance.

    “As we shall see (Section 6.3.5), the ridge point suggests the level of difficulty for programmers and compiler writers to achieve peak performance.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Interpretationreasoning

    Caches affect the number of accesses that go to memory, so optimizations that improve cache performance increase operational intensity.

    “Clearly, caches affect the number of accesses that go to memory, so optimizations that improve cache performance increase operational intensity.”
    Quote in the paperSubstantial claim
  • May combine two claims.

    Interpretationreasoning

    If the ridge point is far to the right, only kernels with very high operational intensity can achieve the maximum performance of that computer; if far to the left, almost any kernel can potentially hit the maximum performance.

    “If the ridge point is far to the right, then only kernels with very high operational intensity can achieve the maximum performance of that computer.If it is far to the left, then almost any kernel can potentially hit the maximum performance.”
    Quote in the paperSubstantial claim
  • May combine two claims.

    Premisereasoning

    The Opteron X2 and Opteron X4 share the same socket, so they have the same DRAM channels and can have the same peak memory bandwidth, although prefetching is better in the X4.

    “To simplify board design, they share the same socket.Hence, they have the same DRAM channels and can thus have the same peak memory bandwidth, although the prefetching is better in the X4.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Premisecitation

    The Seven Dwarfs are seven numerical methods identified by Phil Colella as important for science and engineering for at least the next decade.

    “This expert in scientific computing has identified seven numerical methods that he believes will be important for science and engineering for at least the next decade.Because he picked seven, they have become known as the Seven Dwarfs.”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [10] 10. P. Colella, "Defining Software Requirements for Scientific Computing," presentation, 2004.

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Study design and conductnone given

    Memory ceilings require running experiments on each computer to determine the gap between them.

    “The memory ceilings require running experiments on each computer to determine the gap between them (see Appendix A.1).”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Interpretationreasoning

    A kernel whose operational intensity hits the flat part of the roof is compute bound; one that hits the slanted part is memory bound.

    “If we think of operational intensity as a column that hits the roof, either it hits the flat part of the roof, which means performance is compute bound, or it hits the slanted part of the roof, which means performance is ultimately memory bound.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing). May combine two claims.

    Interpretationreasoning

    Kernel 1's vertical line falls below the floating-point imbalance optimization, so optimization 2 may be skipped.

    “Note that the Kernel 1 vertical lines falls below the floating-point imbalance optimization, so optimization 2 may be skipped.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Interpretationreasoning

    The operational intensity of a kernel determines the optimization region and thus which optimizations to try.

    “The operational intensity of a kernel determines the optimization region, and thus which optimizations to try.”
    Quote in the paperSubstantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Interpretationreasoning

    If a kernel fell in the yellow triangle on the lower left, the model would suggest trying just memory optimizations.

    “If a kernel fell in the yellow triangle on the lower left, the model would suggest trying just memory optimizations.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing). May combine two claims.

    Interpretationreasoning

    Kernel 2 falls in the blue trapezoid on the right, which suggests working only on the computational optimizations.

    “For example, Kernel 2 falls in the blue trapezoid on the right, which suggests working only on the computational optimizations.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Interpretationreasoning

    The high ratio for Intel Xeon is due in part to the limitation of the front side bus, which also carries coherency traffic that can consume half the bus bandwidth.

    “This high ratio is due in part to the limitation of the front side bus, which also carries coherency traffic that can consume half the bus bandwidth.”
    Quote in the paperNot a substantial claim
  • Classified as probably not a substantial claim.

    Interpretationreasoning

    Operational intensity tells us which ceilings to look at.

    “Operational intensity tells us which ceilings to look at.”
    Quote in the paperSubstantial claim
  • May combine two claims.

    Interpretationreasoning

    Compulsory misses set the minimum memory traffic and hence the highest possible operational intensity.

    “Compulsory misses set the minimum memory traffic and hence the highest possible operational intensity.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing). May combine two claims.

    Interpretationreasoning

    Kernel 1 falls in the green parallelogram in the middle, which suggests trying both types of optimizations.

    “Kernel 1 falls in the green (= yellow + blue) parallelogram in the middle, which suggests trying both types of optimizations.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing), S4 (based). May combine two claims.

    Interpretationnone given

    The order of the ceilings suggests the optimization order, so ceilings are ranked from bottom to top: those most likely to be realized by a compiler or with little effort by a programmer are at the bottom and those difficult to implement or inherently lacking in a kernel are at the top.

    “The order of the ceilings suggest the optimization order, so we rank the ceilings from bottom to top: those most likely to be realized by a compiler or with little effort by a programmer are at the bottom and those that are difficult to be implemented by a programmer or inherently lacking in a kernel are at the top.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S2 (checkable), S3 (load-bearing), S4 (based).

    Interpretationnone given

    There may be a synergistic relationship between performance counters and the Roofline model.

    “In fact, we believe there may be a synergistic relationship between performance counters and the Roofline model.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing). May combine two claims.

    Interpretationreasoning

    Relative to other computers, the Sun T2+ executes more integer instructions and executes them at a lower rate, which hurts overall performance.

    “Relative to others, T2+ executes more integer instructions and executes them at a lower rate, which hurts overall performance.”
    Quote in the paperNot a substantial claim
    • Rests on an assumption: The Sun UltraSPARC T2+ fetches two instructions per core per clock cycle and lacks the x86 SIMD instructions that can operate on two double-precision floating-point operands at a time.
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Interpretationnone given

    The heights of the ceilings in this paper document the maximum potential gain of a code performing this optimization.

    “Note that the heights of the ceilings in this paper document the maximum potential gain of a code performing this optimization.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing). May combine two claims.

    Interpretationreasoning

    If the working set fits in the L2 cache, the diagonal Roofline could be L2 cache bandwidth instead of DRAM bandwidth, and the operational intensity on the X-axis would be based on Flops per L2 cache byte accessed.

    “If the working set fits in the L2 cache, the diagonal Roofline could be L2 cache bandwidth instead of DRAM bandwidth, and the operational intensity on the X-axis would be based on Flops per L2 cache byte accessed.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Premisecitation

    Jike Chong used the Roofline model to keep track of the platforms' peak arithmetic throughput and L1, L2, and DRAM bandwidths.

    “He used the Roofline model to keep track the platforms' peak arithmetic throughput and L1, L2, and DRAM bandwidths.”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [9] 9. J. Chong, Private Communication, 2008.

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

  • Probably not a substantial claim: may not pass S3 (load-bearing), S4 (based).

    Interpretationnone given

    The Roofline model can work for other kernels where the performance is a function of different performance metrics.

    “However, we believe the Roofline model can work for other kernels where the performance was a function of different performance metrics.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Premisecitation

    For option pricing with an explicit PDE formulation, the working set is too large to fit into cache, and the Roofline model helps to indicate the extent to which cache blocking is necessary to extract peak arithmetic performance.

    “For option pricing with an explicit PDE formulation, the working set is too large to fit into cache, and the Roofline model helps to indicate the extent to which cache blocking is necessary to extract peak arithmetic performance.”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [9] 9. J. Chong, Private Communication, 2008.

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

  • Probably not a substantial claim: may not pass S3 (load-bearing).

    Premisecitation

    Jike Chong ported two financial PDE solvers to four other multicore computers: the Intel Penryn and Larrabee and NVIDIA G80 and GTX280.

    “For example, Jike Chong ported two financial PDE solvers to four other multicore computers: the Intel Penryn and Larrabee and NVIDIA G80 and GTX280.[9]”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [9] 9. J. Chong, Private Communication, 2008.

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

  • May combine two claims.

    Interpretationreasoning

    The diagonal memory performance line would move up, and the ridge point would move to the left.

    “The diagonal memory performance line would move up, and the ridge point would surely move to the left.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S2 (checkable), S3 (load-bearing).

    Interpretationcitation

    The requirements for automatic creation of a Roofline model could guide the designer as to which metrics should be collected when faced with hundreds of candidates but a limited hardware budget.

    “The requirements for automatic creation of a Roofline model could guide the designer as to which metrics should be collected when faced with literally hundreds of candidates but a limited hardware budget.[6]”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [6] 6. S. Bird et al, "A Case for Sensible Performance Counters," submitted to the First USENIX Workshop on Hot Topics in Parallelism (HotPar '09), Berkeley CA, March 2009.

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

  • Probably not a substantial claim: may not pass S2 (checkable), S3 (load-bearing), S4 (based). May combine two claims.

    Interpretationnone given

    Roofline models can offer insights to other types of multicore systems such as vector processors and GPUs; other kernels such as sort and ray tracing; other computational metrics such as pair-wise sorts per second and frames per second; and other traffic metrics such as L3 cache bandwidth and I/O bandwidth.

    “We believe Roofline models can offer insights to other types of multicore systems such as vector processors and GPUs (Graphical Processing Units); other kernels such as sort and ray tracing; other computational metrics such as pair-wise sorts per second and frames per second; and other traffic metrics such as L3 cache bandwidth and I/O bandwidth.”
    Quote in the paperNot a substantial claim
  • May combine two claims.

    Interpretationreasoning

    Increasing cache size helps only with capacity misses and possibly conflict misses, so a larger cache can have no effect on the operational intensity for the three autotuned kernels.

    “Increasing cache size helps only with capacity misses and possibly conflict misses, so a larger cache can have no effect on the operational intensity for those three kernels.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S2 (checkable). May combine two claims.

    Interpretationnone given

    Just the graphical Roofline offers insights into the difficulty of achieving the peak performance of a computer, as it makes obvious when a computer is imbalanced.

    “Just the graphical Roofline offers insights into the difficulty of achieving the peak performance of a computer, as it makes obvious when a computer is imbalanced.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing). May combine two claims.

    Study design and conductnone given

    The roofline and ceilings were measured using microbenchmarks, but performance counters could have been used.

    “We measured the roofline and ceilings using microbenchmarks, but we could have used performance counters (see Appendix A.1 and A.3).”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing), S4 (based). May combine two claims.

    Interpretationreasoning

    DMA for a local store is easier to program, to achieve good memory performance, and to overlap with computation than prefetching to caches.

    “DMA for a local store is easier to program, to achieve good memory performance, and to overlap with computation than prefetching to caches.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S2 (checkable), S3 (load-bearing).

    Premisecitation

    The sea change from sequential computing to parallel computing is increasing the diversity of computers that programmers must confront in making correct, efficient, scalable, and portable software.

    “The sea change from sequential computing to parallel computing is increasing the diversity of computers that programmers must confront in making correct, efficient, scalable, and portable software [4].”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [4] 4. K. Asanovic, R. Bodik, B. Catanzaro, J. Gebis, K. Keutzer, D. Patterson, W. Plishker, J. Shalf, S. Williams, K. Yelick. "The landscape of parallel computing research: A view from Berkeley." Tech. Rep. UCB/EECS-2006-183, EECS, U.C. Berkeley, Dec 2006.

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

  • May combine two claims.

    Interpretationreasoning

    While the bandwidth orientation of the Roofline model works for uniprocessors, it is even more helpful for multicores.

    “While the bandwidth orientation of the Roofline model certainly works for uniprocessors, it is even more helpful for multicores.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S2 (checkable), S3 (load-bearing). May combine two claims.

    Interpretationreasoning

    The awkwardness of compiling for Cell's SPE SIMD instructions reflects the immaturity of the IBM compiler as well as the difficulty of compiling for these SIMD instructions.

    “This comment reflects the immaturity of the IBM compiler as well as the difficulty of compiling for these SIMD instructions.”
    Quote in the paperNot a substantial claim
  • Probably not a substantial claim: may not pass S3 (load-bearing). May combine two claims.

    Premisecitation

    For the option-pricing problem with an implicit PDE solver, the working set is small enough to fit into L1 and the L1 bandwidth is sufficient to support peak arithmetic throughput, so the Roofline model indicates that no optimization is necessary.

    “Specifically, for the option-pricing problem with an implicit PDE solver, the working set is small enough to fit into L1 and the L1 bandwidth is sufficient to support peak arithmetic throughput, so the Roofline model indicates that no optimization is necessary.”
    Quote in the paperNot a substantial claim0 of 1 sources checked
    • cites [9] 9. J. Chong, Private Communication, 2008.

      Couldn’t be matched to a paper in Crossref, so it can’t be checked.

90 of 90
  • The paper relies on this without support.

    The working sets of the kernels considered do not fit fully in on-chip caches.

    “The working sets of the kernels we consider here do not fit fully in onchip caches, so peak memory performance is defined by the memory system behind the caches.”
  • The paper relies on this without support.

    For the four kernels, there is sufficient parallelism to utilize all the cores and threads and to keep them load balanced.

    “For these kernels, there is sufficient parallelism to utilize all the cores and threads and to keep them load balanced.”
  • The authors state this as an assumption.

    Operational intensity is fixed.

    “Thus far, we have been assuming that the operational intensity is fixed, but that is not really the case.”
  • The paper relies on this without support.

    Optimizing for unit stride memory accesses engages hardware prefetching, which significantly increases memory bandwidth.

    “Optimizing for unit stride memory accesses engages hardware prefetching, which significantly increases memory bandwidth.”
  • The paper relies on this without support.

    Peak floating-point performance typically requires an equal number of simultaneous floating-point additions and multiplications.

    “Peak floating-point performance typically also requires an equal number of simultaneous floating-point additions and multiplications, since many computers have multiply-add instructions or because they have an equal number of adders and multipliers.”
  • The paper relies on this without support.

    On some computers, software prefetching delivers more bandwidth than hardware prefetching alone.

    “On some computers, software prefetching delivers more bandwidth than hardware prefetching alone.”
  • The paper relies on this without support.

    Conventional implementations of SpMV often run at less than 10% of peak floating-point performance in uniprocessors.

    “Alas, conventional implementations often run at less than 10% of peak floating-point performance in uniprocessors.”
  • The paper relies on this without support.

    LBMHD tends to get a small fraction of peak performance on uniprocessors because of the complexity of the data structures and the irregularity of memory access patterns.

    “Like SpMV, LBMHD tends to get a small fraction of peak performance on uniprocessors because of the complexity of the data structures and the irregularity of memory access patterns.”
  • The paper relies on this without support.

    The Sun UltraSPARC T2+ fetches two instructions per core per clock cycle and lacks the x86 SIMD instructions that can operate on two double-precision floating-point operands at a time.

    “For example, the Sun UltraSPARC T2+ fetches two instructions per core per clock cycle, and it doesn't have the SIMD instructions of the x86 that can operate on two double-precision floating-point operands at a time.”
  • The paper relies on this without support.

    The four multicore designs studied (AMD Opteron X4, Intel Xeon, IBM Cell, Sun T2+) are representative of recent multicore architectures.

    “We applied the model to four kernels from the seven dwarfs [10][4] to four recent multicore designs: the AMD Opteron X4, Intel Xeon, IBM Cell, and Sun T2+.”
10 of 10

Self-check

Percentages, sums and reported differences re-computed from the paper’s own numbers.

Each contradiction between two passages listed here was confirmed by an independent check.

  • Sun FFT operational intensity disagrees with its achieved rates

    Minor

    The reported compute and memory rates give 9.2 ÷ 10.0 = 0.92 Flops per byte, rather than the listed 1.09.

    Reported 1.09 · recomputed 0.92

  • One achieved result falls below its stated lower ceiling

    Minor

    For the Sun T2+ FFT, achieved performance is listed as 9.2 GFlop/s while its lower ceiling is 9.3 GFlop/s. That contradicts the claim that the ceilings bound performance in all 16 cases.

2 of 2

Cites

The publisher hasn’t deposited this paper’s reference list.

Research works printed but not linked: 4

  1. [1]1. V. Adve, Analyzing the Behavior and Performance of Parallel Programs, PhD thesis, Univ. of Wisconsin, 1993.
  2. [6]6. S. Bird et al, "A Case for Sensible Performance Counters," submitted to the First USENIX Workshop on Hot Topics in Parallelism (HotPar '09), Berkeley CA, March 2009.
  3. [17]17. J. Hennessy and D. Patterson, Computer Architecture: A Quantitative Approach, 4th ed., Boston, MA: Morgan Kaufmann Publishers, 2007.
  4. [24]24. S. Williams, Autotuning Performance on Multicore Computers, PhD thesis, U.C. Berkeley, 2008.

Cited by

Sorted by citations

Authors
Williams, S., Waterman, A., & Patterson, D.
Affiliations
University of California, Berkeley (US)
Venue
Lawrence Berkeley National Laboratory
Published
2009-09-01
OpenAlex
W4214826206
Cited by
110
References
0
Citations by year
2026: 2 · 2025: 7 · 2024: 4 · 2023: 7 · 2022: 9 · 2021: 9 · 2020: 20 · 2019: 24 · 2018: 5 · 2017: 2 · 2016: 4 · 2015: 4 · 2014: 2 · 2013: 2 · 2012: 2
Type
report
Language
en
Open access
Locations
  • Lawrence Berkeley National Laboratory (publishedVersion)
  • OSTI OAI (U.S. Department of Energy Office of Scientific and Technical Information) (submittedVersion)
  • University of North Texas Digital Library (University of North Texas) (submittedVersion)
  • UC Berkeley (submittedVersion)
  • eScholarship (California Digital Library) (submittedVersion)
Funders
  • U.S. Department of Energy (-AC02-05CH11231, 05CH11231, DE-AC02-)
  • Office of Science (AC02-05CH11231, DE-AC02, 05CH11231)
  • Advanced Scientific Computing Research (DE-AC02-05CH11231, AC02-05CH11231)
Topics
  • Physical Sciences › Computer Science › Hardware and Architecture › Parallel Computing and Optimization Techniques
  • Physical Sciences › Computer Science › Computer Graphics and Computer-Aided Design › Computer Graphics and Visualization Techniques
  • Physical Sciences › Computer Science › Computational Theory and Mathematics › Numerical Methods and Algorithms
Keywords
roofline model, performance modeling, floating-point performance, multi-core processors, parallel software, hardware-software co-optimization, performance visualization

About these checks

Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.

Claims read by deepseek-v4.1-flash under definition version 3 (extract-v3) on 2026-10-11.

Classified by jev-1.13-20260917 (gold-guideline-v0.2) on 2026-10-11.

Statistics and arithmetic are recomputed, not judged.

Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.

What counts as a claim ›How we measure confidence ›How we check this ›

Are you an author, or do you see a problem with this page? Request a review