Main Content

Cette page a été traduite par traduction automatique. Cliquez ici pour voir la version originale en anglais.

Programmation parallèle asynchrone

Évaluez les fonctions en arrière-plan à l'aide de parfeval

Vous pouvez évaluer une fonction en arrière-plan sans attendre qu'elle se termine, en utilisant parfeval. Dans de nombreux cas, il peut être pratique de sortir rapidement d’une boucle for. Par exemple, dans une procédure d’optimisation, vous pouvez arrêter la boucle plus tôt lorsque le résultat est suffisamment bon. Vous pouvez le faire sur un ou tous les workers de pool parallèle, en utilisant parfeval ou parfevalOnAll. Cela peut être utile si vous souhaitez pouvoir tracer des résultats intermédiaires. Notez que cela est différent de l'utilisation de parfor, où vous devez attendre que la boucle se termine.

Utilisez send et poll ensemble pour envoyer et interroger des messages ou des données provenant de différents workers à l'aide d'une file d'attente de données. Vous pouvez utiliser afterEach pour ajouter une fonction à appeler lorsque de nouvelles données sont reçues d'une file d'attente de données.

Utilisez afterEach et afterAll pour appeler automatiquement des fonctions après chaque ou après que tous les éléments d'un tableau Future soient terminés. Ce tableau peut contenir des futures renvoyées par parfeval, parfevalOnAll, afterEach ou afterAll.

Fonctions

développer tout

parfevalExécuter la fonction sur le worker de pool parallèle
parfevalOnAllRun function asynchronously on all workers in parallel pool
ticBytesStart counting bytes transferred within parallel pool
tocBytesRead how many bytes have been transferred since calling ticBytes
sendSend data from worker to client using a data queue
poll Retrieve data sent from a worker
afterEachDefine a function to call when new data is received on a DataQueue
afterEachRun function after each function finishes running in the background
afterAllRun function after all functions finish running in the background
fetchOutputsRetrieve results from function running in the background
fetchNextRetrieve next unread outputs from Future array
cancelStop function running in the background
cancelAllCancel all jobs or tasks (depuis R2022a)
waitWait for futures to complete
FutureFunction scheduled to run
parallel.PoolPool parallèle de workers
parallel.pool.DataQueueSend and listen for data between client and workers
parallel.pool.PollableDataQueue Send and poll data between client and workers

Rubriques