1
Fork 0
mirror of https://github.com/Steffo99/unimore-hpc-assignments.git synced 2024-11-22 16:14:24 +00:00
hpc-2022-g3/atax/atax.hu
2022-12-07 08:44:06 -05:00

60 lines
1.1 KiB
Text

#ifndef ATAX_H
#define ATAX_H
/* Default to STANDARD_DATASET. */
#if !defined(NANO_DATASET) && !defined(MINI_DATASET) && !defined(SMALL_DATASET) && !defined(STANDARD_DATASET) && !defined(LARGE_DATASET) && !defined(EXTRALARGE_DATASET)
#ifdef HPC_DEBUG
#define NANO_DATASET
#else
#define EXTRALARGE_DATASET
#endif
#endif
/* Do not define anything if the user manually defines the size. */
# if !defined(NX) && !defined(NY)
/* Define the possible dataset sizes. */
#ifdef NANO_DATASET
#define NX 3
#define NY 5
#endif
#ifdef MINI_DATASET
#define NX 32
#define NY 32
#endif
#ifdef SMALL_DATASET
#define NX 500
#define NY 500
#endif
#ifdef STANDARD_DATASET
#define NX 4000
#define NY 4000
#endif
#ifdef LARGE_DATASET
#define NX 8000
#define NY 8000
#endif
#ifdef EXTRALARGE_DATASET
#define NX 12000
#define NY 12000
#endif
#endif
#define _PB_NX POLYBENCH_LOOP_BOUND(NX,nx)
#define _PB_NY POLYBENCH_LOOP_BOUND(NY,ny)
/* Define the data type to perform the benchmark with. */
#ifndef DATA_TYPE
#define DATA_TYPE float
#define DATA_PRINTF_MODIFIER "%0.2lf "
#endif
#endif