Difference between revisions of "PipeliningIssues"

From HPC Wiki
Jump to navigation Jump to search
(Created page with "== Description == == Symptoms == == Detection == == Possible optimizations and/or fixes == == Applicable applications or algorithms or kernels ==")
 
m
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
 +
[[Category:Performance Pattern]]
 
== Description ==
 
== Description ==
 +
Modern CPU cores use pipelines to overlap different instructions to optimally distribute work over the execution units. The pattern "Pipelining issues" describes a problem in the pipeline which causes the reduction of the overlap and consequently less utilization.
 +
  
 
== Symptoms ==
 
== Symptoms ==
 +
* In-core throughput far away from design limit
 +
* performance insensitive to data set size
  
  
 
== Detection ==
 
== Detection ==
 +
* Large integral ratio of cycles to specific instruction count(s)
 +
* bad (high) CPI
 +
 +
LIKWID performance groups: FLOPS_DP, FLOPS_SP, DATA and CLOCK
  
  

Latest revision as of 08:31, 4 September 2019

Description

Modern CPU cores use pipelines to overlap different instructions to optimally distribute work over the execution units. The pattern "Pipelining issues" describes a problem in the pipeline which causes the reduction of the overlap and consequently less utilization.


Symptoms

  • In-core throughput far away from design limit
  • performance insensitive to data set size


Detection

  • Large integral ratio of cycles to specific instruction count(s)
  • bad (high) CPI

LIKWID performance groups: FLOPS_DP, FLOPS_SP, DATA and CLOCK


Possible optimizations and/or fixes

Applicable applications or algorithms or kernels