#ifndef define_h
#define define_h

// List of benchmark
#define BENCHMARK_NB_THREAD                   4

#define BENCHMARK_DHRYSTONE                   0
#define BENCHMARK_SORT_ALL                    0
#define BENCHMARK_SORT_BUBBLE                 0
#define BENCHMARK_SORT_INSERTION              0
#define BENCHMARK_SORT_SELECTION              0
#define BENCHMARK_SORT_SHELL                  0
#define BENCHMARK_MATRIX_MULTIPLICATION_ST    0
#define BENCHMARK_MATRIX_MULTIPLICATION_MT    1
#define BENCHMARK_SELF_CODE_MODIFYING         0

#define VERBOSE_SORT                          0

#define VERIFICATION_SORT                     0
#define VERIFICATION_MATRIX_MULTIPLICATION    0

// Benchmark size
#define DHRYSTONE_NB_RUNS                     5000
#define SORT_ALL_SIZE                         1000
#define SORT_BUBBLE_SIZE                      1500
#define SORT_INSERTION_SIZE                   2300
#define SORT_SELECTION_SIZE                   1600
#define SORT_SHELL_SIZE                       5000
#define MATRIX_MULTIPLICATION_ST_SIZE         50
#define MATRIX_MULTIPLICATION_MT_SIZE         96
#define MATRIX_MULTIPLICATION_MT_LOCK_BY_LINE 1
#define SELF_CODE_MODIFYING_NB_RUNS           10

// Timer configuration
#define TIMER_INTERRUPT                       0
#define TIMER_INTERRUPT_PERIOD                100000

#endif // define_h
