Bonjour
j'ai testé hier la 4.4.8.2-optim et j'ai eu un souci des le
lancement des anciennes simu. J'ai plein d'error qui apparaissent
et les simus plantent à t=0
le debug, la region et les simu sont là :
https://filesender.renater.fr/?s=download&token=9370b5da-b66f-4ac2-91aa-18da1e1ba7cf
Bonjour,
Merci Sigrid pour ton retour.
La version à tester est à disposition sur la forge : https://forge.codelutin.com/attachments/8181 (isis-fish-4.4.8.2-SNAPSHOT-optimisationmatrix)
Belle journée,
Sarah
On 04/03/2024 13:52, Sigrid LEHUTA wrote:
Bonjour Sarah,
merci beaucoup pour cette proposition et ces explications très claires. Ca me parait très prometteur. Et en effet, je doute qu'une précision à 10^-15 soit nécessaire. Il faudra tout de même réfléchir aux grandeurs pour lesquelles cela pourrait l'être (Steph ? à première vue tant que l'effort est en jours/heures et les captures en kg (même ne tonnes), on ne devrait jamais avoir besoin de ce niveau de précision). Mais en effet ça se teste.
Je serais volontaire pour essayer et cela tombe à pic car nous évaluons en ce moment la faisabilité d'une région très "grosse" pour voir jusqu'où il est raisonnable de pousser les développements. Cela pourra faire un bon test.
Sigrid
Le 04/03/2024 à 11:25, Sarah Bordage a écrit :
Bonjour à toutes et tous,
Suite aux retours de la dernière journée utilisateurs, nous travaillons sur l'optimisation des temps de simulation sur ISIS-Fish et nous avons un développement qui mériterait validation.
Nous somme partis d'une simulation de 12 mois sur Defipel pour analyser les temps de calculs. Sur cette simulation test, il s'est avéré que 80% du temps de calcul était dédié au calcul de la matrice de mortalité par pêche par la méthode 'SiMatrix.totalFishingMortality()'. Cette méthode prend un tableau de (stratégie, métier, classe, zone) et retourne une matrice de taille #classes x #zones, obtenue en faisant la somme sur les stratégies et sur les métiers des données d'entrée.
Avec Benjamin, nous avons amélioré l'algorithme en charge de sommer un tableau le long d'un axe, ce qui a divisé par ~2.8 le temps de calcul de la simulation test.
Souhaiteriez-vous tester cette nouvelle version ? Nous aimerions en particulier vérifier que les résultats sont toujours les mêmes, à epsilon près.
En effet, nous sommes ici sur un problème d'arithmétique sur des nombres à virgules flottantes (en double précision dans le cas d'ISIS). Pour rappel, les nombres flottants sont des représentations de nombres réels, équivalentes à une notation scientifique en base 2. Ces nombres ont un nombre limité de chiffres significatifs (environ 16 sur des type "double"). Il s'en suit qu'un nombre réel pour lequel il n'existe pas de représentation à virgule flottante est approximé. Cette approximation ne peut être égale à la valeur réelle qu'"à un certain epsilon près".
Lorsque des opérations arithmétiques sont effectuées sur des flottants, des erreurs d'approximations peuvent s'accumuler. De plus, contrairement au corps des réels, l'addition sur les flottants n'est pas associative : (a + b) + c n'est pas nécessairement égal à a + (b + c). Le nouvel algorithme n'effectuant pas les additions dans les même ordre qu'avant, et les résultats obtenus peuvent varier.
Sur mes tests, la différence relative entre la précédente et la nouvelle implantation sont de l'ordre de 10^(-15), ce qui me semble acceptable, étant donnée la précision limitée des flottants de type `double`. Il est impossible de dire que l'une des deux implantations donne des résultats plus corrects que l'autre, étant donnée la précision limitée des flottants de type `double`. Cependant, je souhaiterais savoir si sur de vraies simulations, les différences d'approximation sont également raisonnables.
Si certain(e)s sont intéressé(e)s pour tester ce développement, nous mettrons à disposition une pré-release de cette nouvelle version d'ISIS.
En vous souhaitant une belle semaine,
Sarah Bordage
_______________________________________________ Isis-fish-devel mailing list Isis-fish-devel@list.isis-fish.org https://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-devel-- Sigrid LEHUTA ~ ><> ~ Fisheries modeller IFREMER unit HALGO, Ecology and modeling for fisheries science lab (EMH) Member of the Mixed Research Unit DECOD: Dynamics and sustainability of ecosystems: from source to sea Member of l'Association Française d'Halieutique IFREMER, Centre Atlantique Rue de l'Ile d'Yeu - BP 21105 44311 Nantes Cedex 03, France Tél : 02 40 37 42 38 (N° interne : 8238) https://halgo.ifremer.fr/en https://www.umr-decod.fr/en https://www.association-francaise-halieutique.fr/
_______________________________________________ Isis-fish-devel mailing list Isis-fish-devel@list.isis-fish.org https://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-devel-- Sarah Bordage Code Lutin
_______________________________________________ Isis-fish-devel mailing list Isis-fish-devel@list.isis-fish.org https://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-devel
--
......................................................................
Stephanie MAHEVAS
UMR MARBEC - site de Sète
IFREMER/HM
https://annuaire.ifremer.fr/cv/16343/
Tel: (33) 04 99 57 32 39 (8239) - 06 75 83 59 33
o \ o / _ o __| \ / |__ o _ \ o / o
/|\ | /\ ___\o \o | o/ o/__ /\ | /|\
/ \ / \ | \ /) | ( \ /o\ / ) | (\ / | / \ / \
......................................................................