I want to compile this C code with MKL, but when I run it using the command mpicc -mkl mkl_thread.c
, it gives me an error about an unrecognized command line option -mkl
. When I run it as mpicc mkl_thread.c -o mkl_thread
, it gives a different error, saying "undefined reference to `MKL_Set_Num_Threads'". I don't know how I can run it with or link with MKL.
My code is:
define NUM_PROCS 5
int main (int argc, char ** argv)
{
int threads_per_proc[NUM_PROCS] = { 1,2 ,3, 4,5 };
int rank;
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
// ...
// Signal an error if rank >= 5
// ...
mkl_set_num_threads(threads_per_proc[rank]);
MPI_Finalize();
}
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…