>Java >java지도 시간 >JVM에서 생성된 JIT 컴파일 코드를 어떻게 볼 수 있습니까?

JVM에서 생성된 JIT 컴파일 코드를 어떻게 볼 수 있습니까?

Linda Hamilton
Linda Hamilton원래의
2024-12-15 17:33:22277검색

How Can I View JIT-Compiled Code Generated by the JVM?

JVM에서 JIT 컴파일 코드를 보는 방법

JIT(Just-In-Time) 컴파일이 JVM(Java Virtual Machine) 성능을 최적화하는 데 중요한 측면임에도 불구하고 , 출력 코드를 직접 보는 것은 어려울 수 있습니다. 그러나 JIT에서 생성된 네이티브 코드를 검사할 수 있는 특정 JVM 옵션이 있습니다.

일반 사용법

다음 JVM 옵션을 명령줄에 추가할 수 있습니다.

  • -XX: 진단VM옵션 잠금 해제
  • -XX: PrintAssembly

이러한 옵션은 자세한 출력을 제공하고 생성된 어셈블리 지침을 포함합니다.

특정 메서드 필터링

출력을 특정 메서드로 제한하려면 다음 구문을 사용하세요. :

  • -XX: UnlockDiagnosticVMOptions -XX:CompileCommand=print,*MyClass.myMethod

Windows에 필수 라이브러리 설치

Windows 시스템의 경우 hsdis-amd64.dll 및 hsdis-i386.dll을 설치해야 합니다. PrintAssembly 기능에 액세스합니다. 사전 빌드된 바이너리는 fcml 프로젝트에서 사용 가능하거나 Cygwin 및 binutils를 사용하여 수동으로 빌드할 수 있습니다.

Windows에서 hsdis-amd64.dll 및 hsdis-i386.dll 빌드

  1. Cygwin을 설치하고 다음을 선택합니다. 패키지:

    • make
    • mingw64-x86_64-gcc-core(hsdis-amd64.dll용)
    • mingw64-i686-gcc-core(hsdis-amd64.dll용) hsdis-i386.dll)
    • diffutils
    1. Cygwin 터미널을 실행하고 Cygwin 홈 디렉토리를 생성합니다.
    2. GNU binutils 및 hsdis를 다운로드하여 추출합니다. 소스 패키지를 Cygwin 홈 디렉터리에 복사합니다.
    3. Cygwin 터미널에서 hsdis 디렉토리로 이동하고 적절한 명령을 사용하여 hsdis-amd64.dll 또는 hsdis-i386.dll을 빌드합니다.
  2. buildLinux-amd64bfdMakefile을 수정하여 SUBDIRS = doc po를 다음으로 변경합니다. SUBDIRS = po.
  3. 빌드 다시 실행
  4. 빌드된 DLL을 JRE의 bin 디렉터리에 복사합니다.

보너스 팁

AT&T가 아닌 Intel을 사용하여 어셈블리 지침을 표시하려면 구문을 사용하려면 JVM 옵션에 -XX:PrintAssemblyOptions=intel을 추가하세요.

위 내용은 JVM에서 생성된 JIT 컴파일 코드를 어떻게 볼 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.