Olivier Eckmann Posté(e) hier à 07:50 Posté(e) hier à 07:50 Bonjour, Je suis confronté à un problème un peu particulier. Dans mon dessin AutoCAD, j'ai environ 35 000 points. Pour chacun d'eux, j'extrais ses coordonnées, puis je lance un EXE externe en passant ces coordonnées en paramètre. Ce programme externe tourne environ 2 à 3 minutes et produit un fichier TXT que je lis et que je mouline pour créer un nouvel objet dans AutoCAD. Le programme externe est mono threat, alors que je dispose de 20 cœurs dispo (variable d'environnement NUMBER_OF_PROCESSORS dispo pour connaître ce nombre). Ce que j'aimerais, c'est lancé en parallèle 15 process chacun tournant sur son cœur, mais chacun de manière synchrone pour attendre le résultat avant d'en chaîner un autre. L'idée c'est que les 15 cœurs soient occupés en permanence. Même à ce rythme, ça va prendre 4 jours, sinon c'est 2 mois 😞 Actuellement, j'ai fait le programme en Lisp (plus rapide à mettre en place), mais s'il faut passer en C# ça sera possible sans souci. J'ai regardé du côté du traitement multithreat, mais ça ne semble pas adapté, puisque ce n'est pas un seul processus à répartir sur plusieurs threat. SI vous avez une idée, je suis preneur de toutes réflexions. Merci Olivier
Fraid Posté(e) hier à 12:56 Posté(e) hier à 12:56 Bonjour, Je sais que tu n'est pas trop fan de Python, mais il me semble que tu as ce que tu veux avec ce module: multiprocessing j'ai été confronté à un problème similaire avec le traitement de nuages de points. Et finalement, j'ai abandonné la gestion de threads qui ne faisais pas gagner tant de temps que cela, et rend le programme plus complexe. (le contraire de l'esprit Python) https://github.com/Fraiddd
Olivier Eckmann Posté(e) il y a 6 heures Auteur Posté(e) il y a 6 heures Salut, Ok, je crois que je vais partir sur la création de fichier .BAT pour traiter par paquet de 400 points. Ca fera environ 10 heures de traitement par BAT. Si j'en lance 30 par nuit sur ma station de calcul à 32 cœurs, je devrais avoir la totalité calculée en 3 nuits. Ca sera plus simple à mettre en œuvre. Merci
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant