2018-01-11

izard: (Default)
2018-01-11 09:40 am

A very interesting s/w performance optimiztion case.

Here is a simple pseudocode:
function f(array_A)
{
  SoA = transform1(A);
  for i=0 to 4
    array_B=load_array_from_SoA(SoA, i);
    array_C=transform2(array_B);
    array_D+=transform3(array_C);
  return transform4(array_D);
}

SoA is a structure of arrays.
transform functions take an array, make a lot of calculations, return transformed array.
Baseline performance: let's say 200 seconds.
Read more... )