2017-12-27 9 views
0

GC 로그 아래 방법 : -Xmx64m와JVM의 할당 속도가 높을수록 성능에 영향을 줍니까? -Xmx32m와

808: [GC (Allocation Failure) [PSYoungGen: 9760K->32K(10240K)], 0.0003076 secs] 
819: [GC (Allocation Failure) [PSYoungGen: 9760K->32K(10240K)], 0.0003079 secs] 
830: [GC (Allocation Failure) [PSYoungGen: 9760K->32K(10240K)], 0.0002968 secs 



2nd Allocation rate is (9760-32)/(819-808)= 884.36K 
3rd Allocation rate is (9760-32)/(830-819)= 884.36K 

GC 로그는 다음과 같습니다 :

https://plumbr.io/handbook/gc-tuning-in-practicehttp://stuff-gil-says.blogspot.com/2014/10/what-sort-of-allocation-rates-can.html 게시물 당으로
808: [GC (Allocation Failure) [PSYoungGen: 20512K->32K(20992K)], 0.0003748 secs] 
831: [GC (Allocation Failure) [PSYoungGen: 20512K->32K(20992K)], 0.0004538 secs] 
855: [GC (Allocation Failure) [PSYoungGen: 20512K->32K(20992K)], 0.0003355 secs] 

2nd allocation rate is (20512-32)/(831-808)=890.43K 
3nd allocation rate is (20512-32)/(855-831)=853.33K 

, 낮은 할당 비율이 더 낫다. 방법?

답변

1

정확한 질문은 무엇인지 모르겠습니다. 링크에는 제목이 있습니다. 나는 요약하려고 시도 할 것이다 :

  1. 할당 비율은 마이너 GC의 빈도에 영향을 미친다. 더 빨리 할당 할수록 마이너 GC를 수행해야합니다. 사소한 GC JVM을 수행하려면 사용하지 않는 오브젝트를 찾고 GC가 수행하는 다른 작업을 수행하기 위해 일부 CPU 성능을 사용해야합니다. 즉, 일부 CPU 성능은 응용 프로그램 코드를 수행하는 대신 가비지 수집에 사용됩니다. 때로는 응용 프로그램 코드가로드를 처리 할 수 ​​있도록 모든 CPU 전원을 필요로하며 GC를 너무 자주 실행하면 처리량에 부정적인 영향을 미칩니다. 처리율을 높이려면 할당 속도 감소로 GC 빈도를 낮추고 트래픽 처리를 위해 더 많은 CPU를 남겨 두십시오.

  2. 조기 홍보와 관련된 문제가 있습니다. 할당 비율이 높으면 사소한 GC가 빈번하게 발생할 수 있습니다. 즉, 짧은 GC는 사소한 GC가 거의 생존하지 못하여 구형으로 승격 될 수 있습니다. 사소한 GC가 매우 자주 발생하면 그 중 일부가 생존해도 개체가 오래 살아 있다는 것을 의미하지는 않습니다. 짧은 생체 물을 구세대에 알리면 더 자주 GC가 생길 것입니다.

관련 문제