Windowsä¸ã§ã¹ã¬ãããã¬ã¼ã¹ãã
(ããããã® - http://storage.osdev.info/pub/idmjt/diaryimage/1405/neta140509l1.png )
ETW(Event Tracing for Windows)ã使ç¨ããã¨DTraceãftraceã®ãããªã¹ã±ã¸ã¥ã¼ãªã³ã°ãã¬ã¼ã¹ã(æ¯è¼çä½ããªã¼ããããã§)åå¾ãããã¨ãã§ãããETWã®ãã°ãã¥ã¼ã¢ã¨ãã¦ã¯WPA(Windows Performance Analyzer)ãæä¾ããã¦ããã®ã§ãç´ãã«å
容ãæ¤è¨¼ãããã¨ãã§ããã
âã§ã¯ãBoehmGCã®parallel markãæå¹ã«ããnmoshã§R6RS test suiteãå®è¡ããGCãåä½ããã¨ããããºã¼ã ãã¦ããããã¤ã³ã¿ãæãã¦ããé¨åãã¡ã¤ã³ã¹ã¬ãã(TIDãä¸çªè¥ã)ã§ãæ®ããBoehmGCãèµ·åããGCã¹ã¬ããã¨ãªããå®éã«ã¯ãã¡ã¤ã³ã¹ã¬ãããGCåä½ãè¡ããããå
¨ã¹ã¬ããã稼åãã¦ããããã«è¦ããã(incremental collectionãæå¹ã«ãã¦ããªãã®ã§ãGCä¸ã¯ã¤ã³ã¿ããªã¿ã¯åæ¢ç¶æ
ã¨ãªãã)
ETWãæå¹ã«ããã³ãã³ãã©ã¤ã³ãã¼ã«ã¨ãã¦xperfãæä¾ããã¦ãããæå
ã®Windows SDKã§ã¯ãC:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkitã«ä¸å¼ãé
ç½®ããã¦ãããxperfã¯ç®¡çè
権éã§å®è¡ããå¿
è¦ãããã
- ãã£ããã£ã®éå§
xperf -on proc_thread+cswitch+syscall -stackwalk cswitch -filemode circular -maxfile 1024 -buffersize 4096 -maxbuffers 4096
- ãã£ããã£ã®åæ¢
xperf -d out.etl
ã¿ã¤ã ã©ã¤ã³ã«ãã2ã¤ã®ã°ã©ãã®ãã¡ãä¸é¨ãnmoshããã»ã¹ä¸ã®ã¹ã¬ããã®ã¹ã±ã¸ã¥ã¼ãªã³ã°ç¶æ
ãå¯è¦åãããã®ã§ãä¸é¨ããã¼ãã¦ã§ã¢ã¹ã¬ããæ¯(ãã®PCã¯HyperThreadingãæå¹ã«ãã¦ãããããå®éã®ç©çCPUã¯4ã¤)ã§ã¹ã±ã¸ã¥ã¼ã«ããã¦ããã¹ã¬ãããå¯è¦åãããã®ã¨ãªããä¸é¨ã®ã°ã©ãã§ã¯ããã³ã¯è²ãnmoshã®ã¹ã¬ããã§ãããä»ã®ããã»ã¹ã¯å¥ã®è²ã§è¡¨ããããã
ã°ã©ããããGCã®çµç¤ã§ã¯Computation(ç»é¢å·¦ã®ã°ã©ã)ãä½ä¸ãã¦ãããGCã®ä¸¦å度ãä½ä¸ãã¦ãããã¨ã観å¯ã§ãããã¾ããä¸é¨ã®ã°ã©ãã§CPU4ã«ä»ã®ããã»ã¹ã®å²ãè¾¼ã¿ã観å¯ãããããã®å²ãè¾¼ãã§ããããã»ã¹ã¯rtp-midiã§ããã®ããã»ã¹ã¯é«åªå
度ã¹ã¬ããã1mså¨æã§åä½ããã¦ããã
Windowsã«ã¯ã¹ã¬ããã«ååãä»ããç´æ¥çãªä»çµã¿ãåå¨ããªããããWPAãè¯ãã¢ããã¼ã·ã§ã³ãæä¾ã§ããªããã¾ããWPAã¯ãã¬ã¼ã åå²ãªã©ã®ã²ã¼ã ã¢ããªã±ã¼ã·ã§ã³ã«å¿
è¦ãªæ©è½ãæä¾ãã¦ããªãããã®ç®çã®ããã«ã¯GPUView( http://msdn.microsoft.com/en-us/library/windows/desktop/jj585574%28v=vs.85%29.aspx )ãæãããããETWãåºç¤ã¨ãã¦ä½¿ç¨ãã¦ããã