callstack

DAMON 을 이용한 프로파일링의 한 예

DAMON[0] 이 프로파일링만을 위한 건 아니지만, DAMON 을 프로파일링에 활용하는 방법에 대한 괜찮은 직관적 예를 여태 소개한 적이 없다는 걸 깨달았습니다. 간단하지만 현실적인 DAMON 의 프로파일링 도구로써의 사용법은 모니터링 결과를 콜스택과 함께 기록한 후 시간대에 맞춰 시각화 하는 것입니다. 예를 들어, 아래 그림은 SPLASH-2X 벤치마크의 ‘fft’ 라는 워크로드에 대한 그런 시각화 결과입니다. 여기서, 우린 이 워크로드에 세개의 폭발적 메모리 액세스가 이루어지는 구간이 있는 것을 알 수 있으며, FFT1DOnce.cons::prop.2() 가 그 첫번째와 두번째 구간에, 그리고 Transpose() 는 세번째 구간에 연관되어 있음을 알 수 있습니다.