[Mono] Privilégié pour les super-calculateurs.
Effectivement, pour la gestion de grosses tables, de matrices, l'usage
en calculs intensifs sur de super-ordinateurs, Mono présente des
avantages sur .NET et Java.
On peut constater que même si la
norme du .NET permet l'usage de long en index pour des tables, Windows
64 bits lui-même ne gérera pas de tables de plus de 2,147,483,648
entrées contre 9,223,372,036,854,775,808 pour mono (autrement dit plus
de quatre milliards de fois plus grande).
Java lui a une norme qui ne permet pas l'usage de tables aussi grandes, il faudrait modifier le bytecode pour lui permettre d'arriver à la même limite que Mono.
Mono est compatible avec plusieurs architectures dont ARM et MIPS.
On peut voir des serveurs utilisant des processeurs MIPS moins cher et moins gourmands que les processeurs Intel/AMD.
Voici un exemple de constructeur (sicortex.com) dont je traduis la phrase de spécifications sur les processeurs de son serveur haut de gamme:
- " Ces serveurs contiennent 5,832 processeurs MIPS 64 bits d'1.4GFlops, chacun consommant seulement 900 milli-Watts."
Mono permet de bénéficier pour les calculs vectoriels et matriciels
des optimisations SIMD des processeurs modernes. Cette optimisation
permet de rattraper le retard de performance par rapport à du code C si
ce dernier est compilé sans SIMD.
Pour finir on devrait voir
arriver des outils de gestion de tâche intéressants avec Mono 2.6, ces
fonctions étant particulièrement utilisées dans les jeux vidéos et un
peu technique et de plus étant part d'une nouvelle version de Mono, ils seront objets d'un autre article.