Loading cmake/CMakeLists.txt +3 −2 Original line number Diff line number Diff line Loading @@ -13,9 +13,10 @@ set(SOURCE_FILES_JOIN mainJoin.cpp blasJoin/blasJoin.cpp ${UTIL_SOURCES}) set(CMAKE_CXX_FLAGS "-std=c++11") if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=knl -mtune=knl -fpic -ffast-math -DNDEBUG -O3 -DNDDEBUG -fopenmp -lboost_system -Wl,--no-as-needed -lmkl_intel_ilp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread -lm -ldl") # some issues with GNU, use Intel Compiler instead # set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=skylake-avx512 -fpic -ffast-math -DNDEBUG -O3 -DNDDEBUG -fopenmp -lboost_system -Wl,--no-as-needed -lmkl_intel_ilp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread -lm -ldl") elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -xmic-avx512 -qopenmp -DNDEBUG -O3 -lmkl_intel_thread -liomp5 -lpthread -lmkl_core -lmkl_intel_lp64 -lboost_system") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -xCore-AVX512 -qopenmp -DNDEBUG -O3 -lmkl_intel_thread -liomp5 -lpthread -lmkl_core -lmkl_intel_lp64 -lboost_system") # set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -qopt-report=2") add_definitions(-DDEBUG) endif() Loading cmake/blasJoin/blasJoin.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -47,6 +47,7 @@ void blasSelfJoinCountOnly(const double *x, const size_t N, const size_t D, cons // perform regular matrix multiplication // C := alpha*A*B' + beta*C // printf("blockRow: %zu, blockCol: %zu, D:%zu\n", blockRow, blockCol, D); cblas_dgemm(CblasRowMajor, CblasNoTrans, CblasTrans, blockRow, blockCol, D, 1.0, &x[i*BLOCKSIZE*D], D, &x[j*BLOCKSIZE*D], D, 0.0, iresult, blockCol); /* Loading Loading
cmake/CMakeLists.txt +3 −2 Original line number Diff line number Diff line Loading @@ -13,9 +13,10 @@ set(SOURCE_FILES_JOIN mainJoin.cpp blasJoin/blasJoin.cpp ${UTIL_SOURCES}) set(CMAKE_CXX_FLAGS "-std=c++11") if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=knl -mtune=knl -fpic -ffast-math -DNDEBUG -O3 -DNDDEBUG -fopenmp -lboost_system -Wl,--no-as-needed -lmkl_intel_ilp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread -lm -ldl") # some issues with GNU, use Intel Compiler instead # set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=skylake-avx512 -fpic -ffast-math -DNDEBUG -O3 -DNDDEBUG -fopenmp -lboost_system -Wl,--no-as-needed -lmkl_intel_ilp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread -lm -ldl") elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -xmic-avx512 -qopenmp -DNDEBUG -O3 -lmkl_intel_thread -liomp5 -lpthread -lmkl_core -lmkl_intel_lp64 -lboost_system") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -xCore-AVX512 -qopenmp -DNDEBUG -O3 -lmkl_intel_thread -liomp5 -lpthread -lmkl_core -lmkl_intel_lp64 -lboost_system") # set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -qopt-report=2") add_definitions(-DDEBUG) endif() Loading
cmake/blasJoin/blasJoin.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -47,6 +47,7 @@ void blasSelfJoinCountOnly(const double *x, const size_t N, const size_t D, cons // perform regular matrix multiplication // C := alpha*A*B' + beta*C // printf("blockRow: %zu, blockCol: %zu, D:%zu\n", blockRow, blockCol, D); cblas_dgemm(CblasRowMajor, CblasNoTrans, CblasTrans, blockRow, blockCol, D, 1.0, &x[i*BLOCKSIZE*D], D, &x[j*BLOCKSIZE*D], D, 0.0, iresult, blockCol); /* Loading