如何有效地阅读PyTorch的源代码?

PyTorch 底层组卷积的实现方式

https://github.com/pytorch/pytorch/blob/master/aten/src/ATen/native/Convolution.cpp#L289-L297

简单的说就是把通道split成group个数目,然后分别进行卷积,然后cat起来。

如何有效地阅读PyTorch的源代码?

代码统计情况

统计时间: 2017.08.20 (泄漏从啥时候开始看的了...)

  • c、cpp、py都在一个量级,5/6万左右
  • cuda 3万

代码全部都要过一遍的话,需要了解C、C++、Python、CMake、CUDA,外加相关的有C\C++代码打包成Python可调用的.so库、Python打包安装过程、BLAS线性库等。

代码阅读顺序推荐

  • 运行 python setup.py build ,生成一遍 (非 install,防止覆盖已安装的pytorch)
  • 顺着 setup.py build 命令看安

猜你喜欢

转载自blog.csdn.net/tony2278/article/details/105043097