在Windows中通过调用QueryPerformanceCounter而不是使用较低分辨率的定时方法会对性能产生影响吗?QueryPerformanceCounter对性能的影响
回答
尽管陈旧,this Dr Dobb's article给出了一个很好的总结选项及其成本,优点和缺点(见最后的表格),包括QPC。为了获得您的情况的真实时机,使用一个分析器(如AMD的CodeAnalyst)或类似Dr Fog's performance monitor(site,其中还有其他一些使用的东西,取决于你想要进入'这个通话/指导/行动花多少钱“)。
有趣的阅读 - 我认为会有一些差异,但我没有想到QueryPerformanceCounter和GetTickCount之间〜88x的区别 – Konrad
@konrad:GetTickCount只是获取当前时间步骤中的系统当前时间点和时间点,另一方面QPC查询板上(在主板上,如果存在的话)高频计时设备,并且iirc进入内核模式来执行该操作,这很昂贵。但是可以预料的是,这种折衷是准确性和粒度与速度的关系(由于多核可变速CPU的性能,正确使用它非常困难),所以不能再滥用TSC来获得最佳性能。请记住,某人测试的结果并不是你可能得到的,这就是为什么你总是测试你自己的设置 – Necrolis
@Necrolis,如果你的CPU支持常量tsc(一些新的),那么变速不是问题。 。多核的问题是在* rdtsc(例如cpuid)之前必须调用的序列化操作的开销,因为核心数量增加 - 这会增加成本... – Nim
- 1. MouseMove对性能的影响
- 2. connection.commit()对性能的影响
- 3. `USE`对性能的影响
- 4. javax.servlet.Filter对性能的影响?
- 5. 对性能的影响
- 6. Systemtap对性能的影响
- 7. 性能影响
- 8. 性能的影响
- 9. 对性能影响CSS属性
- 10. 使用CDI对性能的影响
- 11. get_defined_vars()`对性能的影响是什么?
- 12. 对Android注解的性能影响
- 13. SQL:long varchar和对性能的影响
- 14. Spark - 检查点对性能的影响
- 15. 使用Swashbuckle对性能的影响
- 16. 复制和对性能的影响
- 17. Log.d和对性能的影响
- 18. 主键对SQLite性能的影响
- 19. LIMIT子句对MySql性能的影响?
- 20. smallint与int对性能的影响
- 21. Codeigniter HMVC对性能的影响
- 22. LINQ性能影响
- 23. mysql_data_seek的性能影响
- 24. nvarchar(4000)的性能影响?
- 25. Aerospike UDF的性能影响?
- 26. 1)性能的影响流
- 27. Mongodb:$ HINT的性能影响
- 28. 性能的影响成行
- 29. 投影数量对查询性能的影响
- 30. Bigtable性能影响列族
http://www.gamedev.net/topic/387778-queryperformancecounter-performance/ - 最后一篇文章很有趣 – Schnommus
我建议你做一些时间测试,比较QueryPerformanceCounter和其他“较低分辨率的定时方法”,以及看看你观察到了什么差异。 :-) –
这样的? http://www.nvidia.com/object/timer_function_performance.html – Schnommus