특정 함수에 대한 속도 측정

어떤 함수의 속도를 측정하기 위해 간단하게 매크로 호출만 해주어도

알아서 프로파일링 되도록 프로파일러를 만들었습니다.

 

DProfile_StartRecord(Label) ~ DProfile_EndRecord

해당 범위까지 Timer로 속도를 측정한 후 ms로 변환하여 관련 프로파일러에 Excute(DProfile_Excute)해주는 구조입니다.

 

Profile을 시작하면 타이머 객체를 호출해서 기록 측정을 시작하고

해당 타이머에서 측정된 기록 데이터를 밀리세컨드 단위로 변환한 후 

프로파일러를 가져와서 데이터를 맵핑하는 방식입니다. 

프로파일러는 맵핑된 데이터를 기반으로 호출된 위치를 탭바로 생성하여

해당 탭바 내에 기록된 함수 데이터를 라벨별로 표시합니다.

 

# 여기서 하나의 문제점은 속도 측정을 위한 매크로를 포함한 함수를

상단 레이어 코드에서 다시 속도 측정할 경우 매크로 측정하는 코드까지 반영하여 측정되어 버리는 문제가 있습니다.

ps. 코드의 속도를 측정하는 매크로문 또한 측정 대상이 되므로 특별히 수정하지 않기로 함.