change binned to be the default

This commit is contained in:
Ruipeng Li 2022-06-08 12:40:43 -07:00
parent 1112186d12
commit ae31f37135
3 changed files with 5 additions and 4 deletions

View File

@ -292,7 +292,7 @@ main( hypre_int argc,
spgemm_use_vendor = 1; spgemm_use_vendor = 1;
#endif #endif
HYPRE_Int spgemm_alg = 1; HYPRE_Int spgemm_alg = 1;
HYPRE_Int spgemm_binned = 0; HYPRE_Int spgemm_binned = 1;
HYPRE_Int spgemm_rowest_mtd = 3; HYPRE_Int spgemm_rowest_mtd = 3;
HYPRE_Int spgemm_rowest_nsamples = -1; /* default */ HYPRE_Int spgemm_rowest_nsamples = -1; /* default */
HYPRE_Real spgemm_rowest_mult = -1.0; /* default */ HYPRE_Real spgemm_rowest_mult = -1.0; /* default */

View File

@ -750,7 +750,7 @@ main( hypre_int argc,
HYPRE_Int verify = 0; HYPRE_Int verify = 0;
HYPRE_Int use_vendor = 0; HYPRE_Int use_vendor = 0;
HYPRE_Int spgemm_alg = 1; HYPRE_Int spgemm_alg = 1;
HYPRE_Int spgemm_binned = 0; HYPRE_Int spgemm_binned = 1;
HYPRE_Int rowest_mtd = 3; HYPRE_Int rowest_mtd = 3;
HYPRE_Int rowest_nsamples = -1; /* default */ HYPRE_Int rowest_nsamples = -1; /* default */
HYPRE_Real rowest_mult = -1.0; /* default */ HYPRE_Real rowest_mult = -1.0; /* default */

View File

@ -35,17 +35,18 @@ hypre_DeviceDataCreate()
#else #else
hypre_DeviceDataSpgemmUseVendor(data) = 0; hypre_DeviceDataSpgemmUseVendor(data) = 0;
#endif #endif
/* for CUDA, it seems cusparse is slow due to memory allocation inside the transposition */ /* for CUDA, it seems cusparse is slow due to memory allocation inside the transposition */
#if defined(HYPRE_USING_CUDA) #if defined(HYPRE_USING_CUDA)
hypre_DeviceDataSpTransUseVendor(data) = 0; hypre_DeviceDataSpTransUseVendor(data) = 0;
#endif #endif
/* hypre SpGEMM parameters */
const HYPRE_Int Nsamples = 64; const HYPRE_Int Nsamples = 64;
const HYPRE_Real sigma = 1.0 / sqrt(Nsamples - 2.0); const HYPRE_Real sigma = 1.0 / sqrt(Nsamples - 2.0);
const HYPRE_Real multfactor = 1.0 / (1.0 - 3.0 * sigma); const HYPRE_Real multfactor = 1.0 / (1.0 - 3.0 * sigma);
hypre_DeviceDataSpgemmAlgorithm(data) = 1; hypre_DeviceDataSpgemmAlgorithm(data) = 1;
hypre_DeviceDataSpgemmBinned(data) = 0; hypre_DeviceDataSpgemmBinned(data) = 1;
hypre_DeviceDataSpgemmNumBin(data) = 0; hypre_DeviceDataSpgemmNumBin(data) = 0;
hypre_DeviceDataSpgemmHighestBin(data)[0] = 0; hypre_DeviceDataSpgemmHighestBin(data)[0] = 0;
hypre_DeviceDataSpgemmHighestBin(data)[1] = 0; hypre_DeviceDataSpgemmHighestBin(data)[1] = 0;