I'm working on some HPC stuff on the EVMK2H12 board with MCSDK HPC 3.00.01.08 and DSPLIB C66x 3.4.0.0. My programs are currently just benchmarking the DSPs and figuring out how well the TI DSP libraries work. I am basing my program off the OpenMP example dsplib_fft. My question is, if I call the functions in DSPLIB that way, does OpenMP actually parallelize the execution of the functions? Going through the source code of the libraries, I don't see any "#pragma omp"'s in there so I can only assume that there is no parallel processing occurring. Of course, I don't have much knowledge of OpenMP or high performance computing in general so I'm just speaking from ignorance. I just don't get how calling a function through OpenMP could magically parallelize it when no code in the function shows any creation threads.
Also, is there any way to check how many threads/core are active? I'm not using CCS for any code development. All my compilation is done on the EVM.
EDIT: I checked the number of threads and processors. Threads shows only 1 (but that's expected as it is outside any omp pragmas), but the processor count shows 4. Does this mean that my program is executing in the ARM cores and not the DSPs?
And one more thing, I am booting from NFS server. CCS doesn't seem to like that because I can't run any programs on the board directly through CCS.