Quelques questions relatives aux meilleures pratiques avec ipyparallel. J'essaye de l'employer pour implémenter un cadre de Monte Carlo pour un modèle qui prend ~ 15 pour fonctionner. L'idée est d'exécuter N moteurs (via SLURM) et avoir un processus "maître" qui met en file d'attente toutes les tâches requises de façon asynchrone et occupée-attend l'achèvement, mettant à jour un db sqlite avec le statut de chaque exécution.Notification lorsqu'une nouvelle tâche démarre en parallèle ipython
Je voudrais savoir quand une tâche a été assignée à un moteur afin que je puisse suivre son statut dans ma base de données. J'ai essayé d'utiliser les instances AsyncResult pour obtenir le msg_id et interroger la base de données de tâches, mais le champ "démarré" n'est pas mis à jour tant que la tâche n'est pas terminée.
Il semble qu'il devrait y avoir un moyen de recevoir cette notification, ou au moins d'interroger le concentrateur pendant que le moteur fonctionne.
De même, dois-je faire quelque chose pour éviter le timeout du battement du moteur pendant une tâche de longue durée? Est-ce le but de client.spin_thread()?
Merci!