timer

Faster R-CNN中提供了一个很好用的python下计时工具,用于分析模型运行速度的评估。

import time

class Timer(object):
    """A simple timer."""
    def __init__(self):
        self.total_time = 0.
        self.calls = 0
        self.start_time = 0.
        self.diff = 0.
        self.average_time = 0.

    def tic(self):
        # using time.time instead of time.clock because time time.clock
        # does not normalize for multithreading
        self.start_time = time.time()

    def toc(self, average=True):
        self.diff = time.time() - self.start_time
        self.total_time += self.diff
        self.calls += 1
        self.average_time = self.total_time / self.calls
        if average:
            return self.average_time
        else:
            return self.diff

使用时

import Timer
timer = Timer()
timer.tic() # 单次开始计时
...
timer.toc() # 结束本次计时,返回值可以为多次的平均时间, 也可以为此次时间差toc(average=False)

注意:

计算机系统存在两个时间:CPU时间time.clock(),挂钟时间time.time()

  • CPU时间>挂钟时间: 计算密集型任务,通过优化程序并发可以获得更好的效果,包含CPU内核调度时间(sys)和CPU计算时间(user)
  • 挂钟时间≈CPU时间: IO密集型任务,不能通过并发改进性能,

具体使用参考: Python程序计时

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值