mex, mwblas, and multithreading: controlling the number of threads

4 visualizaciones (últimos 30 días)
dhyun
dhyun el 5 de Oct. de 2011
Hello,
Since maxNumCompThreads is going to be removed, does anyone know of another way to limit the number of cores utilized when calling the MathWorks BLAS library from a mex function?
Right now, I can use maxNumCompThreads(N) to limit my CPU usage to N cores on a shared machine when using ssyrk or dgemm or other useful BLAS functions. I've searched and searched and it doesn't seem like there is going to be a good way to do this without maxNumCompThreads. Are there any options besides "1 thread" and "all threads"?
Thanks, DH

Respuestas (1)

Kaustubha Govind
Kaustubha Govind el 6 de Oct. de 2011
From what I understand, the choice needs to be made at MATLAB startup. Starting MATLAB with the -singleCompThread option will force all operations to run in a single thread.
  3 comentarios
Kaustubha Govind
Kaustubha Govind el 6 de Oct. de 2011
From the documentation, it doesn't look like it. But, I'll let others weigh in. (Maybe you can use an OS-level control to restrict the number of threads for your MATLAB process?)
Jan
Jan el 6 de Oct. de 2011
The maxNumCompThreads function has been very useful for limitting the used resources, although some situations cannot be caugth by such a simple mechanism, e.g. if the BLAS functions are called from several threads of a PARFOR loop.
It is very sad, that its support will be finished.

Iniciar sesión para comentar.

Categorías

Más información sobre Startup and Shutdown en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by