Borrar filtros
Borrar filtros

multi core full control

2 visualizaciones (últimos 30 días)
Anas A.Salam
Anas A.Salam el 18 de Abr. de 2013
hello i want to ask if there is a capability in MATLAB to have full control on CPU cores so if you have any info. about this subject please tell me :) thanks
  4 comentarios
Walter Roberson
Walter Roberson el 18 de Abr. de 2013
You could use a distributed array.
Anas A.Salam
Anas A.Salam el 18 de Abr. de 2013
how to use this tool could you learn me ??

Iniciar sesión para comentar.

Respuestas (2)

Sean de Wolski
Sean de Wolski el 18 de Abr. de 2013
With the Parallel Computing Toolbox you have direct access to the MPI library low-level functionality. This enables you to use functions such as labSend to explicitly send something to a worker on a CPU core.
What are you trying to do?
  3 comentarios
Sean de Wolski
Sean de Wolski el 18 de Abr. de 2013
I think the Parallel Computing Toolbox with parfor or spmd would do that.
Anas A.Salam
Anas A.Salam el 18 de Abr. de 2013
i have to read it and then i will reply to you :) thank you so much

Iniciar sesión para comentar.


Jason Ross
Jason Ross el 18 de Abr. de 2013
Editada: Jason Ross el 18 de Abr. de 2013
MATLAB does not provide control at the core level. That behavior is passed off to the operating system to do with as it pleases.
What MATLAB does is let you have a collection of worker processes, which can be located on the same machine or on a cluster, and then provides a variety of methods to distribute work to those workers.
It sounds like the approach which might appeal most to you is the job/task workflow, where you can create a job (or series of jobs) that will execute in a certain order with certain sub-tasks that need to be executed in a certain manner. You might find within these tasks that other parallel language contstructs like parfor or spmd provide the types of processing you are looking for.
I'd encourage you to read the documentation and review the examples for the Parallel Computing Toolbox, as you already have an outline of your algortithm and when you look at the various commands available, you will likely determine which ones map most closely to the parts of your algorithm and assemble your program from there.
In terms of monitoring your cores, the various commands will return errors and handle the work distribution, and montior the job status, which are the job of the scheduler you are using. The "local" scheduler uses the cores on your local machine, but it's also possible to use compute clusters in the same manner, with little or no modifications to the code that works on "local".
What this means is that it's possible that you don't (and shouldn't) worry about how the frames are split up for processing. You could, for example, do that processing using parfor, and the work will be distributed to the workers by the scheduler. This will mean that your code will be identical on a 4 core machine or a 128 node cluster since you don't really care about the specifics of processing and hand that off to the scheduler to take care of, then move onto the next step in processing.

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