Question

Mon application scala doit effectuer des opérations simples sur de grands tableaux d'entiers et doubles, et la performance est un goulot d'étranglement. J'ai eu du mal à mettre le doigt exactement quand certaines optimisations entrent en jeu (par exemple l'analyse d'échappement), bien que je peux observer leurs résultats grâce à diverses analyses comparatives. J'aimerais faire une compilation AOT de ma demande scala, donc je peux voir ou faire respecter (ou mettre en œuvre) certaines optimisations ... ou compiler en code natif, si possible, pour que je puisse couper les coins ronds comme des bornes de contrôle et d'observer si elle fait une différence.

Ma question: quelles sont les méthodes de compilation alternatives pour travailler scala? Je suis intéressé par des outils comme LLVM, VMKit, suie, gcj, etc. Qui utilise avec succès les scala à ce point, ou sont aucune de ces méthodes actuellement compatibles ou maintenus?

Était-ce utile?

La solution 2

Pour répondre à ma propre question, il n'y a pas backend alternative pour Scala, sauf pour la machine virtuelle Java. Le back-end .NET a été en développement depuis longtemps, mais son statut est incertain. Le backend LLVM est pas encore prêt à l'emploi, et il est pas clair ce que son avenir est.

Autres conseils

GCJ peut compiler des classes JVM en code natif. Ce blog décrit les tests effectués avec le code Scala: http://lampblogs.epfl.ch/b2evolution/blogs/index.php/2006/10/02/scala_goes_native_almost?blog=7

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top