L3 캐시가 성능에 미치는 영향 - 듀얼 프로세서 시스템의 가치가 있습니까?

L3 캐시가 성능에 미치는 영향 - 듀얼 프로세서 시스템의 가치가 있습니까?

저는 새로운 고급형 시스템을 구입할 예정이며, 듀얼 프로세서 Xeon 시스템(저는 새로운 고급형 Xeon E5-2687W를 보고 있습니다)이 현실적으로 L3 캐시(CPU당 20MB)가 두 배로 늘어나 성능이 눈에 띄게 향상되었습니다.

(이는 코어와 RAM이 두 배로 늘어나서 가끔 추가되는 이점에 추가됩니다.)

내 사용 시나리오는 대략적으로 3~4개의 데이터 압축/백업 애플리케이션, 영향이 적은 웹 서버, 주어진 시간에 1~2개의 가상 머신(보통 상당히 유휴 상태) 등 언제든지 많은 백그라운드 애플리케이션이 실행되고 있다는 것입니다. CPU 코어의 눈에 띄는(그러나 작은) 부분을 활용하는 유틸리티 프로그램은 아마도 20개 정도일 것입니다. 전체적으로 컴퓨터를 적극적으로 사용하지 않을 때 현재 i7-970 6코어(12스레드) 시스템에서 총 CPU 성능의 약 25%가 활용됩니다.

일상적인 작업을 수행할 때 CPU 사용률이 종종 50%를 초과하고 때로는 75%-80%에 도달합니다.

Xeon E5-2687W는 2세대 i7일 뿐만 아니라(그러므로 성능이 향상되어야 함) 6코어가 아닌 8코어(16스레드)를 갖습니다. 이러한 이유로 75% CPU 범위에 도달하는 빈도는 훨씬 더 낮을 것으로 예상됩니다. 그럼에도 불구하고 코어와 RAM을 두 배로 늘릴 수 있는 능력은 고려 사항입니다.

하지만 결국 이 결정은 L3 캐시를 두 배로 늘리면 눈에 띄는 개선이 가능할지 여부에 달려 있다고 생각합니다. CPU 성능에 관한 많은 벤치마크와 많은 논의가 있습니다. 그러나 L3 캐시 활용도와 L3 캐시 증가(예: 듀얼 프로세서로 두 배로 늘림)가 성능에 어떤 영향을 미치는지에 대한 논의는 거의 없습니다.

예를 들면 다음과 같습니다.프로세스가 실행 중이지만 각각 대형 L3 캐시의 이점을 누릴 수 있습니다(예: 파일 시스템을 자주 검색하는 백그라운드 프로세스의 경우일 수 있음). 단일 코어만 활성화된 경우에도 듀얼 CPU를 사용하면 전체 시스템 성능이 눈에 띄게 향상될 수 있습니다. 각 CPU - 각 프로세스가 유효 L3 캐시를 두 배로 늘리기 때문입니다.

L3 캐시 크기를 늘리거나 두 배로 늘리는 것의 이점을 누군가가 이해하길 바랍니다.

참고: 제가 고려 중인 CPU(Xeon E5-2687W)에는 20MB L3 캐시가 있으므로 듀얼 CPU가 있는 시스템에는 40MB L3 캐시가 있습니다.

답변1

캐싱 질문과 마찬가지로 항상 대답은 "전적으로 작업량에 따라 다릅니다"입니다. 캐시는 실행 중인 프로세스가 메모리에 액세스하는 데 상당한 시간을 소비하는 경우에만 유용합니다.그리고메모리 주소 지정에 대한 눈에 띄는 참조 위치를 나타냅니다(이 문제에 대해 코어당 존재하는 더 작은 L1/L2 캐시에는 만족하지 않습니다).

서로 다른 스레드 내에서 실행되는 프로세스 수가 많으면 공유 캐시의 스래싱 가능성이 높아져 그렇지 않으면 달성할 수 있는 성능 향상이 줄어듭니다. 이는 코어 수가 증가하여 캐시 크기를 늘리는 이유이기도 합니다. 실행 중인 메모리 경쟁 스레드가 많을수록 유용하게 사용하려면 공유 캐시가 더 커야 할 가능성이 높습니다.

옛날 글이 있네요톰의 하드웨어다양한 렌더링/그래픽 작업 부하에 대해 L3 캐시가 있는 것과 없는 두 개의 오래된 P4 칩을 비교합니다. 전체 벤치마크와 마찬가지로 숫자도 엉망이지만 일반적인 캐싱 아키텍처와 특히 L3 캐싱에 대한 좋은 설명이 포함되어 있습니다.

결론: 차이를 느끼지 못할 가능성이 높지만 정확한 숫자가 필요한 경우 두 CPU를 모두 구입하고 두 CPU 모두에서 워크로드를 실행하여 런타임을 비교해야 합니다.

답변2

"L3 캐시가 20MB만 증가했다"고 말하는 사람들은 자신들이 무슨 말을 하는지 전혀 모릅니다. 특정 아키텍처에 대한 캐시 크기의 상당한 증가는 평균 부하에서도 상당한 성능 향상을 가져올 가능성이 높습니다. Sandy Bridge 및 Ivy Bridge 프로세서에 구현된 터보 부스트 아키텍처를 생각하면 이는 더욱 사실입니다.

저는 x86/x86_64 아키텍처의 여러 단계에서 이것을 개인적으로 실험할 기회가 있었습니다. Sempron 대 Athlon, Celeron 대 Pentium 4, Pentium4 대 Athlon, Pentium4-m 대 Pentium-m, Pentium 4 대 Xeon, i7 대 Xeon E5. 캐시가 더 클 때마다(보통 두 배 또는 거의 두 배).

캐시를 두 배로 늘리는 비용이 합리적인지 여부는 귀하에게 달려 있습니다. 그러나 Xeon은 ECC 메모리와 특정 애플리케이션(예: 알루미늄 다이캐스팅을 위한 3D 시뮬레이션)에 꼭 필요한 기술을 지원하기 때문에 안정성이 더 좋습니다.

답변3

귀하가 수행하는 작업과 현재 시스템이 이를 처리하는 방법에 대한 설명을 보면 왜 이를 교체하려는지 궁금합니다. 기껏해야 L3 캐시는 약간의 성능 향상을 제공하지만 비용이 많이 들지만 설명된 사용 사례에서는 L3 캐시가 20MB만 증가한다고 해서 어떤 차이도 기대할 수 없습니다.

관련 정보