Difference between revisions of "CodeCompositionExpensive"

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 ==
 +
The pattern "Code composition - expensive instructions" can be used to describe what happens if you use expensive instructions although there are cheaper ways.
  
 
== Symptoms ==
 
== Symptoms ==
 +
Like [[InstructionOverhead|Instruction Overhead]].
 +
 +
For a piece of high-level code, the compiler outputs a lot of instructions although is could be done in less. One common example are non-vectorized instructions.
  
  
 
== Detection ==
 
== Detection ==
 +
High CPI if the problem is large-latency arithmetic
  
  
 
== Possible optimizations and/or fixes ==
 
== Possible optimizations and/or fixes ==
 +
Reduce complexity to that the compiler can generate better code
  
  
 
== Applicable applications or algorithms or kernels ==
 
== Applicable applications or algorithms or kernels ==

Latest revision as of 16:17, 3 September 2019

Description

The pattern "Code composition - expensive instructions" can be used to describe what happens if you use expensive instructions although there are cheaper ways.

Symptoms

Like Instruction Overhead.

For a piece of high-level code, the compiler outputs a lot of instructions although is could be done in less. One common example are non-vectorized instructions.


Detection

High CPI if the problem is large-latency arithmetic


Possible optimizations and/or fixes

Reduce complexity to that the compiler can generate better code


Applicable applications or algorithms or kernels