huawei-noah / AdderNet

Code for paper " AdderNet: Do We Really Need Multiplications in Deep Learning?"

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

为什么addernet比conv慢很多

CCA8290 opened this issue · comments

我使用您们提供的源码跑cifar和mnist时,使用resnet50的addernet版要比torchvision里自带的resnet50慢很多(用5000个train samples和1000个test samples时,resnet50是6s一轮,adder_resnet50()居然是两分钟一轮,请问这是为什么呢?如果GPU是专门优化的话,我用cpu跑的时候速度依然慢得多,问题出在哪里呢?

你好,torchvision的代码是使用C作为底层编写的,我们的开源代码是基于python的一个简单实现,没有进行速度上的优化,所以会比pytorch官方代码慢很多。

commented

@CCA8290 @HantingChen 可以自行编写 cuda kernel ,加分用reduce算法优化;梯度部分,可以使用推导出来的数值梯度。直接用portorch的python版本发论文,很没有诚意。