=================
 TRMM
=================

Matrix A: 
  A triangular upper matrix with unit diagonal elements.

Code:
 for (i=0; i<=N-1; i++)
   for (j=0; j<=N-1; j++)
     for (k=i+1; k<=N-1; k++)
       B[i][j] = B[i][j] + alpha*A[i][k]*B[k][j];

Total number of operations = 3*N*N*(N-1)/2

*********************
Sequential version
*********************
N   icc -fast     mkl       pluto       pluto+ancc
----------------------------------------------------------------------------------------
seconds:
  256    0.014798    0.002238    0.008403    0.004141
  512    0.261372    0.016535    0.047659    0.024457
 1024    3.764763    0.132238    0.560089    0.211039
 2048   33.519237    1.013730    3.161811    1.563086
 4096  351.536036    8.040704   26.110516   12.524058
gflops:
  256  1.69  11.20  2.98  6.05
  512  0.77  12.15  4.22  8.22
 1024  0.43  12.17  2.87  7.62
 2048  0.38  12.70  4.07  8.24
 4096  0.29  12.82  3.95  8.23

 IVEC = True
 PAR = True
 PERM = [1, 2, 0]
 SCREP = True
 T1_1 = 256
 T1_2 = 64
 T1_3 = 32
 T2_1 = 32
 T2_2 = 1
 T2_3 = 16
 U1 = 1
 U2 = 8
 U3 = 4



*********************
Parallel version
*********************
N=4096
----------------------------------------------------------------------------------------
 #cores   icc -fast -parallel     mkl   pluto   pluto+ancc
----------------------------------------------------------------------------------------
seconds:
  1   350.585593    8.009475   26.192941   12.529865
  2   171.687596    4.012372   13.286167    6.408742
  3   118.897650    2.799546    9.763037    6.264220
  4    92.061053    2.113248    6.934017    3.250041
gflops:
  1   0.29   12.87    3.93    8.23
  2   0.60   25.68    7.76   16.08
  3   0.87   36.81   10.56   16.45
  4   1.12   48.77   14.86   31.71

 IVEC = True
 PAR = True
 PERM = [1, 2, 0]
 SCREP = True
 T1_1 = 128
 T1_2 = 128
 T1_3 = 256
 T2_1 = 8
 T2_2 = 4
 T2_3 = 1
 U1 = 1
 U2 = 11
 U3 = 8


----------------------

 IVEC = True
 PAR = True
 PERM = [1, 2, 0]
 SCREP = True
 T1_1 = 64
 T1_2 = 64
 T1_3 = 32
 T2_1 = 8
 T2_2 = 2
 T2_3 = 8
 U1 = 1
 U2 = 8
 U3 = 8



N=2048, 4 cores: 
 0.818879

 IVEC = True
 PAR = True
 SCREP = True
 T1_1 = 64
 T1_2 = 64
 T1_3 = 64
 T2_1 = 8
 T2_2 = 8
 T2_3 = 8
 U1 = 8
 U2 = 1
 U3 = 1


