How efficient is parallel processing and assignment of MATLAB kernels to kernels?

I plan to buy a workstation to run data analysis scripts in Matlab. I plan to increase system memory from 6 to 24 GB. I am considering whether to buy a 6-core processor, dual 4-core or dual 6-core. (Now I have a 2-core processor).

Now I have significant delays in what I consider MATLAB to be integrated into the memory management system. (For example, it takes 30 seconds to execute the function, but tic and toc indicate that the last line of code is executed after 18 seconds). I also have some delays due to arithmetic processing on large blocks of data, but I don't do any really heavy calculations.

At this point, I do not want / cannot explicitly parallelize my code. I know that some people have a lot of experience with the internal components of MATLAB, so I hope someone can help me with how efficiently MATLAB uses multiple cores. Will it run the garbage collector in a separate thread from computational processes? What operations are automatically parallelized?

+3
source share
2 answers
+1

Matlab Parallel Compute Toolbox, , , , , Matlab, .

Matlab - , 8 8- 12- 12-, . , , Fortran, , Matlab , Fortran + OpenMP MPI, , Matlab , Fortran. :

  • () parallelism; , ; , , .
  • : , ​​ ;
  • : ( , ), / ; 4 , , , ;
  • ( ), ;
  • , , , , ( !)

Matlab PCT , . , , ; .

? , Matlab ? , ( - , ), .

6 , 6- - , .

+3

Source: https://habr.com/ru/post/1776492/


All Articles