Your SlideShare is downloading. ×
[11 0730] gpg 2.1.11 게임에 내장되는 프로파일링 모듈(공개)
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

[11 0730] gpg 2.1.11 게임에 내장되는 프로파일링 모듈(공개)

1,345
views

Published on

Published in: Technology, Business

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,345
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
16
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. GPG 2. Section 1. General Programming
    A Built-in Game
    Profiling Module
    DevRookie GPG Study, 2011. 7. 30. Hebory
    게임에 내장되는 프로파일링 모듈
  • 2. 프로파일링(Profiling)이란
    무엇인가?
  • 3. 성능 분석
    병목 지점을 찾아서 성능 개선
    문제가 될 만한 부분을 사전에 파악
    게임 개발에서의 프로파일링
    왜 필요할까?
  • 4. 다른 응용 프로그램의 실행 상태를
    모니터링 하는 도구
    프로파일러란?
  • 5. 시장에 나와있는
    프로파일링도구들…
  • 6. http://software.intel.com/en-us/intel-sdp-home/
    인텔 소프트웨어 네트워크
    Intel VTune
  • 7. http://developer.amd.com/tools/AMDAPPProfiler/Pages/default.aspx
    AMD Developer Central
    AMD APP Profiler
  • 8. http://developer.nvidia.com/nvidia-perfhud
    NVIDIA
    PerfHUD
  • 9. http://developer.amd.com/archive/gpu/perfstudio/Pages/default.aspx
    AMD ATI
    GPU PerfStudio
  • 10. UDK
    Profiling
  • 11. Unity3D
    Profiler
  • 12. 사용자가 응용 프로그램을 빠르게
    그리고 정확하게 프로파일링 할 수 있어야 한다.
    수행 부담이 적어야 한다.
    여러 사용자가 다른 엔진 모듈들에 대해 신경쓰지않고
    자신의 시스템에서 개별적으로 할 수 있어야 한다.
    프로파일러가필요없어지면 완전히 제거할 수 있어야 한다.
    프로파일링 모듈이
    갖추어야 할 자격 조건
  • 13. 문제가 되는 코드의 시작 지점에서
    하나의 타임스탬프를 얻고,
    끝 부분에서 다시 타임스탬프를 얻는다.
    두번째 것에서 첫번째 것을 빼면
    그 코드를 실행하는데 걸린 시간을 얻게 된다.
    프로파일링은어떻게 하는가?
  • 14. 책에 구현되어 있는 모습
  • 15. ReaD-Time Stamp Counter
    x86 P5 명령어셋에 포함
    RDTSC란 무엇인가?
  • 16. RDTSC를 이용해
    체크 함수 만들기
  • 17. 혹시 컴파일러가
    RDTSC 를 모른다면…
  • 18. 연속성 없는 값멀티 코어 및 멀티 프로세스간 카운트 동기화 안됨
    CPU 주파수의 변동성
    전원관리기술에 의한 CPU 주파수 변동
    RDTSC의 문제점
  • 19. 연속성 없는 값 (STA)
    CPU 주파수의 변동성 (터보부스트)
    Windows7 해결? XP 보다 부하가 커짐?
    Windows API
    QueryPerformanceCounter를
    사용하면 해결 될까?
    http://jacking.tistory.com/674
  • 20. Hl2profiler
    http://cafe.naver.com/devrookie/4292
  • 21. Visual Studio 2010 Profiler
    http://msdn.microsoft.com/ko-kr/library/z9z62c29.aspx
  • 22. 네이티브API를 사용하려면
    프로젝트에 VSPerf.h헤더 파일을 포함하고
    VSPerf.lib를 추가해야 합니다.
    VSPerf.h및 VSPerf.lib는
    기본적으로 <drive>:Program FilesMicrosoft Visual Studio 9Team ToolsPerformance ToolsPerfSDK
    디렉터리에 있습니다.
    Visual Studio 2010 Profiler
    http://msdn.microsoft.com/ko-kr/library/z9z62c29.aspx
  • 23. OProfile
    http://oprofile.sourceforge.net/news/
  • 24. 아무리 잘 만든것도
    아쉬운 점은 있다.
    프로젝트에 특화된 기능이필요하다.
    공부를 위해?
    프로파일링 모듈을
    직접 만들어야 하는 이유
  • 25. 잘 만들어진 프로파일러들…
    게임에 특화된 개발 엔진
    제한된 개발 기간
    기본 제공되는 프로파일러 활용도 잘 못하는…
    프로파일링 모듈을
    직접 만들지 말아야 하는 이유
  • 26. 잘 만들어져 있는거
    잘 활용 하세요~ ^^*
    결론