我的 AQTime 结果中的次数总和与我测量的响应时间不匹配
The sum of times in my AQTime results don't match up with my measured response times
我正在对用C++编码的SAAS产品进行性能调整。 我们在代码中的几个点设置微秒精度计时器,以记录各种操作需要多长时间,现在我正在尝试使用 AQTime 进一步挖掘并找到一些长期运行的请求中的特定瓶颈。 但是,AQTime 在给定函数及其子函数中报告的总时间少于我们的内部计时器报告的总时间。有没有人经历过这种情况或知道为什么会发生? 这可能与在 VM 中运行有关吗? 到目前为止,在我分析的少数函数中,差异非常一致(AQTime 报告的时间约为我们从 CPU 计时器记录的时间的 60%),但如果我发现这已经发生在其他代码库上,我会感到更加放心,这不仅仅是我们的特点!
非常感谢!
此行为在很大程度上取决于所使用的计数器。如果使用"用户"或"用户+内核时间"计数器,则 AQtime 仅计算 CPU 执行代码所花费的时间。与使用手动计时器不同,执行其他进程或线程的代码所花费的时间不计算在内。
"已用时间"计数器应演示与获得的结果类似的结果,但即使在这种情况下,计时器处理代码添加的开销也可能导致一些差异。
您可以在 AQtime 帮助系统的计数器概述主题中找到有关不同计数器详细信息的详细信息。
相关文章:
- Qt SQLite没有查询或参数计数不匹配
- 模板参数推导失败,函数参数/参数不匹配
- 在使用累加时,C++中的运算符+不匹配
- C++ 与操作员不匹配<<
- 在 Arduino 上使用 sscanf 会导致与 const char * 不匹配,并且返回值始终相同,尽管输入值不同
- 与'operator='不匹配(操作数类型'String'且"void")
- C++模板/别名 - 模板参数列表中参数 1 处的类型/值不匹配
- C4018:类内有符号、无符号不匹配
- 我在 .h 中有一个枚举类,并且在.cpp错误中有一个运算符重载:与"运算符<<不匹配
- 为什么我收到错误:"运算符<<不匹配?
- RE2 不匹配非 ASCII 字符
- 函数签名与调用的函数不匹配,常量字符[]和字符*之间的区别?
- 模板推导:为什么函数指针模板定义在常量和/或引用时不匹配?
- 错误:"模板<类_Tp,类_Dp>类 std::unique_ptr"的模板参数列表中参数 1 的类型/值不匹配
- OpenSSL fips in C++ wrapper Library 如何?错误:指纹不匹配
- 为什么我的数组值与此处的全局变量不匹配?
- 引号之间匹配/不匹配,带有不可避免的引号和多行
- 映射迭代器与运算符不匹配
- C++调用和定义不匹配
- 我的 AQTime 结果中的次数总和与我测量的响应时间不匹配