문제

이 기사 여기 사용하도록 제안합니다 -XX:+UseParNewGC "동시 GC와 병렬 젊은 세대 GC를 가능하게합니다".

내 혼란은 평행과 동시 GC를 모두 가능하게하기 위해

  • 사용 -XX:+UseParNewGC 또는
  • 둘 다 사용하십시오 -XX:+UseParNewGC 그리고 -XX:+UseConcMarkSweepGC ?

추신

JVM 6을 사용하고 있습니다.

도움이 되었습니까?

해결책

링크 된 문서는 1.4.2 VM에 대한 것이기 때문에 내가 사용하고 있다고 가정 할 것입니다 (JVMS 5와 6은 다르게 행동합니다).

에서 http://java.sun.com/docs/hotspot/gc1.4.2/

인 경우 -xx :+useconcmarksweepgc가 명령 줄에 사용 된 경우 명령 줄에 명시 적으로 설정되지 않은 경우 플래그 useparnewgc도 true로 설정됩니다.

따라서 대답은 -xx :+useconcmarksweepgc 만 사용할 필요가 있으며 병렬 젊은 세대 수집기와 동시 수집기를 가능하게합니다.

편집 : Java 6의 경우 동일한 플래그 (-xx :+useconcmarksweepgc)가 동시 수집기를 활성화합니다. 원하는 수집기의 선택은 몇 가지 사항에 따라 다르며 다른 구성을 테스트해야합니다. 그러나 매우 일반적인 지침이 있습니다. 단일 프로세서, 단일 스레드 머신이있는 경우 직렬 수집기를 사용해야합니다 (일부 구성의 경우 기본값은 -xx :+useerialgc를 사용하여 명시 적으로 활성화 할 수 있음). 워크로드가 기본적으로 CPU 바운드 인 멀티 프로세서 머신의 경우 평행 수집기를 사용하십시오. -server 플래그를 사용하는 경우 기본적으로 활성화되거나 -xx :+useparallelgc로 명시 적으로 활성화 할 수 있습니다. GC에 더 많은 총 CPU 시간을 사용하는 비용으로 GC 일시 정지를 짧게 유지하고 CPU 이상이 둘 이상인 경우 동시 컬렉터 (-xx :+useconcmarksweepgc)를 사용할 수 있습니다. 동시 수집기는 일부 메모리 조각화가 발생할 수 있기 때문에 주어진 워크로드에 대해 직렬 또는 병렬 수집기보다 JVM에 더 많은 RAM을 할당하는 경향이 있습니다.

다른 팁

Java/JDK 6 GC 튜닝 : http://www.oracle.com/technetwork/java/javase/gc-tuning-6-140523.html. 이것은 태양 (현재 오라클)에서 나온 것입니다. 전체 물건.

또한 참조하십시오
http://kirk.blog-city.com/is_your_concurrent_collector_failing_you.htm
http://www.javaperformancetuning.com/

이 블로그 항목에는 다른 수집가에 대한 잘 고장이 있으며 어떤 옵션이 유효합니다. http://blogs.oracle.com/jonthecollector/entry/our_collectors

Java GC 튜닝은 기본적으로 어두운 아트이지만, 내 응용 프로그램에서는 50+GB 힙 및 16 개의 물리적 코어로 실행됩니다) ConcmarkSweep 수집기는 -server 기본값보다 3 배의 속도를 높이고 PerallODGC보다 2.2 배의 속도를 높였습니다.

다른 프로세스와 기계를 공유하지 않으면 (유휴 코어가 낭비됩니다) ConcmarksweepGC를 사용하십시오.

PARNEW는 CMS를 사용할 때 기본 젊은 세대 수집가입니다. CMS를 사용하려면 -xx :+USECONCMARKSWEEPGC를 지정하면 기본적으로 PARNEW를 사용합니다. GC Jitters를 피하는 것이 우선 순위가 높지만 예를 들어 작업과 같은 배치에 처리량이 더 중요하다면 CMS는 좋은 수집가입니다.

동시에 두 개의 GC 옵션을 활성화 할 수 없습니다. 나는 당신이 useparnewgc와 비교하는 것보다 더 나은 CMS를 사용하는 것이 좋습니다. Java 1.7 이상을 사용하고 힙 크기가 상대적으로 더 크면 (예 :> 4GB) G1을 사용하는 것을 고려하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top