IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Virtualisation Discussion :

GraalVM : Oracle annonce une machine virtuelle polyglotte


Sujet :

Virtualisation

  1. #1
    Expert éminent sénior
    Avatar de Coriolan
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2016
    Messages
    701
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2016
    Messages : 701
    Points : 51 810
    Points
    51 810
    Par défaut GraalVM : Oracle annonce une machine virtuelle polyglotte
    GraalVM : Oracle annonce une machine virtuelle polyglotte
    Conçue pour supporter plusieurs langages sans sacrifier la performance

    Oracle vient de lancer GraalVM 1.0, une machine virtuelle universelle conçue pour supporter plusieurs langages, et en même temps, tourner avec la même performance, outils et configuration.

    « GraalVM est une machine virtuelle universelle pour exécuter des applications écrites en JavaScript, Python, Ruby, R, les langages de JVM comme Java, Scala, Kotlin, et les langages LLVM comme C et C++, » peut-on lire sur le site du projet.

    « GraalVM supprime l’isolation entre les langages de programmation et permet l’interopérabilité dans un environnement runtime. Elle peut s’exécuter seule ou bien dans le contexte du OpenJDK, Node.js, Oracle Database, ou MySQL. »

    Nom : announcing_graalvm_version7.png
Affichages : 65544
Taille : 184,3 Ko

    Selon Oracle, les machines virtuelles actuelles fournissent une haute performance d’exécution de programmes seulement pour un langage spécifique ou un nombre limité de langages. En conséquence, la compilation, la gestion de mémoire et les outils sont maintenus séparément pour différents langages, ce qui contredit le principe DRY (don’t repeat yourself). Cette réalité nuit non seulement aux exécutants de machines virtuelles, mais aussi aux développeurs qui doivent gérer plusieurs facteurs non uniformes, notamment la performance et la configuration. De plus, faire communiquer des programmes écrits en différents langages requiert une logique coûteuse de sérialisation et désérialisation.

    C’est pourquoi Oracle a entrepris de résoudre ce problème depuis des années maintenant, à vrai dire, le projet GraalVM a existé pendant longtemps, mais ce n’est que maintenant qu’il est prêt pour une utilisation générale après l’annonce de cette version 1.0.

    « GraalVM fournit une haute performance pour les langages individuels et une interopérabilité sans frais supplémentaires pour créer des applications polyglottes. Au lieu de convertir des structures de données aux limites des langages, GraalVM permet aux objets et tableurs d’être utilisés directement par des langages étrangers. »

    Un exemple des possibilités offertes inclut l’accès à une fonctionnalité d’une bibliothèque Java depuis du code Node.js ; ou appeler un programme statistique de Python depuis Java ; ou utiliser R pour créer un graphe SVG avec des données gérées par un autre langage.

    « Pour les langages JVM, GraalVM offre un mécanisme pour créer des images natives dotées d’un démarrage instantané et une utilisation faible de la mémoire. Le processus de génération d’image exécute une analyse statique pour trouver tout code susceptible d’être atteint depuis la méthode Java principale et effectue par la suite une compilation anticipée (AOT). Le résultat natif qui en résulte contient le programme entier en code machine pour une exécution immédiate. Il peut être lié avec d’autres programmes natifs et peut optionnellement inclure le compilateur GraalVM pour le support d’une compilation à la volée afin d’exécuter tout langage GraalVM en haute performance. »

    Selon Oracle, un avantage majeur de l’écosystème GraalVM est d’offrir des outils qui supportent tout langage et applicables pour tous les déploiements GraalVM. L’installation de base fournit aux développeurs un débogueur, un profiler (profilage de code) et un heap viewer. Oracle encourage les développeurs tiers à utiliser l’instrumentation API ou les API d'implémentation de langages pour enrichir davantage l’écosystème GraalVM.

    « Cette première version n’est qu’un début. Nous travaillons pour améliorer tous les aspects de GraalVM, en particulier le support de Python, R et Ruby. GraalVM est écosystème ouvert et nous encourageons tout le monde à créer dessus leurs propres langages ou outils. Nous voulons faire de GraalVM un projet collaboratif permettant une exécution standardisée des langages et un groupe d’outils riches, » a écrit Oracle.

    Source : blog Oracle

    Et vous ?

    Trouvez-vous un intérêt pour GraalVM ?
    Avez-vous déjà développé une application qui requiert une interopérabilité entre plusieurs langages ?

    Voir aussi :

    EdgeDB : un nouveau système de gestion de base de données relationnel-objet open source, bientôt disponible en préversion technologique
    Microsoft présente Azure Sphere, sa solution pour sécuriser l'IdO qui comporte un système d'exploitation basé sur un noyau Linux personnalisé
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Août 2006
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 78
    Points : 122
    Points
    122
    Par défaut GraalVM ou la VM de trop ?
    bon en gros c'est le remplaçant de HotSpot... et ca a l'air d'etre une surcouche LLVM...

    so what ?
    Si je fais du C like c'est pas pour qu'il se retrouve dans un truc AOT/JIT/GC non ?
    au pire on a JNI...
    python, javascript etc (java like) on avait pas des truc genre jython, rhinojs/nashorm ?
    meme pour les AstroKlingonBol ce n'est pas tres compliquer de generer du pcode VM hotspot

    En interne, on a essayé de pas trop être schizophrène et de ne pas s’éparpiller dans pléthore de langage.
    (on a eu la chance de partir sur java... mais avec une longue histoire d'amour avec lazarus/fpc)

    et si c'est pour sortir du "wasm" (parait) pfff...
    gros doute de l’intérêt (et de la protection des recettes maison)

    de toute manière, on ne fait plus que du web sauce ws/ajax (php ? c'est quoi ? jamais entendu parler)
    (un bete serveur de fichier avec des "servlets" json)

    pour les jeux ?
    "graalvm s'approche des prefs du C"... dixit Macron...

    porter un jeu C like vers Android ?
    ouch...

    a++

Discussions similaires

  1. [Win XP] Importer des machines virtuelles dans VirtualBox
    Par Altrensa dans le forum Windows XP
    Réponses: 2
    Dernier message: 19/04/2013, 14h25
  2. Réponses: 28
    Dernier message: 14/10/2009, 14h40
  3. Réponses: 0
    Dernier message: 16/03/2009, 20h50
  4. faire une passerelle avec des machines virtuelles
    Par Lionel_aw dans le forum Windows XP
    Réponses: 7
    Dernier message: 06/10/2008, 16h35
  5. tester torque avec des machines virtuelles
    Par marc_calagac dans le forum Unix
    Réponses: 6
    Dernier message: 29/12/2007, 13h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo