Ejecutar funciones de MATLAB en un entorno basado en subprocesos
Hay cientos de funciones de MATLAB® y otras toolboxes que pueden ejecutarse en entornos basados en subprocesos. Puede usar backgroundPool
o parpool("threads")
para ejecutar código en un entorno basado en subprocesos.
Para ejecutar una función en segundo plano, utilice
parfeval
ybackgroundPool
.Para obtener más información acerca de grupos de subprocesos, consulte Choose Between Thread-Based and Process-Based Environments (Parallel Computing Toolbox).
Ejecutar funciones en segundo plano
Si una función es compatible con un entorno basado en subprocesos, puede usar parfeval
y backgroundPool
para ejecutarla en segundo plano.
Use la función rand
para generar una matriz de 100
por 100
de números aleatorios en segundo plano.
f = parfeval(backgroundPool,@rand,1,100);
Para obtener más información acerca de cómo ejecutar código en segundo plano, consulte backgroundPool
.
Ejecutar funciones en un grupo de subprocesos
Si una función es compatible con un entorno basado en subprocesos, puede ejecutarla en un grupo de subprocesos si tiene Parallel Computing Toolbox™.
parpool("threads"); parfor i = 1:100 A{i} = rand(100); end
Para obtener más información acerca de grupos de subprocesos, consulte ThreadPool
(Parallel Computing Toolbox).
Expansión automática
Si tiene Parallel Computing Toolbox, el código que usa backgroundPool
se expande automáticamente para utilizar más núcleos disponibles.
Para obtener más información sobre el número de núcleos que puede utilizar, consulte la propiedad NumWorkers
de BackgroundPool
.
Ejecutar varias funciones en segundo plano al mismo tiempo cuando usa Parallel Computing Toolbox permite acelerar el siguiente código.
for i = 1:100 f(i) = parfeval(backgroundPool,@rand,1,100); end
Comprobar las funciones compatibles con subprocesos
Si una función de MATLAB es compatible con subprocesos, puede consultar información adicional sobre el uso de subprocesos en la página de su función. Consulte "Entorno basado en subprocesos", en la sección Prestaciones ampliadas, al final de la página de la función.
Sugerencia
Para obtener una lista filtrada de todas las funciones de MATLAB compatibles con subprocesos, consulte Lista de funciones (entorno basado en subprocesos).
En general, la funcionalidad de Gráficas, Creación de apps, Interfaces de lenguaje externas, Archivos y carpetas y Entorno y configuración no es compatible.
MATLAB y varias toolboxes incluyen funciones cuya compatibilidad con subprocesos está integrada. Para ver las listas de todas las funciones de MATLAB y de estas toolboxes compatibles con subprocesos, utilice los enlaces de la tabla siguiente. Las funciones de las listas con indicadores de advertencia tienen notas y limitaciones de uso específicas para ejecutar la función en subprocesos. Puede consultar las notas y limitaciones de uso en la sección Prestaciones ampliadas de la página de referencia de la función. Para obtener más información sobre las actualizaciones de las funciones compatibles con subprocesos individuales, consulte las notas de la versión.
Producto | Lista de funciones compatibles con subprocesos |
---|---|
MATLAB | Funciones compatibles con subprocesos |
Image Processing Toolbox™ | Funciones compatibles con subprocesos (Image Processing Toolbox) |
Signal Processing Toolbox™ | Funciones compatibles con subprocesos (Signal Processing Toolbox) |
Consulte también
Temas relacionados
- Run MATLAB Functions on a GPU (Parallel Computing Toolbox)