9.2.5 : The compilation

Let's compile :

$ make

-- Configuring done

-- Generating done

-- Build files have been written to: ExampleOptimisation/build

[ 2%] Built target hadamard_product_O2

[ 4%] Built target hadamard_product_O1

[ 6%] Built target hadamard_product_vectorize

[ 8%] Built target hadamard_product_O0

[ 10%] Built target hadamard_product_O3

[ 13%] Built target hadamard_product_Ofast

[ 15%] Built target hadamard_product_intrinsics

[ 17%] Built target asterics_hpc

[ 19%] Built target saxpy_O2

[ 21%] Built target saxpy_O0

[ 23%] Built target saxpy_O3

[ 26%] Built target saxpy_O1

[ 28%] Built target saxpy_Ofast

[ 32%] Built target saxpy_vectorize

[ 34%] Built target saxpy_intrinsics

[ 36%] Built target reduction_real_O2

[ 41%] Built target reduction_real_intrinsics_interleave8_O3

[ 45%] Built target reduction_real_O1

[ 47%] Built target reduction_real_Ofast

[ 50%] Built target reduction_O0

[ 52%] Built target reduction_O1

[ 54%] Built target reduction_O2

[ 58%] Built target reduction_O3

[ 63%] Built target reduction_real_intrinsics_interleave4_O3

[ 67%] Built target reduction_real_vectorize_Ofast

[ 69%] Built target reduction_real_intrinsics_interleave2_O3

[ 73%] Built target reduction_real_intrinsics_O3

[ 78%] Built target reduction_real_O3

[ 80%] Built target reduction_real_O0

[ 82%] Built target reduction_real_vectorize_O3

Scanning dependencies of target barycentre_base_Ofast

[ 84%] Building CXX object 5-Barycentre/CMakeFiles/barycentre_base_Ofast.dir/barycentre.cpp.o

[ 84%] Building CXX object 5-Barycentre/CMakeFiles/barycentre_base_Ofast.dir/main_barycentre.cpp.o

[ 86%] Linking CXX executable barycentre_base_Ofast

[ 86%] Built target barycentre_base_Ofast

Scanning dependencies of target barycentre_base_O3

[ 86%] Building CXX object 5-Barycentre/CMakeFiles/barycentre_base_O3.dir/barycentre.cpp.o

[ 89%] Building CXX object 5-Barycentre/CMakeFiles/barycentre_base_O3.dir/main_barycentre.cpp.o

[ 89%] Linking CXX executable barycentre_base_O3

[ 89%] Built target barycentre_base_O3

Scanning dependencies of target barycentre_base_O0

[ 91%] Building CXX object 5-Barycentre/CMakeFiles/barycentre_base_O0.dir/barycentre.cpp.o

[ 91%] Building CXX object 5-Barycentre/CMakeFiles/barycentre_base_O0.dir/main_barycentre.cpp.o

[ 93%] Linking CXX executable barycentre_base_O0

[ 93%] Built target barycentre_base_O0

Scanning dependencies of target barycentre_base_O1

[ 93%] Building CXX object 5-Barycentre/CMakeFiles/barycentre_base_O1.dir/barycentre.cpp.o

[ 95%] Building CXX object 5-Barycentre/CMakeFiles/barycentre_base_O1.dir/main_barycentre.cpp.o

[ 95%] Linking CXX executable barycentre_base_O1

[ 95%] Built target barycentre_base_O1

Scanning dependencies of target barycentre_base_O2

[ 97%] Building CXX object 5-Barycentre/CMakeFiles/barycentre_base_O2.dir/barycentre.cpp.o

[ 97%] Building CXX object 5-Barycentre/CMakeFiles/barycentre_base_O2.dir/main_barycentre.cpp.o

[100%] Linking CXX executable barycentre_base_O2

[100%] Built target barycentre_base_O2



Let's get the performances :

$ make plot_all

[ 1%] Built target asterics_hpc

[ 3%] Built target barycentre_base_O2

[ 6%] Built target barycentre_base_Ofast

[ 7%] Built target barycentre_base_O3

[ 9%] Built target barycentre_base_O0

[ 10%] Built target barycentre_base_O1

Scanning dependencies of target plot_barycentreBase

[ 10%] Run barycentre_base_Ofast program

Barycentre

evaluateBarycentre : nbElement = 1000, cyclePerElement = 6.725 cy/el, elapsedTime = 6725 cy

evaluateBarycentre : nbElement = 2000, cyclePerElement = 6.7595 cy/el, elapsedTime = 13519 cy

evaluateBarycentre : nbElement = 3000, cyclePerElement = 6.835 cy/el, elapsedTime = 20505 cy

evaluateBarycentre : nbElement = 5000, cyclePerElement = 6.794 cy/el, elapsedTime = 33970 cy

evaluateBarycentre : nbElement = 10000, cyclePerElement = 6.8 cy/el, elapsedTime = 68000 cy

[ 10%] Run barycentre_base_O0 program

Barycentre

evaluateBarycentre : nbElement = 1000, cyclePerElement = 9.644 cy/el, elapsedTime = 9644 cy

evaluateBarycentre : nbElement = 2000, cyclePerElement = 9.7365 cy/el, elapsedTime = 19473 cy

evaluateBarycentre : nbElement = 3000, cyclePerElement = 9.80967 cy/el, elapsedTime = 29429 cy

evaluateBarycentre : nbElement = 5000, cyclePerElement = 9.7988 cy/el, elapsedTime = 48994 cy

evaluateBarycentre : nbElement = 10000, cyclePerElement = 9.776 cy/el, elapsedTime = 97760 cy

[ 12%] Run barycentre_base_O1 program

Barycentre

evaluateBarycentre : nbElement = 1000, cyclePerElement = 6.716 cy/el, elapsedTime = 6716 cy

evaluateBarycentre : nbElement = 2000, cyclePerElement = 6.854 cy/el, elapsedTime = 13708 cy

evaluateBarycentre : nbElement = 3000, cyclePerElement = 6.80167 cy/el, elapsedTime = 20405 cy

evaluateBarycentre : nbElement = 5000, cyclePerElement = 6.7828 cy/el, elapsedTime = 33914 cy

evaluateBarycentre : nbElement = 10000, cyclePerElement = 6.775 cy/el, elapsedTime = 67750 cy

[ 12%] Run barycentre_base_O2 program

Barycentre

evaluateBarycentre : nbElement = 1000, cyclePerElement = 6.721 cy/el, elapsedTime = 6721 cy

evaluateBarycentre : nbElement = 2000, cyclePerElement = 6.7475 cy/el, elapsedTime = 13495 cy

evaluateBarycentre : nbElement = 3000, cyclePerElement = 6.74933 cy/el, elapsedTime = 20248 cy

evaluateBarycentre : nbElement = 5000, cyclePerElement = 6.7682 cy/el, elapsedTime = 33841 cy

evaluateBarycentre : nbElement = 10000, cyclePerElement = 6.7642 cy/el, elapsedTime = 67642 cy

[ 13%] Run barycentre_base_O3 program

Barycentre

evaluateBarycentre : nbElement = 1000, cyclePerElement = 6.796 cy/el, elapsedTime = 6796 cy

evaluateBarycentre : nbElement = 2000, cyclePerElement = 6.7355 cy/el, elapsedTime = 13471 cy

evaluateBarycentre : nbElement = 3000, cyclePerElement = 6.74967 cy/el, elapsedTime = 20249 cy

evaluateBarycentre : nbElement = 5000, cyclePerElement = 6.8182 cy/el, elapsedTime = 34091 cy

evaluateBarycentre : nbElement = 10000, cyclePerElement = 6.7805 cy/el, elapsedTime = 67805 cy

[ 14%] Call gnuplot barycentreBase

[ 14%] Built target plot_barycentreBase

[ 15%] Built target hadamard_product_intrinsics

[ 16%] Built target hadamard_product_vectorize

[ 18%] Built target hadamard_product_O3

[ 20%] Built target plot_hadamardIntrinsics

[ 21%] Built target hadamard_product_Ofast

[ 22%] Built target hadamard_product_O2

[ 24%] Built target hadamard_product_O1

[ 25%] Built target hadamard_product_O0

[ 28%] Built target plot_hadamardBase

[ 31%] Built target plot_hadamardVectorize

[ 32%] Built target saxpy_intrinsics

[ 33%] Built target saxpy_O3

[ 36%] Built target saxpy_vectorize

[ 38%] Built target plot_saxpyIntrinsics

[ 39%] Built target plot_saxpyVectorize

[ 40%] Built target saxpy_Ofast

[ 42%] Built target saxpy_O2

[ 43%] Built target saxpy_O0

[ 44%] Built target saxpy_O1

[ 48%] Built target plot_saxpyBase

[ 50%] Built target reduction_real_intrinsics_O3

[ 53%] Built target reduction_real_intrinsics_interleave8_O3

[ 54%] Built target reduction_real_Ofast

[ 56%] Built target reduction_real_intrinsics_interleave4_O3

[ 59%] Built target reduction_real_vectorize_Ofast

[ 60%] Built target reduction_real_intrinsics_interleave2_O3

[ 65%] Built target plot_reductionIntrinsicsInterleave8

[ 66%] Built target reduction_real_vectorize_O3

[ 68%] Built target reduction_real_O3

[ 72%] Built target plot_reductionVectorize

[ 74%] Built target reduction_O3

[ 75%] Built target reduction_O0

[ 77%] Built target reduction_O1

[ 78%] Built target reduction_O2

[ 81%] Built target plot_reductionBase

[ 83%] Built target reduction_real_O0

[ 84%] Built target reduction_real_O2

[ 86%] Built target reduction_real_O1

[ 90%] Built target plot_reductionReal

[ 92%] Built target plot_reductionIntrinsicsInterleave2

[ 96%] Built target plot_reductionIntrinsicsInterleave4

[100%] Built target plot_reductionIntrinsics

[100%] Built target plot_all