공유 된 원격 캐시 액세스에 소비 된 사이클을 측정하는 방법은 L3입니다. 이 캐시 액세스 정보를 시스템 전체와 스레드별로 가져와야합니다. 특정 도구/하드웨어 요구 사항이 있습니까? 또는 어떤 공식을 사용하여 시간 간격 동안 소비 한 사이클의 대략적인 값을 얻을 수 있습니까?원격 캐시에 액세스하는 데 소비되는 측정 사이클
0
A
답변
3
대기 시간 (단일 스레드가 실행 중일 때)을 컴퓨터에있는 다양한 캐시로 가져 오려면 메모리 프로파일 러 Windows 용 RMMA (http://cpu.rightmark.org/products/rmma.shtml) 및 Linux 용 Lmbench와 같은 도구.
또한이 도구에서 사용한 아이디어를 기반으로 자신의 벤치 마크를 작성할 수도 있습니다. 이 StackOverflow 질문에 게시 된 답변보기 : measuring latencies of memory 또는 Lmbench 벤치 마크의 작동 방식은 Google을 참조하십시오.
특정 메모리 액세스 패턴에 대한 정확한 대기 시간을 찾으려면 시뮬레이터를 사용해야합니다. 이렇게하면 메모리 액세스가 메모리 시스템을 통과 할 때 추적 할 수 있습니다. 그러나 시뮬레이터는 현대 프로세서 또는 메모리 시스템에 존재하는 모든 효과를 모델링하지 않습니다.
여러 스레드가 L3의 평균 대기 시간에 미치는 영향을 배우고 싶다면 자신의 벤치 마크를 작성하는 것이 가장 좋습니다.
+0
이 프로파일 링에 Harware 성능 카운터가 많이 필요합니까? – naran
그건 물어볼 질문이 아닙니다. 캐시 액세스는 종종 다른 것들과 중복됩니다. 따라서 캐시에 액세스하는 데 소비되는 사이클 수는 의미가 있거나 아닐 수도 있습니다. – Mysticial
@ 신비로운 나는 l3에 대한 다른 스레드의 캐시 액세스가 성능 저하 여부를 알아야합니다. 그밖에 계산 방법은 무엇입니까 – naran
당신은 그것만 추측 할 수 있습니다. 프로파일 러는 큰 그림의 집계 번호를 제공합니다. 그런 다음 서로 다른 메모리 패턴을 가진 다른 앱의 결과와 비교하십시오. – Mysticial