Maison > Java > javaDidacticiel > Comment puis-je inspecter le code assembleur compilé JIT dans la JVM ?

Comment puis-je inspecter le code assembleur compilé JIT dans la JVM ?

Linda Hamilton
Libérer: 2024-12-12 17:46:10
original
214 Les gens l'ont consulté

How Can I Inspect the JIT-Compiled Assembly Code in the JVM?

Inspection du code compilé JIT dans la JVM

La machine virtuelle Java (JVM) utilise la compilation juste à temps (JIT) pour améliorer efficacité de l'exécution du code. Bien que le JIT fonctionne de manière transparente en arrière-plan, il peut arriver que les développeurs cherchent à examiner le code natif généré par le JIT. Cet article fournit des instructions sur la façon d'afficher le code assembleur produit par le JIT.

Utilisation générale

Exécutez la JVM avec les options suivantes :

-XX:+UnlockDiagnosticVMOptions -XX:+PrintAssembly
Copier après la connexion

Filtrer sur une méthode spécifique

Pour isoler le code assembleur d'une méthode spécifique, utilisez ce qui suit syntaxe :

-XX:+UnlockDiagnosticVMOptions -XX:CompileCommand=print,*MyClass.myMethod
Copier après la connexion

Notez que le nom de la méthode peut nécessiter des guillemets en fonction du système d'exploitation. Les méthodes intégrées peuvent ne pas afficher toutes les optimisations.

Installation des bibliothèques requises sous Windows

Pour accéder à ces options sous Windows, il est nécessaire d'installer des bibliothèques spécifiques. Des binaires prédéfinis peuvent être obtenus à partir du projet fcml :

  • hsdis-amd64.dll
  • hsdis-i386.dll

Alternativement, les bibliothèques peuvent être construit manuellement à l'aide de Cygwin. Les instructions pour les deux méthodes sont détaillées dans le guide de fmlc.

Notes supplémentaires

  • Pour la syntaxe Intel ASM, utilisez -XX:PrintAssemblyOptions=intel avec d'autres options .
  • Le code assembleur de sortie est généralement détaillé et peut être difficile à comprendre. interpréter.
  • Le déverrouillage des options de diagnostic de la VM peut avoir un impact sur les performances. Utilisez ces options uniquement lorsque cela est nécessaire à des fins de diagnostic.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal