Difference between revisions of "PipeliningIssues"

From HPC Wiki
Jump to navigation Jump to search
m
 
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.
 
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.

Latest revision as of 07: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