[Isis-fish-user] duree simulation
Bonjour Benjamin j'ai lance une simulation avec la V3.0.16 pour la pecherie golfe de Gascogne Langoustine avec 2 règles. Pour 5 ans avec tous les exports, la simulation dure 45 minutes..., sachant que normalement la simulation devrait durer 10 ans et que pour l'instant je n'ai pas de mesure de gestion. ca me parait pas tres rapide et dans tous les cas loin des performances dont on a parlees au debut. Il serait raisonnable de ne pas depasser 15 minutes. Stephanie -- ...................................................................... Stephanie MAHEVAS (Stephanie.Mahevas@ifremer.fr) IFREMER/EMH (Ecologie et Modèles pour l'Halieutique) Tel: 02 40 37 41 81 Fax: 02 40 37 40 75 o \ o / _ o __| \ / |__ o _ \ o / o /|\ | /\ ___\o \o | o/ o/__ /\ | /|\ / \ / \ | \ /) | ( \ /o\ / ) | (\ / | / \ / \ ......................................................................
On Tue, 22 May 2007 11:38:26 +0200 Stephanie MAHEVAS <Stephanie.Mahevas@ifremer.fr> wrote:
Bonjour Benjamin
j'ai lance une simulation avec la V3.0.16 pour la pecherie golfe de Gascogne Langoustine avec 2 règles. Pour 5 ans avec tous les exports, la simulation dure 45 minutes..., sachant que normalement la simulation devrait durer 10 ans et que pour l'instant je n'ai pas de mesure de gestion.
Je ne pense pas que les mesures de gestion impacte enormement les temps de simulation. Sauf si les regles elles meme prennent du temps
ca me parait pas tres rapide et dans tous les cas loin des performances dont on a parlees au debut.
En fait apres plusieurs test tout se situe dans fishingMortality. Cette methode prendre 60% du temps de simulation. duree de simulation 484.621 temps dans cette methode 268.555 fishingMortality call: 273420 min: 0.000 mean: 0.000 max: 1.271 total: 268.555 call_nest: 418500 total_with_nest: 280.718 duree de simulation 293.859 temps dans cette methode 195.622 fishingMortality call: 200250 min: 0.000 mean: 0.000 max: 0.840 total: 195.622 call_nest: 306556 total_with_nest: 205.202 en faisant un return 0 au debut de la methode j'obtiens ca duree de simulation 98 temps dans cette methode 6.445 fishingMortality call: 139500 min: 0.000 mean: 0.000 max: 0.723 total: 6.445 call_nest: 0 total_with_nest: 6.445 toutes les simulations sont sur 120 mois Bien sur on pourrait penser que maintenant la solution est simple, et bien non :(. Car en regardant le code je ne vois pas comme optimiser trop les choses :(. Et surtout si on fait 268 / 273420 = 0.000980s donc chaque appel prend a peine un millieme de seconde. N'y aurait-il pas un moyen d'appeler moins de fois cette methode ? fishingMortality(Strategy str, Metier metier, Date date, PopulationGroup group, Zone zone) en faisant rapide: 12(str) x 7(met) x 25(group) x 9(zone) = 11 340 Lorsque je fais une simulation avec la base de comparaison temas (non spacialisée de Youen) sur 10 ans J'ai des performances acceptables: duree de simulation 141.977 temps dans cette methode 9.700 fishingMortality call: 5280 min: 0.000 mean: 0.001 max: 1.449 total: 9.700 call_nest: 7920 total_with_nest: 14.876 toujours pour 120mois de simulation, ce qui donne un peu plus d'une seconde par mois. et donc un peu plus de 2 min pour 10 ans. en faisant rapide: 15(str) x 4(met) x 11*2(group) x 1(zone) = 1320 Je vais essayer de continuer a y reflechir, il parrait que la nuit porte conseille :)
Il serait raisonnable de ne pas depasser 15 minutes.
Tu peux jouer sur les resultats a sauver, par exemple si seulement les exports t'interessent, tu ne selectionnes aucun resultat seulement les exports que tu souhaites et isis prendra seulement les resultats dont il a besoin. Ce qui doit lui faire faire moins de calculs mais je ne pense pas que cela descende les temps de facon drastique :( ps: c'etait la base qui prenait plusieurs jours avec la v2 ? -- Benjamin -------------------- tél: +33 (0) 2 40 50 29 28 email: poussin@codelutin.com () campagne du ruban ascii http://www.codelutin.com /\ pour les mails en ascii
au niveau de ta fonction public MatrixND matrixCatchRatePerStrategyMet(Population pop, Date date) t'aurais pas intérêt à faire un test pour vérifier que le métier est bien un métier possible du set of vessels, ça t'évite dans le cas contraire les deux boucles group et zone et l'appel aux fonctions qui va avec (catchRatePerStrategyMet puis FishingMortality). Une autre idée: si tu inverses la boucle group et la boucle zone dans cette même fonction, tu peux vérifier qu'il y a bien intersection entre zone et la zone métier (dans le cas contraire, pas la peine de lancer la boucle group). En espérant pas dire trop de conneries... A+ Hilaire Benjamin POUSSIN a écrit :
On Tue, 22 May 2007 11:38:26 +0200 Stephanie MAHEVAS <Stephanie.Mahevas@ifremer.fr> wrote:
Bonjour Benjamin
j'ai lance une simulation avec la V3.0.16 pour la pecherie golfe de Gascogne Langoustine avec 2 règles. Pour 5 ans avec tous les exports, la simulation dure 45 minutes..., sachant que normalement la simulation devrait durer 10 ans et que pour l'instant je n'ai pas de mesure de gestion.
Je ne pense pas que les mesures de gestion impacte enormement les temps de simulation. Sauf si les regles elles meme prennent du temps
ca me parait pas tres rapide et dans tous les cas loin des performances dont on a parlees au debut.
En fait apres plusieurs test tout se situe dans fishingMortality. Cette methode prendre 60% du temps de simulation.
duree de simulation 484.621 temps dans cette methode 268.555 fishingMortality call: 273420 min: 0.000 mean: 0.000 max: 1.271 total: 268.555 call_nest: 418500 total_with_nest: 280.718
duree de simulation 293.859 temps dans cette methode 195.622 fishingMortality call: 200250 min: 0.000 mean: 0.000 max: 0.840 total: 195.622 call_nest: 306556 total_with_nest: 205.202
en faisant un return 0 au debut de la methode j'obtiens ca
duree de simulation 98 temps dans cette methode 6.445 fishingMortality call: 139500 min: 0.000 mean: 0.000 max: 0.723 total: 6.445 call_nest: 0 total_with_nest: 6.445
toutes les simulations sont sur 120 mois
Bien sur on pourrait penser que maintenant la solution est simple, et bien non :(. Car en regardant le code je ne vois pas comme optimiser trop les choses :(. Et surtout si on fait
268 / 273420 = 0.000980s
donc chaque appel prend a peine un millieme de seconde. N'y aurait-il pas un moyen d'appeler moins de fois cette methode ?
fishingMortality(Strategy str, Metier metier, Date date, PopulationGroup group, Zone zone)
en faisant rapide: 12(str) x 7(met) x 25(group) x 9(zone) = 11 340
Lorsque je fais une simulation avec la base de comparaison temas (non spacialisée de Youen) sur 10 ans J'ai des performances acceptables:
duree de simulation 141.977 temps dans cette methode 9.700 fishingMortality call: 5280 min: 0.000 mean: 0.001 max: 1.449 total: 9.700 call_nest: 7920 total_with_nest: 14.876
toujours pour 120mois de simulation, ce qui donne un peu plus d'une seconde par mois. et donc un peu plus de 2 min pour 10 ans.
en faisant rapide: 15(str) x 4(met) x 11*2(group) x 1(zone) = 1320
Je vais essayer de continuer a y reflechir, il parrait que la nuit porte conseille :)
Il serait raisonnable de ne pas depasser 15 minutes.
Tu peux jouer sur les resultats a sauver, par exemple si seulement les exports t'interessent, tu ne selectionnes aucun resultat seulement les exports que tu souhaites et isis prendra seulement les resultats dont il a besoin. Ce qui doit lui faire faire moins de calculs mais je ne pense pas que cela descende les temps de facon drastique :(
ps: c'etait la base qui prenait plusieurs jours avec la v2 ?
-- Benjamin -------------------- tél: +33 (0) 2 40 50 29 28 email: poussin@codelutin.com () campagne du ruban ascii http://www.codelutin.com /\ pour les mails en ascii
------------------------------------------------------------------------
_______________________________________________ Isis-fish-user mailing list Isis-fish-user@lists.labs.libre-entreprise.org http://lists.labs.libre-entreprise.org/mailman/listinfo/isis-fish-user
-- Hilaire Drouineau IFREMER, département EMH Centre de Nantes - BP 21105 - 44311 Nantes Cedex 3 tel : +33 (0)2 40 37 42 12 - fax : +33 (0)2 40 37 40 75 email : hilaire.drouineau@ifremer.fr - web : http://www.ifremer.fr/emh **********************************************************************
participants (3)
-
Benjamin POUSSIN -
Hilaire DROUINEAU -
Stephanie MAHEVAS