AndreaDO

导航

python计算代码运行时间

记录一下自己用python编写计算运行时间的代码

 时间类

import time 
import numpy as np
# 编写时间类来方便操作
class Timer:
  def __init__(self):
    self.times=[] #记录时间
    self.start()
  
  def start(self): #开始时间启动
    self.start_time = time.time()
    
  def stop(self):
    #记录时间到列表中并且停止计时器
    self.times.append(time.time() - self.start_time)
    return self.times[-1]
   #平均时间
  def avg(self):
    return sum(self.times)/len(self.times)
  def sum(self):
    #返回时间总和
    return sum(self.times)
  def cumsum(self):
    """返回累计时间"""
    return np.array(self.times).cumsum().tolist()
 

检测一下深度学习中变量的加法哪个方法运行快:

#循环加法
t = Timer()
for i in range(n):
  z[i] = x[i]+y[i]
print(t.stop()) #1.3116004467010498
# torch重载后的加法
t = Timer()
z = x+y
print(t.stop())#0.0009741783142089844

结果很明显,torch矢量化后的代码运行效率高的多

 

posted on 2023-11-10 20:46  AndreaDO  阅读(91)  评论(0)    收藏  举报