Chapter 7.1 : Compilation

Appelons cmake :

cmake ..

-- The C compiler identification is GNU 11.3.0

-- The CXX compiler identification is GNU 11.3.0

-- Detecting C compiler ABI info

-- Detecting C compiler ABI info - done

-- Check for working C compiler: /usr/bin/gcc - skipped

-- Detecting C compile features

-- Detecting C compile features - done

-- Detecting CXX compiler ABI info

-- Detecting CXX compiler ABI info - done

-- Check for working CXX compiler: /usr/bin/g++ - skipped

-- Detecting CXX compile features

-- Detecting CXX compile features - done

-- Found HDF5: /usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5.so;/usr/lib/x86_64-linux-gnu/libcrypto.so;/usr/lib/x86_64-linux-gnu/libcurl.so;/usr/lib/x86_64-linux-gnu/libpthread.a;/usr/lib/x86_64-linux-gnu/libsz.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libdl.a;/usr/lib/x86_64-linux-gnu/libm.so;/usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5_cpp.so;/usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5.so;/usr/lib/x86_64-linux-gnu/libcrypto.so;/usr/lib/x86_64-linux-gnu/libcurl.so;/usr/lib/x86_64-linux-gnu/libpthread.a;/usr/lib/x86_64-linux-gnu/libsz.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libdl.a;/usr/lib/x86_64-linux-gnu/libm.so (found version "1.10.7") found components: C CXX

-- HDF5_CXX_LIBRARIES = /usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5_cpp.so;/usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5.so;/usr/lib/x86_64-linux-gnu/libcrypto.so;/usr/lib/x86_64-linux-gnu/libcurl.so;/usr/lib/x86_64-linux-gnu/libpthread.a;/usr/lib/x86_64-linux-gnu/libsz.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libdl.a;/usr/lib/x86_64-linux-gnu/libm.so

-- Program PERFORMANCE_WITH_STENCIL version 1.0.0

-- SELF_TESTS_MODE = yes

-- Found STRINGUTILS headers : /home/pierre/usr/include/StringUtils

-- Found lib STRINGUTILS : /home/pierre/usr/lib

-- Found FILEPARSER headers : /home/pierre/usr/include/FileParser

-- Found lib FILEPARSER : /home/pierre/usr/lib

-- Found OPTIONPARSER headers : /home/pierre/usr/include/OptionParser

-- Found lib OPTIONPARSER : /home/pierre/usr/lib

-- Found MICROBENCHMARK headers : /home/pierre/usr/include/MicroBenchmark

-- Found lib MICROBENCHMARK : /home/pierre/usr/lib

-- Classical mode for performance test refreshing : NO_PERF_REFRESH = no

-- Found DATASTREAM headers : /home/pierre/usr/include/DataStream

-- Found lib DATASTREAM : /home/pierre/usr/lib

-- Found TENSORALLOC headers : /home/pierre/usr/include/TensorAlloc

-- Found lib TENSORALLOC : /home/pierre/usr/lib

-- Found INTRINSICSGENERATOR headers : /home/pierre/usr/include/IntrinsicsGenerator

-- Found PHOENIXPNG headers : /home/pierre/usr/include/PhoenixPNG

-- Found lib PHOENIXPNG : /home/pierre/usr/lib

-- Automatic searching for architecture flags

-- Get LINUX extensions

-- Find SSSE3

-- Find SSE4

-- Find AVX

-- Find AVX2

-- tmp FLAG_VECTORIZED_COMPILATION = -mavx2

-- global PHOENIX_FLAG_VECTORIZED_COMPILATION = -mavx2

-- Automatic searching for architecture flags

-- Get LINUX extensions

-- Find SSSE3

-- Find SSE4

-- Find AVX

-- Find AVX2

-- CMAKE_VERSION = 3.22.1, MODE_NUNBER = '5'

-- CPU_MODEL_NAME = 12th Gen Intel(R) Core(TM) i7-12850HX

-- CPU_SIBLINGS = 24

-- NB_CORE = 16

-- CACHE_L1_DATA = 49152 B

-- CACHE_L1_INSTRUCTION = 32768 B

-- CACHE_L2 = 1310720 B

-- CACHE_L3 = 26214400 B

-- ENDIANESS = LittleEndian

-- Configuring done

-- Generating done

-- Build files have been written to: XXX/PERFORMANCE_WITH_STENCIL/Examples/build



Puis make :

make -j 24

[ 0%] Building CXX object GrayScottCompute/Naive/CMakeFiles/gray_scott_naive.dir/naive_propagation.cpp.o

[ 1%] Building CXX object GrayScottCompute/Vectorized/CMakeFiles/gray_scott_vectorized.dir/vectorized_propagation.cpp.o

[ 2%] Building CXX object GrayScottCompute/Intrinsics/CMakeFiles/gray_scott_intrinsics.dir/intrinsics_propagation.cpp.o

[ 4%] Building CXX object GrayScottDataFormat/CMakeFiles/gray_scott_data_format.dir/MatrixHdf5.cpp.o

[ 4%] Building CXX object GrayScottDataFormat/CMakeFiles/gray_scott_data_format.dir/temporary_alloc.cpp.o

[ 5%] Linking CXX shared library libgray_scott_naive.so

[ 5%] Built target gray_scott_naive

[ 5%] Linking CXX shared library libgray_scott_intrinsics.so

[ 5%] Linking CXX shared library libgray_scott_vectorized.so

[ 5%] Built target gray_scott_intrinsics

[ 7%] Linking CXX shared library libgray_scott_data_format.so

[ 8%] Building CXX object GrayScottCompute/IntrinsicsLinkBlock/CMakeFiles/gray_scott_intrinsics_link_block.dir/intrinsics_propagation_link_block.cpp.o

[ 8%] Building CXX object GrayScottCompute/IntrinsicsBlock/CMakeFiles/gray_scott_intrinsics_block.dir/intrinsics_propagation_block.cpp.o

[ 8%] Built target gray_scott_vectorized

[ 8%] Built target gray_scott_data_format

[ 10%] Building CXX object Program/GrayScottReaction/Intrinsics/CMakeFiles/intrinsics_gray_scott.dir/main_intrinsics.cpp.o

[ 10%] Building CXX object Program/GrayScottReaction/Naive/CMakeFiles/naive_gray_scott.dir/main.cpp.o

[ 11%] Building CXX object Benchmark/Naive/CMakeFiles/perf_grayscott_seq_O2.dir/__/__/GrayScottCompute/Naive/naive_propagation.cpp.o

[ 14%] Building CXX object Benchmark/Naive/CMakeFiles/perf_grayscott_seq_O3.dir/__/__/GrayScottCompute/Naive/naive_propagation.cpp.o

[ 14%] Building CXX object Benchmark/Naive/CMakeFiles/perf_grayscott_seq_O0.dir/__/__/GrayScottCompute/Naive/naive_propagation.cpp.o

[ 14%] Building CXX object Program/GrayScott2Pic/CMakeFiles/gray_scott2pic.dir/main.cpp.o

[ 19%] Building CXX object Benchmark/Naive/CMakeFiles/perf_grayscott_seq_O1.dir/__/__/GrayScottCompute/Naive/naive_propagation.cpp.o

[ 19%] Building CXX object Benchmark/Naive/CMakeFiles/perf_grayscott_seq_Ofast.dir/__/__/GrayScottCompute/Naive/naive_propagation.cpp.o

[ 19%] Building CXX object Benchmark/Vectorized/CMakeFiles/perf_grayscott_seq_vectorize_O1.dir/__/__/GrayScottCompute/Vectorized/vectorized_propagation.cpp.o

[ 23%] Building CXX object Benchmark/Vectorized/CMakeFiles/perf_grayscott_seq_vectorize_O2.dir/__/__/GrayScottCompute/Vectorized/vectorized_propagation.cpp.o

[ 23%] Building CXX object Benchmark/Vectorized/CMakeFiles/perf_grayscott_seq_vectorize_O3.dir/__/__/GrayScottCompute/Vectorized/vectorized_propagation.cpp.o

[ 23%] Building CXX object Benchmark/Intrinsics/CMakeFiles/perf_grayscott_seq_intrinsics_O2.dir/__/__/GrayScottCompute/Intrinsics/intrinsics_propagation.cpp.o

[ 23%] Building CXX object Benchmark/Intrinsics/CMakeFiles/perf_grayscott_seq_intrinsics_O1.dir/__/__/GrayScottCompute/Intrinsics/intrinsics_propagation.cpp.o

[ 25%] Building CXX object Benchmark/IntrinsicsBlock/CMakeFiles/perf_grayscott_seq_intrinsics_block_O2.dir/__/__/GrayScottCompute/Intrinsics/intrinsics_propagation.cpp.o

[ 25%] Building CXX object Benchmark/IntrinsicsBlock/CMakeFiles/perf_grayscott_seq_intrinsics_block_O3.dir/__/__/GrayScottCompute/Intrinsics/intrinsics_propagation.cpp.o

[ 26%] Building CXX object Benchmark/IntrinsicsLinkBlock/CMakeFiles/perf_grayscott_seq_intrinsics_link_block_O1.dir/__/__/GrayScottCompute/Intrinsics/intrinsics_propagation.cpp.o

[ 26%] Building CXX object Benchmark/Vectorized/CMakeFiles/perf_grayscott_seq_vectorize_Ofast.dir/__/__/GrayScottCompute/Vectorized/vectorized_propagation.cpp.o

[ 26%] Building CXX object Benchmark/Intrinsics/CMakeFiles/perf_grayscott_seq_intrinsics_Ofast.dir/__/__/GrayScottCompute/Intrinsics/intrinsics_propagation.cpp.o

[ 28%] Building CXX object Benchmark/IntrinsicsBlock/CMakeFiles/perf_grayscott_seq_intrinsics_block_O1.dir/__/__/GrayScottCompute/Intrinsics/intrinsics_propagation.cpp.o

[ 29%] Building CXX object Benchmark/IntrinsicsBlock/CMakeFiles/perf_grayscott_seq_intrinsics_block_Ofast.dir/__/__/GrayScottCompute/Intrinsics/intrinsics_propagation.cpp.o

[ 31%] Building CXX object Benchmark/Intrinsics/CMakeFiles/perf_grayscott_seq_intrinsics_O3.dir/__/__/GrayScottCompute/Intrinsics/intrinsics_propagation.cpp.o

[ 31%] Building CXX object Benchmark/IntrinsicsLinkBlock/CMakeFiles/perf_grayscott_seq_intrinsics_link_block_O2.dir/__/__/GrayScottCompute/Intrinsics/intrinsics_propagation.cpp.o

[ 32%] Building CXX object Benchmark/Naive/CMakeFiles/perf_grayscott_seq_O2.dir/main.cpp.o

[ 34%] Building CXX object Benchmark/Naive/CMakeFiles/perf_grayscott_seq_O3.dir/main.cpp.o

[ 35%] Building CXX object Benchmark/Naive/CMakeFiles/perf_grayscott_seq_Ofast.dir/main.cpp.o

[ 35%] Building CXX object Benchmark/Naive/CMakeFiles/perf_grayscott_seq_O0.dir/main.cpp.o

[ 35%] Building CXX object Benchmark/Naive/CMakeFiles/perf_grayscott_seq_O1.dir/main.cpp.o

[ 37%] Building CXX object Benchmark/Intrinsics/CMakeFiles/perf_grayscott_seq_intrinsics_O1.dir/main_intrinsics.cpp.o

[ 37%] Building CXX object Benchmark/IntrinsicsLinkBlock/CMakeFiles/perf_grayscott_seq_intrinsics_link_block_O1.dir/__/__/GrayScottCompute/IntrinsicsLinkBlock/intrinsics_propagation_link_block.cpp.o

[ 38%] Building CXX object Benchmark/Intrinsics/CMakeFiles/perf_grayscott_seq_intrinsics_Ofast.dir/main_intrinsics.cpp.o

[ 40%] Building CXX object Benchmark/IntrinsicsBlock/CMakeFiles/perf_grayscott_seq_intrinsics_block_O2.dir/__/__/GrayScottCompute/IntrinsicsBlock/intrinsics_propagation_block.cpp.o

[ 40%] Building CXX object Benchmark/IntrinsicsLinkBlock/CMakeFiles/perf_grayscott_seq_intrinsics_link_block_O2.dir/__/__/GrayScottCompute/IntrinsicsLinkBlock/intrinsics_propagation_link_block.cpp.o

[ 41%] Building CXX object Benchmark/IntrinsicsBlock/CMakeFiles/perf_grayscott_seq_intrinsics_block_O3.dir/__/__/GrayScottCompute/IntrinsicsBlock/intrinsics_propagation_block.cpp.o

[ 43%] Building CXX object Benchmark/Intrinsics/CMakeFiles/perf_grayscott_seq_intrinsics_O2.dir/main_intrinsics.cpp.o

[ 44%] Building CXX object Benchmark/Intrinsics/CMakeFiles/perf_grayscott_seq_intrinsics_O3.dir/main_intrinsics.cpp.o

[ 46%] Building CXX object Benchmark/Vectorized/CMakeFiles/perf_grayscott_seq_vectorize_Ofast.dir/main_vectorized.cpp.o

[ 46%] Building CXX object Benchmark/IntrinsicsBlock/CMakeFiles/perf_grayscott_seq_intrinsics_block_O1.dir/__/__/GrayScottCompute/IntrinsicsBlock/intrinsics_propagation_block.cpp.o

[ 47%] Building CXX object Benchmark/IntrinsicsBlock/CMakeFiles/perf_grayscott_seq_intrinsics_block_Ofast.dir/__/__/GrayScottCompute/IntrinsicsBlock/intrinsics_propagation_block.cpp.o

[ 49%] Building CXX object Benchmark/Vectorized/CMakeFiles/perf_grayscott_seq_vectorize_O1.dir/main_vectorized.cpp.o

[ 50%] Building CXX object Benchmark/Vectorized/CMakeFiles/perf_grayscott_seq_vectorize_O3.dir/main_vectorized.cpp.o

[ 52%] Building CXX object Benchmark/Vectorized/CMakeFiles/perf_grayscott_seq_vectorize_O2.dir/main_vectorized.cpp.o

[ 53%] Linking CXX executable gray_scott2pic

[ 55%] Linking CXX shared library libgray_scott_intrinsics_link_block.so

[ 55%] Built target gray_scott_intrinsics_link_block

[ 55%] Building CXX object Benchmark/IntrinsicsLinkBlock/CMakeFiles/perf_grayscott_seq_intrinsics_link_block_O3.dir/__/__/GrayScottCompute/Intrinsics/intrinsics_propagation.cpp.o

[ 55%] Built target gray_scott2pic

[ 56%] Building CXX object Benchmark/IntrinsicsLinkBlock/CMakeFiles/perf_grayscott_seq_intrinsics_link_block_Ofast.dir/__/__/GrayScottCompute/Intrinsics/intrinsics_propagation.cpp.o

[ 58%] Linking CXX shared library libgray_scott_intrinsics_block.so

[ 58%] Built target gray_scott_intrinsics_block

[ 59%] Building CXX object GrayScottCompute/IntrinsicsLinkBlockParallel/CMakeFiles/gray_scott_intrinsics_link_block_parallel.dir/intrinsics_propagation_link_block_parallel.cpp.o

[ 61%] Linking CXX executable naive_gray_scott

[ 61%] Linking CXX executable perf_grayscott_seq_O3

[ 61%] Linking CXX executable perf_grayscott_seq_O2

[ 62%] Linking CXX executable perf_grayscott_seq_O0

[ 62%] Linking CXX executable perf_grayscott_seq_Ofast

[ 64%] Linking CXX executable perf_grayscott_seq_O1

[ 64%] Built target perf_grayscott_seq_O3

[ 64%] Built target naive_gray_scott

[ 64%] Built target perf_grayscott_seq_O2

[ 65%] Building CXX object Benchmark/IntrinsicsLinkBlock/CMakeFiles/perf_grayscott_seq_intrinsics_link_block_O3.dir/__/__/GrayScottCompute/IntrinsicsLinkBlock/intrinsics_propagation_link_block.cpp.o

[ 67%] Building CXX object Benchmark/IntrinsicsLinkBlock/CMakeFiles/perf_grayscott_seq_intrinsics_link_block_O3.dir/main_intrinsics_link_block.cpp.o

[ 68%] Linking CXX executable perf_grayscott_seq_intrinsics_O1

[ 68%] Building CXX object Program/GrayScottReaction/IntrinsicsLinkBlock/CMakeFiles/intrinsics_link_block_gray_scott.dir/main_intrinsics_link_block.cpp.o

[ 68%] Built target perf_grayscott_seq_O0

[ 70%] Building CXX object Benchmark/IntrinsicsLinkBlock/CMakeFiles/perf_grayscott_seq_intrinsics_link_block_Ofast.dir/__/__/GrayScottCompute/IntrinsicsLinkBlock/intrinsics_propagation_link_block.cpp.o

[ 70%] Built target perf_grayscott_seq_Ofast

[ 71%] Linking CXX executable intrinsics_gray_scott

[ 73%] Linking CXX executable perf_grayscott_seq_intrinsics_O2

[ 74%] Building CXX object Benchmark/IntrinsicsLinkBlock/CMakeFiles/perf_grayscott_seq_intrinsics_link_block_Ofast.dir/main_intrinsics_link_block.cpp.o

[ 76%] Building CXX object Benchmark/IntrinsicsLinkBlock/CMakeFiles/perf_grayscott_seq_intrinsics_link_block_O1.dir/main_intrinsics_link_block.cpp.o

[ 77%] Building CXX object Benchmark/IntrinsicsLinkBlock/CMakeFiles/perf_grayscott_seq_intrinsics_link_block_O2.dir/main_intrinsics_link_block.cpp.o

[ 77%] Built target perf_grayscott_seq_O1

[ 77%] Building CXX object Benchmark/IntrinsicsBlock/CMakeFiles/perf_grayscott_seq_intrinsics_block_Ofast.dir/main_intrinsics_block.cpp.o

[ 79%] Linking CXX executable perf_grayscott_seq_intrinsics_Ofast

[ 80%] Building CXX object Benchmark/IntrinsicsBlock/CMakeFiles/perf_grayscott_seq_intrinsics_block_O1.dir/main_intrinsics_block.cpp.o

[ 80%] Built target perf_grayscott_seq_intrinsics_O1

[ 82%] Building CXX object Benchmark/IntrinsicsBlock/CMakeFiles/perf_grayscott_seq_intrinsics_block_O3.dir/main_intrinsics_block.cpp.o

[ 83%] Linking CXX executable perf_grayscott_seq_vectorize_Ofast

[ 85%] Linking CXX executable perf_grayscott_seq_intrinsics_O3

[ 86%] Building CXX object Benchmark/IntrinsicsBlock/CMakeFiles/perf_grayscott_seq_intrinsics_block_O2.dir/main_intrinsics_block.cpp.o

[ 86%] Built target intrinsics_gray_scott

[ 86%] Built target perf_grayscott_seq_intrinsics_Ofast

[ 86%] Built target perf_grayscott_seq_intrinsics_O2

[ 86%] Linking CXX executable perf_grayscott_seq_vectorize_O1

[ 86%] Built target perf_grayscott_seq_vectorize_Ofast

[ 86%] Built target perf_grayscott_seq_intrinsics_O3

[ 86%] Built target perf_grayscott_seq_vectorize_O1

[ 88%] Linking CXX executable perf_grayscott_seq_vectorize_O3

[ 88%] Linking CXX executable perf_grayscott_seq_vectorize_O2

[ 88%] Built target perf_grayscott_seq_vectorize_O3

[ 88%] Built target perf_grayscott_seq_vectorize_O2

[ 89%] Linking CXX executable perf_grayscott_seq_intrinsics_link_block_O2

[ 89%] Linking CXX executable perf_grayscott_seq_intrinsics_block_O2

[ 89%] Linking CXX executable perf_grayscott_seq_intrinsics_block_O3

[ 89%] Built target perf_grayscott_seq_intrinsics_link_block_O2

[ 89%] Built target perf_grayscott_seq_intrinsics_block_O2

[ 91%] Linking CXX executable perf_grayscott_seq_intrinsics_block_Ofast

[ 91%] Built target perf_grayscott_seq_intrinsics_block_O3

[ 91%] Linking CXX executable perf_grayscott_seq_intrinsics_link_block_O3

[ 92%] Linking CXX executable perf_grayscott_seq_intrinsics_block_O1

[ 94%] Linking CXX shared library libgray_scott_intrinsics_link_block_parallel.so

[ 95%] Linking CXX executable perf_grayscott_seq_intrinsics_link_block_O1

[ 95%] Built target perf_grayscott_seq_intrinsics_block_Ofast

[ 95%] Built target gray_scott_intrinsics_link_block_parallel

[ 97%] Building CXX object Program/GrayScottReaction/IntrinsicsLinkBlockParallel/CMakeFiles/intrinsics_link_block_parallel_gray_scott.dir/main_intrinsics_link_block_parallel.cpp.o

[ 97%] Built target perf_grayscott_seq_intrinsics_link_block_O3

[ 97%] Built target perf_grayscott_seq_intrinsics_block_O1

[ 97%] Built target perf_grayscott_seq_intrinsics_link_block_O1

[ 97%] Linking CXX executable perf_grayscott_seq_intrinsics_link_block_Ofast

[ 97%] Built target perf_grayscott_seq_intrinsics_link_block_Ofast

[ 98%] Linking CXX executable intrinsics_link_block_gray_scott

[ 98%] Built target intrinsics_link_block_gray_scott

[100%] Linking CXX executable intrinsics_link_block_parallel_gray_scott

[100%] Built target intrinsics_link_block_parallel_gray_scott



Lançons les tests :

make run_all

[ 2%] Built target gray_scott_data_format

[ 7%] Built target perf_grayscott_seq_intrinsics_link_block_Ofast

[ 8%] Built target run_perf_grayscott_seq_intrinsics_link_block_Ofast

Consolidate compiler generated dependencies of target perf_grayscott_seq_O0

[ 11%] Built target perf_grayscott_seq_O0

[ 13%] Run perf_grayscott_seq_O0 program

micro_benchmarkAutoNs : nbCallPerTest = 34

evaluate GrayScott reaction, scalar : nbElement = 12800, timePerElement = 29.2941 ns/el ± 0.683916, elapsedTime = 374965 ns ± 8754.13

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, scalar : nbElement = 51200, timePerElement = 29.5665 ns/el ± 0.641777, elapsedTime = 1.51381e+06 ns ± 32859

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, scalar : nbElement = 115200, timePerElement = 29.5661 ns/el ± 0.410269, elapsedTime = 3.40602e+06 ns ± 47263

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, scalar : nbElement = 204800, timePerElement = 29.62 ns/el ± 0.284022, elapsedTime = 6.06619e+06 ns ± 58167.7

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, scalar : nbElement = 320000, timePerElement = 29.6323 ns/el ± 0.277611, elapsedTime = 9.48233e+06 ns ± 88835.7

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, scalar : nbElement = 460800, timePerElement = 29.6869 ns/el ± 0.221431, elapsedTime = 1.36797e+07 ns ± 102036

[ 13%] Built target run_perf_grayscott_seq_O0

Consolidate compiler generated dependencies of target perf_grayscott_seq_O1

[ 16%] Built target perf_grayscott_seq_O1

[ 16%] Run perf_grayscott_seq_O1 program

micro_benchmarkAutoNs : nbCallPerTest = 166

evaluate GrayScott reaction, scalar : nbElement = 12800, timePerElement = 6.14461 ns/el ± 0.0657437, elapsedTime = 78651 ns ± 841.519

micro_benchmarkAutoNs : nbCallPerTest = 41

evaluate GrayScott reaction, scalar : nbElement = 51200, timePerElement = 6.12355 ns/el ± 0.0349717, elapsedTime = 313526 ns ± 1790.55

micro_benchmarkAutoNs : nbCallPerTest = 18

evaluate GrayScott reaction, scalar : nbElement = 115200, timePerElement = 6.11692 ns/el ± 0.0401883, elapsedTime = 704669 ns ± 4629.69

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, scalar : nbElement = 204800, timePerElement = 6.46449 ns/el ± 0.0549077, elapsedTime = 1.32393e+06 ns ± 11245.1

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, scalar : nbElement = 320000, timePerElement = 6.43203 ns/el ± 0.0706422, elapsedTime = 2.05825e+06 ns ± 22605.5

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, scalar : nbElement = 460800, timePerElement = 6.26812 ns/el ± 0.0576692, elapsedTime = 2.88835e+06 ns ± 26574

[ 16%] Built target run_perf_grayscott_seq_O1

Consolidate compiler generated dependencies of target perf_grayscott_seq_O2

[ 19%] Built target perf_grayscott_seq_O2

[ 20%] Run perf_grayscott_seq_O2 program

micro_benchmarkAutoNs : nbCallPerTest = 165

evaluate GrayScott reaction, scalar : nbElement = 12800, timePerElement = 6.13578 ns/el ± 0.00347084, elapsedTime = 78538 ns ± 44.4268

micro_benchmarkAutoNs : nbCallPerTest = 40

evaluate GrayScott reaction, scalar : nbElement = 51200, timePerElement = 6.23618 ns/el ± 0.00914353, elapsedTime = 319292 ns ± 468.149

micro_benchmarkAutoNs : nbCallPerTest = 17

evaluate GrayScott reaction, scalar : nbElement = 115200, timePerElement = 6.37443 ns/el ± 0.00449616, elapsedTime = 734335 ns ± 517.958

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, scalar : nbElement = 204800, timePerElement = 6.29755 ns/el ± 0.00605429, elapsedTime = 1.28974e+06 ns ± 1239.92

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, scalar : nbElement = 320000, timePerElement = 6.53212 ns/el ± 0.0103404, elapsedTime = 2.09028e+06 ns ± 3308.92

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, scalar : nbElement = 460800, timePerElement = 6.16253 ns/el ± 0.013763, elapsedTime = 2.83969e+06 ns ± 6341.97

[ 20%] Built target run_perf_grayscott_seq_O2

Consolidate compiler generated dependencies of target perf_grayscott_seq_O3

[ 23%] Built target perf_grayscott_seq_O3

[ 25%] Run perf_grayscott_seq_O3 program

micro_benchmarkAutoNs : nbCallPerTest = 135

evaluate GrayScott reaction, scalar : nbElement = 12800, timePerElement = 7.55038 ns/el ± 0.0248761, elapsedTime = 96644.9 ns ± 318.414

micro_benchmarkAutoNs : nbCallPerTest = 33

evaluate GrayScott reaction, scalar : nbElement = 51200, timePerElement = 7.57701 ns/el ± 0.0254513, elapsedTime = 387943 ns ± 1303.11

micro_benchmarkAutoNs : nbCallPerTest = 14

evaluate GrayScott reaction, scalar : nbElement = 115200, timePerElement = 7.6903 ns/el ± 0.0608981, elapsedTime = 885922 ns ± 7015.46

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, scalar : nbElement = 204800, timePerElement = 7.57867 ns/el ± 0.025568, elapsedTime = 1.55211e+06 ns ± 5236.34

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, scalar : nbElement = 320000, timePerElement = 7.60734 ns/el ± 0.0389305, elapsedTime = 2.43435e+06 ns ± 12457.8

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, scalar : nbElement = 460800, timePerElement = 7.79528 ns/el ± 0.0274431, elapsedTime = 3.59207e+06 ns ± 12645.8

[ 25%] Built target run_perf_grayscott_seq_O3

Consolidate compiler generated dependencies of target perf_grayscott_seq_Ofast

[ 28%] Built target perf_grayscott_seq_Ofast

[ 28%] Run perf_grayscott_seq_Ofast program

micro_benchmarkAutoNs : nbCallPerTest = 122

evaluate GrayScott reaction, scalar : nbElement = 12800, timePerElement = 8.39761 ns/el ± 0.0356199, elapsedTime = 107489 ns ± 455.935

micro_benchmarkAutoNs : nbCallPerTest = 30

evaluate GrayScott reaction, scalar : nbElement = 51200, timePerElement = 8.45777 ns/el ± 0.0351187, elapsedTime = 433038 ns ± 1798.08

micro_benchmarkAutoNs : nbCallPerTest = 13

evaluate GrayScott reaction, scalar : nbElement = 115200, timePerElement = 8.47686 ns/el ± 0.0275954, elapsedTime = 976535 ns ± 3178.99

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, scalar : nbElement = 204800, timePerElement = 8.42565 ns/el ± 0.0283013, elapsedTime = 1.72557e+06 ns ± 5796.1

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, scalar : nbElement = 320000, timePerElement = 8.46767 ns/el ± 0.0225887, elapsedTime = 2.70966e+06 ns ± 7228.37

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, scalar : nbElement = 460800, timePerElement = 8.46445 ns/el ± 0.0236193, elapsedTime = 3.90042e+06 ns ± 10883.8

[ 28%] Built target run_perf_grayscott_seq_Ofast

Consolidate compiler generated dependencies of target perf_grayscott_seq_vectorize_O1

[ 31%] Built target perf_grayscott_seq_vectorize_O1

[ 31%] Run perf_grayscott_seq_vectorize_O1 program

micro_benchmarkAutoNs : nbCallPerTest = 94

evaluate GrayScott reaction, vectorized : nbElement = 12800, timePerElement = 10.8512 ns/el ± 0.0402809, elapsedTime = 138895 ns ± 515.595

micro_benchmarkAutoNs : nbCallPerTest = 23

evaluate GrayScott reaction, vectorized : nbElement = 51200, timePerElement = 10.6911 ns/el ± 0.0527339, elapsedTime = 547387 ns ± 2699.97

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, vectorized : nbElement = 115200, timePerElement = 10.6831 ns/el ± 0.0423821, elapsedTime = 1.23069e+06 ns ± 4882.42

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, vectorized : nbElement = 204800, timePerElement = 10.6449 ns/el ± 0.0399907, elapsedTime = 2.18008e+06 ns ± 8190.09

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, vectorized : nbElement = 320000, timePerElement = 10.6413 ns/el ± 0.0269049, elapsedTime = 3.40522e+06 ns ± 8609.58

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, vectorized : nbElement = 460800, timePerElement = 10.6293 ns/el ± 0.0227404, elapsedTime = 4.89796e+06 ns ± 10478.8

[ 31%] Built target run_perf_grayscott_seq_vectorize_O1

Consolidate compiler generated dependencies of target perf_grayscott_seq_vectorize_O2

[ 34%] Built target perf_grayscott_seq_vectorize_O2

[ 35%] Run perf_grayscott_seq_vectorize_O2 program

micro_benchmarkAutoNs : nbCallPerTest = 123

evaluate GrayScott reaction, vectorized : nbElement = 12800, timePerElement = 8.21072 ns/el ± 0.118327, elapsedTime = 105097 ns ± 1514.59

micro_benchmarkAutoNs : nbCallPerTest = 30

evaluate GrayScott reaction, vectorized : nbElement = 51200, timePerElement = 8.25347 ns/el ± 0.140027, elapsedTime = 422578 ns ± 7169.4

micro_benchmarkAutoNs : nbCallPerTest = 13

evaluate GrayScott reaction, vectorized : nbElement = 115200, timePerElement = 8.1811 ns/el ± 0.142195, elapsedTime = 942463 ns ± 16380.9

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, vectorized : nbElement = 204800, timePerElement = 8.35253 ns/el ± 0.121421, elapsedTime = 1.7106e+06 ns ± 24867

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, vectorized : nbElement = 320000, timePerElement = 8.32757 ns/el ± 0.101524, elapsedTime = 2.66482e+06 ns ± 32487.8

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, vectorized : nbElement = 460800, timePerElement = 8.33343 ns/el ± 0.0956437, elapsedTime = 3.84005e+06 ns ± 44072.6

[ 35%] Built target run_perf_grayscott_seq_vectorize_O2

Consolidate compiler generated dependencies of target perf_grayscott_seq_vectorize_O3

[ 40%] Built target perf_grayscott_seq_vectorize_O3

[ 41%] Run perf_grayscott_seq_vectorize_O3 program

micro_benchmarkAutoNs : nbCallPerTest = 133

evaluate GrayScott reaction, vectorized : nbElement = 12800, timePerElement = 7.74601 ns/el ± 0.0270676, elapsedTime = 99149 ns ± 346.465

micro_benchmarkAutoNs : nbCallPerTest = 32

evaluate GrayScott reaction, vectorized : nbElement = 51200, timePerElement = 7.76049 ns/el ± 0.0204734, elapsedTime = 397337 ns ± 1048.24

micro_benchmarkAutoNs : nbCallPerTest = 14

evaluate GrayScott reaction, vectorized : nbElement = 115200, timePerElement = 7.76131 ns/el ± 0.022237, elapsedTime = 894103 ns ± 2561.7

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, vectorized : nbElement = 204800, timePerElement = 7.82461 ns/el ± 0.0293831, elapsedTime = 1.60248e+06 ns ± 6017.66

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, vectorized : nbElement = 320000, timePerElement = 7.81936 ns/el ± 0.0188716, elapsedTime = 2.5022e+06 ns ± 6038.91

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, vectorized : nbElement = 460800, timePerElement = 7.84988 ns/el ± 0.0218521, elapsedTime = 3.61722e+06 ns ± 10069.4

[ 41%] Built target run_perf_grayscott_seq_vectorize_O3

Consolidate compiler generated dependencies of target perf_grayscott_seq_vectorize_Ofast

[ 44%] Built target perf_grayscott_seq_vectorize_Ofast

[ 46%] Run perf_grayscott_seq_vectorize_Ofast program

micro_benchmarkAutoNs : nbCallPerTest = 129

evaluate GrayScott reaction, vectorized : nbElement = 12800, timePerElement = 7.94215 ns/el ± 0.0315501, elapsedTime = 101660 ns ± 403.841

micro_benchmarkAutoNs : nbCallPerTest = 31

evaluate GrayScott reaction, vectorized : nbElement = 51200, timePerElement = 7.96373 ns/el ± 0.0297143, elapsedTime = 407743 ns ± 1521.37

micro_benchmarkAutoNs : nbCallPerTest = 14

evaluate GrayScott reaction, vectorized : nbElement = 115200, timePerElement = 7.96939 ns/el ± 0.02999, elapsedTime = 918074 ns ± 3454.84

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, vectorized : nbElement = 204800, timePerElement = 8.00486 ns/el ± 0.0326823, elapsedTime = 1.63939e+06 ns ± 6693.33

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, vectorized : nbElement = 320000, timePerElement = 7.96472 ns/el ± 0.0257923, elapsedTime = 2.54871e+06 ns ± 8253.53

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, vectorized : nbElement = 460800, timePerElement = 7.96422 ns/el ± 0.022452, elapsedTime = 3.66991e+06 ns ± 10345.9

[ 46%] Built target run_perf_grayscott_seq_vectorize_Ofast

Consolidate compiler generated dependencies of target perf_grayscott_seq_intrinsics_O1

[ 50%] Built target perf_grayscott_seq_intrinsics_O1

[ 52%] Run perf_grayscott_seq_intrinsics_O1 program

micro_benchmarkAutoNs : nbCallPerTest = 1177

evaluate GrayScott reaction, intrinsics : nbElement = 12800, timePerElement = 0.820486 ns/el ± 0.005253, elapsedTime = 10502.2 ns ± 67.2384

micro_benchmarkAutoNs : nbCallPerTest = 295

evaluate GrayScott reaction, intrinsics : nbElement = 51200, timePerElement = 0.862006 ns/el ± 0.00372579, elapsedTime = 44134.7 ns ± 190.761

micro_benchmarkAutoNs : nbCallPerTest = 134

evaluate GrayScott reaction, intrinsics : nbElement = 115200, timePerElement = 0.838469 ns/el ± 0.00399907, elapsedTime = 96591.7 ns ± 460.693

micro_benchmarkAutoNs : nbCallPerTest = 72

evaluate GrayScott reaction, intrinsics : nbElement = 204800, timePerElement = 0.87896 ns/el ± 0.00467534, elapsedTime = 180011 ns ± 957.509

micro_benchmarkAutoNs : nbCallPerTest = 49

evaluate GrayScott reaction, intrinsics : nbElement = 320000, timePerElement = 0.831075 ns/el ± 0.00407314, elapsedTime = 265944 ns ± 1303.41

micro_benchmarkAutoNs : nbCallPerTest = 33

evaluate GrayScott reaction, intrinsics : nbElement = 460800, timePerElement = 0.831572 ns/el ± 0.00475142, elapsedTime = 383188 ns ± 2189.46

[ 52%] Built target run_perf_grayscott_seq_intrinsics_O1

Consolidate compiler generated dependencies of target perf_grayscott_seq_intrinsics_O2

[ 55%] Built target perf_grayscott_seq_intrinsics_O2

[ 56%] Run perf_grayscott_seq_intrinsics_O2 program

micro_benchmarkAutoNs : nbCallPerTest = 1322

evaluate GrayScott reaction, intrinsics : nbElement = 12800, timePerElement = 0.748403 ns/el ± 0.00495601, elapsedTime = 9579.56 ns ± 63.4369

micro_benchmarkAutoNs : nbCallPerTest = 255

evaluate GrayScott reaction, intrinsics : nbElement = 51200, timePerElement = 1.00276 ns/el ± 0.0058971, elapsedTime = 51341.2 ns ± 301.931

micro_benchmarkAutoNs : nbCallPerTest = 146

evaluate GrayScott reaction, intrinsics : nbElement = 115200, timePerElement = 0.773207 ns/el ± 0.00495591, elapsedTime = 89073.4 ns ± 570.921

micro_benchmarkAutoNs : nbCallPerTest = 74

evaluate GrayScott reaction, intrinsics : nbElement = 204800, timePerElement = 0.853895 ns/el ± 0.00618192, elapsedTime = 174878 ns ± 1266.06

micro_benchmarkAutoNs : nbCallPerTest = 53

evaluate GrayScott reaction, intrinsics : nbElement = 320000, timePerElement = 0.757981 ns/el ± 0.00436609, elapsedTime = 242554 ns ± 1397.15

micro_benchmarkAutoNs : nbCallPerTest = 37

evaluate GrayScott reaction, intrinsics : nbElement = 460800, timePerElement = 0.761499 ns/el ± 0.00548512, elapsedTime = 350899 ns ± 2527.54

[ 56%] Built target run_perf_grayscott_seq_intrinsics_O2

Consolidate compiler generated dependencies of target perf_grayscott_seq_intrinsics_O3

[ 59%] Built target perf_grayscott_seq_intrinsics_O3

[ 59%] Run perf_grayscott_seq_intrinsics_O3 program

micro_benchmarkAutoNs : nbCallPerTest = 1213

evaluate GrayScott reaction, intrinsics : nbElement = 12800, timePerElement = 0.759134 ns/el ± 0.00573619, elapsedTime = 9716.91 ns ± 73.4233

micro_benchmarkAutoNs : nbCallPerTest = 309

evaluate GrayScott reaction, intrinsics : nbElement = 51200, timePerElement = 0.823678 ns/el ± 0.00550457, elapsedTime = 42172.3 ns ± 281.834

micro_benchmarkAutoNs : nbCallPerTest = 146

evaluate GrayScott reaction, intrinsics : nbElement = 115200, timePerElement = 0.7697 ns/el ± 0.00442024, elapsedTime = 88669.4 ns ± 509.211

micro_benchmarkAutoNs : nbCallPerTest = 76

evaluate GrayScott reaction, intrinsics : nbElement = 204800, timePerElement = 0.833691 ns/el ± 0.006225, elapsedTime = 170740 ns ± 1274.88

micro_benchmarkAutoNs : nbCallPerTest = 50

evaluate GrayScott reaction, intrinsics : nbElement = 320000, timePerElement = 0.771386 ns/el ± 0.00639859, elapsedTime = 246843 ns ± 2047.55

micro_benchmarkAutoNs : nbCallPerTest = 35

evaluate GrayScott reaction, intrinsics : nbElement = 460800, timePerElement = 0.795123 ns/el ± 0.00627814, elapsedTime = 366393 ns ± 2892.97

[ 59%] Built target run_perf_grayscott_seq_intrinsics_O3

Consolidate compiler generated dependencies of target perf_grayscott_seq_intrinsics_Ofast

[ 62%] Built target perf_grayscott_seq_intrinsics_Ofast

[ 64%] Run perf_grayscott_seq_intrinsics_Ofast program

micro_benchmarkAutoNs : nbCallPerTest = 1396

evaluate GrayScott reaction, intrinsics : nbElement = 12800, timePerElement = 0.72625 ns/el ± 0.00351629, elapsedTime = 9296 ns ± 45.0085

micro_benchmarkAutoNs : nbCallPerTest = 345

evaluate GrayScott reaction, intrinsics : nbElement = 51200, timePerElement = 0.742482 ns/el ± 0.00474265, elapsedTime = 38015.1 ns ± 242.823

micro_benchmarkAutoNs : nbCallPerTest = 151

evaluate GrayScott reaction, intrinsics : nbElement = 115200, timePerElement = 0.743715 ns/el ± 0.000647674, elapsedTime = 85675.9 ns ± 74.612

micro_benchmarkAutoNs : nbCallPerTest = 80

evaluate GrayScott reaction, intrinsics : nbElement = 204800, timePerElement = 0.797494 ns/el ± 0.0074536, elapsedTime = 163327 ns ± 1526.5

micro_benchmarkAutoNs : nbCallPerTest = 53

evaluate GrayScott reaction, intrinsics : nbElement = 320000, timePerElement = 0.749988 ns/el ± 0.00541326, elapsedTime = 239996 ns ± 1732.24

micro_benchmarkAutoNs : nbCallPerTest = 32

evaluate GrayScott reaction, intrinsics : nbElement = 460800, timePerElement = 0.875868 ns/el ± 0.00320148, elapsedTime = 403600 ns ± 1475.24

[ 64%] Built target run_perf_grayscott_seq_intrinsics_Ofast

Consolidate compiler generated dependencies of target perf_grayscott_seq_intrinsics_block_O1

[ 68%] Built target perf_grayscott_seq_intrinsics_block_O1

[ 70%] Run perf_grayscott_seq_intrinsics_block_O1 program

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 1280000, timePerElement = 2.86151 ns/el ± 0.0191783, elapsedTime = 3.66273e+06 ns ± 24548.3

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 5120000, timePerElement = 3.09366 ns/el ± 0.00394345, elapsedTime = 1.58395e+07 ns ± 20190.5

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 11520000, timePerElement = 3.07834 ns/el ± 0.0139512, elapsedTime = 3.54624e+07 ns ± 160718

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 20480000, timePerElement = 3.15293 ns/el ± 0.0115146, elapsedTime = 6.4572e+07 ns ± 235819

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 32000000, timePerElement = 3.1115 ns/el ± 0.00862946, elapsedTime = 9.95679e+07 ns ± 276143

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 46080000, timePerElement = 3.16926 ns/el ± 0.00966406, elapsedTime = 1.4604e+08 ns ± 445320

[ 70%] Built target run_perf_grayscott_seq_intrinsics_block_O1

Consolidate compiler generated dependencies of target perf_grayscott_seq_intrinsics_block_O2

[ 73%] Built target perf_grayscott_seq_intrinsics_block_O2

[ 74%] Run perf_grayscott_seq_intrinsics_block_O2 program

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 1280000, timePerElement = 2.784 ns/el ± 0.026424, elapsedTime = 3.56352e+06 ns ± 33822.8

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 5120000, timePerElement = 3.02146 ns/el ± 0.0105568, elapsedTime = 1.54699e+07 ns ± 54050.8

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 11520000, timePerElement = 3.00282 ns/el ± 0.0273173, elapsedTime = 3.45925e+07 ns ± 314696

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 20480000, timePerElement = 3.05779 ns/el ± 0.0120402, elapsedTime = 6.26235e+07 ns ± 246584

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 32000000, timePerElement = 3.01172 ns/el ± 0.0102994, elapsedTime = 9.63752e+07 ns ± 329582

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 46080000, timePerElement = 3.05039 ns/el ± 0.00878308, elapsedTime = 1.40562e+08 ns ± 404724

[ 74%] Built target run_perf_grayscott_seq_intrinsics_block_O2

Consolidate compiler generated dependencies of target perf_grayscott_seq_intrinsics_block_O3

[ 79%] Built target perf_grayscott_seq_intrinsics_block_O3

[ 79%] Run perf_grayscott_seq_intrinsics_block_O3 program

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 1280000, timePerElement = 2.76019 ns/el ± 0.00773734, elapsedTime = 3.53305e+06 ns ± 9903.8

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 5120000, timePerElement = 3.00647 ns/el ± 0.0150751, elapsedTime = 1.53931e+07 ns ± 77184.6

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 11520000, timePerElement = 2.99082 ns/el ± 0.00528464, elapsedTime = 3.44542e+07 ns ± 60879.1

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 20480000, timePerElement = 3.0595 ns/el ± 0.00202199, elapsedTime = 6.26586e+07 ns ± 41410.4

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 32000000, timePerElement = 3.01102 ns/el ± 0.00202905, elapsedTime = 9.63528e+07 ns ± 64929.5

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 46080000, timePerElement = 3.03222 ns/el ± 0.00931461, elapsedTime = 1.39724e+08 ns ± 429217

[ 79%] Built target run_perf_grayscott_seq_intrinsics_block_O3

Consolidate compiler generated dependencies of target perf_grayscott_seq_intrinsics_block_Ofast

[ 83%] Built target perf_grayscott_seq_intrinsics_block_Ofast

[ 85%] Run perf_grayscott_seq_intrinsics_block_Ofast program

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 1280000, timePerElement = 2.74858 ns/el ± 0.0157588, elapsedTime = 3.51818e+06 ns ± 20171.2

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 5120000, timePerElement = 2.98202 ns/el ± 0.0113911, elapsedTime = 1.5268e+07 ns ± 58322.6

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 11520000, timePerElement = 2.96972 ns/el ± 0.0083912, elapsedTime = 3.42112e+07 ns ± 96666.6

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 20480000, timePerElement = 3.05034 ns/el ± 0.0139538, elapsedTime = 6.24709e+07 ns ± 285774

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 32000000, timePerElement = 2.99516 ns/el ± 0.00734664, elapsedTime = 9.58452e+07 ns ± 235092

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics block : nbElement = 46080000, timePerElement = 3.03908 ns/el ± 0.0158928, elapsedTime = 1.40041e+08 ns ± 732338

[ 85%] Built target run_perf_grayscott_seq_intrinsics_block_Ofast

[ 89%] Built target perf_grayscott_seq_intrinsics_link_block_O1

[ 91%] Run perf_grayscott_seq_intrinsics_link_block_O1 program

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics link block : nbElement = 1280000, timePerElement = 0.941617 ns/el ± 0.0128816, elapsedTime = 1.20527e+06 ns ± 16488.4

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics link block : nbElement = 5120000, timePerElement = 1.29306 ns/el ± 0.00221012, elapsedTime = 6.62046e+06 ns ± 11315.8

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics link block : nbElement = 11520000, timePerElement = 1.27992 ns/el ± 0.00698558, elapsedTime = 1.47446e+07 ns ± 80473.8

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics link block : nbElement = 20480000, timePerElement = 1.2872 ns/el ± 0.00450978, elapsedTime = 2.63618e+07 ns ± 92360.3

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics link block : nbElement = 32000000, timePerElement = 1.43787 ns/el ± 0.00836556, elapsedTime = 4.60119e+07 ns ± 267698

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics link block : nbElement = 46080000, timePerElement = 1.30147 ns/el ± 0.00746814, elapsedTime = 5.99716e+07 ns ± 344132

[ 91%] Built target run_perf_grayscott_seq_intrinsics_link_block_O1

[ 95%] Built target perf_grayscott_seq_intrinsics_link_block_O2

[ 95%] Run perf_grayscott_seq_intrinsics_link_block_O2 program

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics link block : nbElement = 1280000, timePerElement = 0.909711 ns/el ± 0.00934905, elapsedTime = 1.16443e+06 ns ± 11966.8

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics link block : nbElement = 5120000, timePerElement = 1.21583 ns/el ± 0.00673191, elapsedTime = 6.22503e+06 ns ± 34467.4

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics link block : nbElement = 11520000, timePerElement = 1.21988 ns/el ± 0.00433741, elapsedTime = 1.4053e+07 ns ± 49967

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics link block : nbElement = 20480000, timePerElement = 1.20946 ns/el ± 0.00468541, elapsedTime = 2.47698e+07 ns ± 95957.3

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics link block : nbElement = 32000000, timePerElement = 1.49491 ns/el ± 0.0040408, elapsedTime = 4.7837e+07 ns ± 129306

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics link block : nbElement = 46080000, timePerElement = 1.2133 ns/el ± 0.00423402, elapsedTime = 5.59088e+07 ns ± 195104

[ 95%] Built target run_perf_grayscott_seq_intrinsics_link_block_O2

[ 98%] Built target perf_grayscott_seq_intrinsics_link_block_O3

[100%] Run perf_grayscott_seq_intrinsics_link_block_O3 program

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics link block : nbElement = 1280000, timePerElement = 0.878074 ns/el ± 0.0041526, elapsedTime = 1.12393e+06 ns ± 5315.33

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics link block : nbElement = 5120000, timePerElement = 1.22147 ns/el ± 0.00635644, elapsedTime = 6.25395e+06 ns ± 32545

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics link block : nbElement = 11520000, timePerElement = 1.26442 ns/el ± 0.00774853, elapsedTime = 1.45661e+07 ns ± 89263.1

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics link block : nbElement = 20480000, timePerElement = 1.22941 ns/el ± 0.00613216, elapsedTime = 2.51784e+07 ns ± 125587

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics link block : nbElement = 32000000, timePerElement = 1.52161 ns/el ± 0.00611468, elapsedTime = 4.86917e+07 ns ± 195670

micro_benchmarkAutoNs : nbCallPerTest = 10

evaluate GrayScott reaction, intrinsics link block : nbElement = 46080000, timePerElement = 1.2425 ns/el ± 0.00414625, elapsedTime = 5.72543e+07 ns ± 191059

[100%] Built target run_perf_grayscott_seq_intrinsics_link_block_O3

[100%] Built target run_all



Maintenant nous pouvons faire les images des différentes performances :

make plot_all

[ 2%] Built target gray_scott_data_format

[ 5%] Built target perf_grayscott_seq_intrinsics_link_block_Ofast

[ 9%] Built target perf_grayscott_seq_intrinsics_link_block_O1

[ 12%] Built target perf_grayscott_seq_intrinsics_link_block_O2

[ 15%] Built target perf_grayscott_seq_intrinsics_link_block_O3

[ 16%] Call gnuplot grayscott_seqIntrinsicsLinkBlock

[ 18%] Built target plot_grayscott_seqIntrinsicsLinkBlock

[ 20%] Built target run_perf_grayscott_seq_intrinsics_link_block_Ofast

[ 22%] Built target perf_grayscott_seq_O0

[ 23%] Built target run_perf_grayscott_seq_O0

[ 25%] Built target perf_grayscott_seq_O1

[ 25%] Built target run_perf_grayscott_seq_O1

[ 28%] Built target perf_grayscott_seq_O2

[ 29%] Built target run_perf_grayscott_seq_O2

[ 31%] Built target perf_grayscott_seq_O3

[ 32%] Built target run_perf_grayscott_seq_O3

[ 35%] Built target perf_grayscott_seq_Ofast

[ 35%] Built target run_perf_grayscott_seq_Ofast

[ 37%] Built target perf_grayscott_seq_vectorize_O1

[ 37%] Built target run_perf_grayscott_seq_vectorize_O1

[ 40%] Built target perf_grayscott_seq_vectorize_O2

[ 41%] Built target run_perf_grayscott_seq_vectorize_O2

[ 44%] Built target perf_grayscott_seq_vectorize_O3

[ 45%] Built target run_perf_grayscott_seq_vectorize_O3

[ 48%] Built target perf_grayscott_seq_vectorize_Ofast

[ 49%] Built target run_perf_grayscott_seq_vectorize_Ofast

[ 52%] Built target perf_grayscott_seq_intrinsics_O1

[ 54%] Built target run_perf_grayscott_seq_intrinsics_O1

[ 56%] Built target perf_grayscott_seq_intrinsics_O2

[ 57%] Built target run_perf_grayscott_seq_intrinsics_O2

[ 60%] Built target perf_grayscott_seq_intrinsics_O3

[ 60%] Built target run_perf_grayscott_seq_intrinsics_O3

[ 62%] Built target perf_grayscott_seq_intrinsics_Ofast

[ 63%] Built target run_perf_grayscott_seq_intrinsics_Ofast

[ 67%] Built target perf_grayscott_seq_intrinsics_block_O1

[ 68%] Built target run_perf_grayscott_seq_intrinsics_block_O1

[ 70%] Built target perf_grayscott_seq_intrinsics_block_O2

[ 71%] Built target run_perf_grayscott_seq_intrinsics_block_O2

[ 75%] Built target perf_grayscott_seq_intrinsics_block_O3

[ 75%] Built target run_perf_grayscott_seq_intrinsics_block_O3

[ 78%] Built target perf_grayscott_seq_intrinsics_block_Ofast

[ 80%] Built target run_perf_grayscott_seq_intrinsics_block_Ofast

[ 81%] Built target run_perf_grayscott_seq_intrinsics_link_block_O1

[ 81%] Built target run_perf_grayscott_seq_intrinsics_link_block_O2

[ 82%] Built target run_perf_grayscott_seq_intrinsics_link_block_O3

[ 82%] Built target run_all

[ 82%] Built target plot_thread

[ 82%] Call gnuplot grayscott_seqBase

[ 87%] Built target plot_grayscott_seqBase

[ 88%] Call gnuplot grayscott_seqVectorize

[ 91%] Built target plot_grayscott_seqVectorize

[ 92%] Call gnuplot grayscott_seqIntrinsics

[ 95%] Built target plot_grayscott_seqIntrinsics

[ 96%] Call gnuplot grayscott_seqIntrinsicsBlock

[100%] Built target plot_grayscott_seqIntrinsicsBlock

[100%] Built target plot_all