Ejecutar funciones de MATLAB en entornos basados en subprocesos
Cientos de funciones de MATLAB® y otras toolboxes pueden ejecutarse en un entorno basado 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
.
Puede acelerar el siguiente código ejecutando varias funciones en segundo plano al mismo tiempo cuando usa Parallel Computing Toolbox.
for i = 1:100 f(i) = parfeval(backgroundPool,@rand,1,100); end
Comprobar 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 la 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, las funcionalidades de Gráficas, Creación de apps, Interfaces de lenguaje externas, Archivos y carpetas y Entorno y configuración no son compatibles.
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 siguiente tabla. Las funciones de las listas con indicadores de advertencia tienen limitaciones y notas 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) |
Statistics and Machine Learning Toolbox™ | Funciones compatibles con subprocesos (Statistics and Machine Learning Toolbox) |
Consulte también
Temas
- Run MATLAB Functions on a GPU (Parallel Computing Toolbox)