问题标签 [gettimeofday]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - FreeBSD 上的 Python 时钟功能
在 FreeBSD 上测试 Python 的 time.clock() 函数时,我注意到它总是返回相同的值,大约为 0.156
time.time() 函数可以正常工作,但我需要一个分辨率稍高的东西。
有没有人绑定它的 C 函数,是否有替代的高分辨率计时器?
我没有进行分析,所以 TimeIt 模块在这里并不合适。
windows - 我应该用什么来替换 Windows 上的 gettimeofday()?
我正在编写一个支持发送和接收超时的可移植 Socket 类...为了实现我正在使用的这些超时select()
...但是,我有时需要知道我select()
在 Linux 上被阻塞了多长时间将通过gettimeofday()
在我调用之前和之后调用select()
然后使用timersub()
来计算增量来实现...
鉴于select()
在 Windows 上接受struct timeval
超时,我应该使用什么方法来替换 Windows 上的 gettimeofday()?
c++ - C++ 中 gettimeofday() 的最佳替代库是什么?
在 Linux 上的 C++ 中使用 gettimeofday() 是否有更多面向对象的替代方法?例如,我喜欢能够编写类似这样的代码:
目标是嵌入式 linux 系统,没有 Boost 库,但也许有一些易于移植的东西(例如,仅用头文件实现的东西)。
c - 如何使用 gettimeofday() 或与 Visual Studio C++ 2008 等效的东西?
有人可以帮我在 Windows XP 上使用带有 Visual Studio C++ 2008 的 gettimeofday() 函数吗?这是我在网上某处找到的代码:
去年,当我用 VC++6 测试这段代码时,它运行良好。但是现在当我使用 VC++ 2008 时,我遇到了异常处理的错误。那么关于如何使用 gettimeofday 或类似的东西有什么想法吗?
感谢您的回复,任何帮助将不胜感激:
performance - 测量选定循环的执行时间
我想测量 C 程序中选定循环的运行时间,以便查看在这些循环中花费了执行程序(在 linux 上)的总时间的百分比。我应该能够指定应该测量性能的循环。在过去的几天里,我尝试了几种工具(vtune、hpctoolkit、oprofile),但似乎都没有。他们都发现了性能瓶颈,并只是展示了那些时间。那是因为这些工具只存储高于阈值(~1ms)的时间。因此,如果一个循环花费的时间少于此时间,则不会报告其执行时间。
gprof 的基本块计数功能取决于旧编译器中现在不支持的功能。
我可以手动编写一个简单的计时器使用gettimeofday
或类似的东西,但在某些情况下它不会给出准确的结果。例如:
现在在这里我想测量花费在内部循环中的总时间,我必须gettimeofday
在第一个循环中调用。所以gettimeofday
它自己会被调用 1000 次,这会引入自己的开销,结果会不准确。
c++ - 为什么 gettimeofday() 间隔偶尔为负数?
我有一个实验库,我正在尝试测量其性能。为此,我编写了以下内容:
有时,我的结果包括负时间,其中一些是荒谬的。例如:
这是怎么回事?
c - 在 Linux 上测量增量时间时出现奇怪的结果
更新:修复代码中的增量计算,问题仍然存在
伙计们,您能否解释一下为什么我会使用以下代码不时得到非常奇怪的结果:
(您可以使用以下命令编译和运行它:gcc test.c -o out -lrt && ./out)
我正在经历的是几乎每秒甚至更频繁的diff变量的零星大值,例如:
这怎么可能?是操作系统的错吗?它是否做了太多的上下文切换?但是我的盒子是空闲的(平均负载:0.02、0.02、0.3)。
这是我的 Linux 内核版本:
c - C 中的 -mno-sse 标志和 gettimeofday() 出错
一个使用 gettimeofday() 的简单 C 程序在没有任何标志 (gcc-4.5.1) 的情况下编译时工作正常,但在使用标志 -mno-sse 编译时不提供输出。
我有 CFLAGS=-march=native -mtune=native 有人可以解释为什么会这样吗?程序正常返回正确的值,但在启用 -mno-sse 编译时打印“0”。
c++ - C++ 中毫秒级的基准测试?
我真的不想进行分析,因为我想对不同的简单功能进行许多不同的小型基准测试。对于我的一生,我无法找到一种方法来记录 C++ 中的毫秒数,顺便说一下,我正在使用 Linux。
您能否建议以毫秒为单位获取系统时钟的方法(如果我找不到简单的方法,我可能会以秒为单位。)以及它们包含在什么标题中?
c - gettimeofday clock_gettime 解决方案生成唯一编号
我的进程运行多个实例(进程)和多个线程,它们都写入同一个数据库。一旦提出请求,就会为要添加到专有数据库的记录生成一个唯一的请求 ID。这是我们的限制:它不能超过 9 个字符的长度,需要将 hhmmss 作为前 6 个字符。我们决定使用 ms 作为最后 3 位数字来完成 9 个字符,我们正在使用 gettimeofday() 完成所有这些操作。但是,随着流量的增加,现在在 ms 周期内放置多个请求时会发生冲突。这与 gettimeofday() 本身不准确的事实相结合,导致碰撞次数增加。我尝试使用clock_gettime,但在测试时,它也不像我从以下测试程序中观察到的那样准确:
- 由于线程问题,我们无法使用静态或全局变量
- 无法使用随机数,因为它们需要是连续的
感谢任何帮助。