나는 속도를내는 데 필요한 작업 응용 프로그램이 있습니다. 필자는 각 기능에 걸리는 시간을보고하는 프로파일 링 (자세한 내용은 here 참조)을 설정합니다. 나는 기능의 다른 하위 부분에서 소비되는 시간에 관해 무엇이든 발견 할 수있는 방법을 찾을 수 없다."인라인"이 작동하는지 어떻게 알 수 있습니까?
그런 다음 몇 가지 빠른 액세스를 원하는 일부 자주 액세스하는 작은 함수의 선언에 "인라인"키워드를 삽입했습니다. 그러나 다시 프로파일 링을 할 때, 필자는 인라인으로 만든 기능을 포함하여 동일한 기능 목록을 보았습니다. 이것은 인라인 키워드가 방금 무시되었는지 여부에 대해 의심 스러웠습니다.
일부 컴파일러에서 인라인 키워드는 사용 가능한 메모리 양과 같은 것에 따라 컴파일러가 선택적으로 무시할 수있는 것이 었음을 막연하게 기억합니다.
"인라인"키워드가 실제로 작업을 완료했는지 확인하기 위해 할 수있는 검사가 있습니까?
always_inline을 추가하면 함수 이름이 프로필 보고서에서 사라지게됩니다. 그것은 이전에 인라이닝하지 않았고 현재는 다음과 같은 충분한 증거입니다. – Mick
@Mick : cool -하지만 백만 달러짜리 질문은 ... 더 빠릅니까? :-) –
나는 그렇게 생각하지만, 문제를 혼동시키기 위해이 이슈로 고통을 겪고있다. http://stackoverflow.com/questions/24631535/what-may-cause-the-speed-of-an-app-to- 변경 – Mick