Arena 64 bits exécute un modèle de simulation avec plus de 323 millions d’entités


Arena 64 bits exécute un modèle de simulation avec plus de 323 millions d’entités

Grâce à la version 15 du logiciel de simulation Arena, le gouvernement américain pourrait faire une analyse démographique en simulant la population entière des États-Unis. Chaque individu évoluerait de manière indépendante, tout en subissant l’influence de son environnement et des autres gens. Un tel modèle pourrait générer les naissances, les décès ainsi que traiter l’immigration, en faisant le suivi des attributs des personnes: âge, sexe, emplacement, etc. Ceci permettrait des prévisions de qualité des ressources requises dans les différents services publics.

us-population-arena-simulation-analyse-demographique

Rockwell a mis à jour le coeur de son logiciel Arena pour en faire une application 64 bits native. Ceci signifie que la quantité de mémoire utilisée lors de l’exécution n’est plus limitée à 2/4 Go (selon la version de Windows: 32/64 bits). Sur un système 64 bits, le logiciel peut maintenant utiliser autant de mémoire vive qu’il y en a de disponible, soit jusqu’à 8 To (8192 Go) !!

Matériel informatique et configuration Windows pour les gros modèles de simulation

Consultation gratuite – 1 heure avec un expert SimWell en Simulation Arena

Découvrez comment les services de simulation SimWell peuvent aider votre entreprise!

SimWell a fait tous les tests pour cet article sur un ordinateur portable Windows 10 64 bits ayant un processeur Intel i7, 24 Go de mémoire vive et un “soild-state drive” (mémoire flash, donc très rapide comme disque dur). Il est important de mentionner que Windows peut bonifier la mémoire vive en créant un “page file” sur le disque dur, qui stocke les informations excédentaires, lorsque la mémoire vive devient pleine, à tout moment. Ce “page file” est configurable et peut être désactivé. Ici, pour les tests requérant plus de 24 Go de mémoire, le “page file” a été réglé à une taille fixe de 50 Go. Cette technique serait probablement plutôt longue à exécuter sur une machine comporant une disque dur conventionnel “non-SSD”, qui est beaucoup plus lent pour la lecture et l’écriture.

Ceci dit, la mémoire vive (RAM) devient beaucoup plus abordable, ces dernières années. Acheter plus de mémoire pourrait être une solution abordable et encore plus performante que le “page file”, pour des modèles extrêmement gros. De nos jours, sur un ordinateur de bureau, quelques centaines de dollars peuvent permettre d’acheter et installer 64 Go de mémoire vive, si la carte mère permet cette configuration.

SimWell fait ses premiers tests de modèles immenses

SimWell souhaitait d’abord confirmer qu’un modèle Arena pourrait traiter chaque individu résidant au Canada, tout en conservant un nombre raisonnable d’attributs stockés dans chaque entité. Le modèle utilisé ne contient qu’une logique simplissime: un “Create”, suivi d’un “Infinite Hold”, pour garder actives toutes les entités créées. Par défaut, lorsqu’un nouveau modèle Arena est créé, il n’est pas tout à fait prêt pour exécuter un très gros modèle. Afin d’empêcher qu’Arena consomme plus de ressources que nécessaire, certains paramètres sont réglés avec des valeurs assez basses. Ces paramètres sont les “Array Sizes” qui se trouvent dans le menu “Run -> Setup” de votre nouveau modèle. Le paramètre RSET est celui qui définit le volume de mémoire qui sera alloué pour stocker les entités actives dans le modèle, ainsi que leurs attributs.

arena-simulation-64-bit-version-15-array-sizes
arena-simulation-model-for-creating-millions-of-active-entities
arena-simulation-user-defined-attributes-on-entities-using-memory

Les entités,par défaut, portent un certain nombre d’attributs standard, tels que: le numéro d’entité, le moment de sa création, etc. Aussi, chaque attribut additionel créé par l’usager dans le modèle rend chaque entité plus lourde en termes de memoire vive utilisée. À noter que les attributs utilisent la même quantité de mémoire, qu’une valeur leur ait été assignée, ou mon. Par exemple, un attribut-nombre-réel débute avec la valeur zéro et ce zéro utilise de la mémoire pour rester stocké dans l’entité.

La valeur par défaut du RSET est 6 millions. Sans aucun attribut-usager rajouté, Arena nous donne une erreur d’exécution après que 352,890 entités aient été créées. Le modèle s’arrête, puisqu’il ne peut stocker d’entité supplémentaire. Ensuite, nous avons testé avec un RSET de 1 milliard. Cette fois, 58 millions d’entités ont pu être créées. Enfin, nous avons testé différentes combinaisons de valeur RSET et d’attributs-usager additionels, jusqu’à ce que nous trouvions une combinaison intéressante pour simuler la population actuelle du Canada, incluant un certain potentiel de croissance, avec 20 attributs numériques pour décrire les personnes. Une valeur de 1.5 milliards pour le RSET nous a permis de créer un peu plus de 40 millions d’entités. Environ 18 Go de mémoire vive était utilisée par Arena, selon le gestionnaire de tâches de Windows.

Repousser les limites d’Arena 15

Les experts chez SimWell étaient évidemment curieux de voir jusqu’où ils pourraient emmener le nombre d’entités actives. Après quelques tentatives, un modèle a créé plus de 323 millions d’entités, soir un peu plus que la population des États-Unis. Très impressionnant et prometteur!

Voici, ci-bas, un tableau de tests effectués au cours de cette expérience.

RSETAttributsNombre max. d’entitésMémoire vive approx. utilisée par Arena (Go)
6,000,000 (default)no user defined attribute352,8900.2
1,000,000,000pas d’attribut-usager58,823,51512
1,000,000,00010 attributs nombre réel37,037,02812
1,000,000,0001 attribut nombre réel de 10 lignes37,037,02812
1,500,000,000pas d’attribut-usager88,235,28018
1,500,000,0001 attribut nombre réel de 10 lignes55,555,54618
1,500,000,0001 attribut nombre réel de 15 lignes46,874,99218
1,500,000,0001 attribut nombre réel de 20 lignes40,540,53318
2,000,000,000pas d’attribut-usager117,647,04524
2,000,000,0001 attribut nombre réel de 10 lignes74,074,06524
5,500,000,000pas d’attribut-usager323,529,39860