GMAP / NPB-GPU

NAS Parallel Benchmarks for evaluating GPU and APIs
Other
18 stars 7 forks source link

FT running problem on classD #5

Open Ed1sonChen opened 1 year ago

Ed1sonChen commented 1 year ago

I built and ran the FT program for the class D problem size, but the verification fails. The verification routine is failing because an overflow error is occurring with class D (int type is not large enough for this class). Would you please give me some help?

gabriellaraujocoding commented 1 year ago

Hello. Thank you for using our NPB version and reporting this issue.

We have recently solved a similar issue in the IS benchmark (concerning the class D and overflow with int numbers).

A way to solve this is creating a macro that uses long type instead of int type when running the class D or larger.

A macro should be something like this:

#if CLASS == 'D'
typedef long INT_TYPE;
#else
typedef int INT_TYPE;
#endif

After that, you can replace the int type in the source code with that macro:

// using int type
int number;
// using the macro for class D
INT_TYPE number;

We will provide this update in the FT benchmark as soon as possible.

Additionally, since class D consumes a lot of memory, you should verify if your GPU has enough memory.