logo

[Java] Compressed Class Space와 Compressed Object Pointer

language-logoJava

• Compressed Class Space는 64비트 플랫폼에서 클래스 메타데이터를 저장하며, Compressed Pointer를 사용해 Java Heap의 객체와 Metaspace의 클래스 메타데이터를 참조한다.
• 32비트 포인터를 사용하면 메모리 사용량이 줄어들고 성능이 향상되지만, 힙 영역이 32GB를 넘어가면 64비트 기반의 포인터를 사용해야 하므로 성능이 저하된다.
• XX:CompressedClassSpaceSize는 압축된 클래스 공간의 크기를 정의하며, 기본값은 1G이고 최대 3G까지 설정 가능하다. 클래스 로드 시 클래스 개수의 제한은 이 값에 의해 결정된다.
• CompressedOops와 CompressedClassPointers는 기본적으로 켜져 있으며, Java 힙이 32GB 이상일 경우 자동으로 꺼진다. 두 스위치는 일반적으로 그대로 두는 것이 권장된다.

thumbnail
북마크
공유하기
신고하기
5분 분량
조회수 247
profile-imagejaemunbro
2년 전
Copyright © 2025. Codenary All Rights Reserved.