PyTorch, alongside TensorFlow, has become standard among deep learning researchers and practitioners. While PyTorch provides a large variety in terms of tensor operations or deep learning layers, some specialized operations still need to be implemented manually. In cases where runtime is crucial, this should be done in C or CUDA for supporting both CPU and GPU computation. In this article, I want to provide a simple example and framework for extending PyTorch with custom C and CUDA operations using CFFI for Python and CuPy.
During my master thesis I partly worked on OctNets, octree-bases convolutional neural networks for efficient learning in 3D. Among others, I implemented convolutional batch normalization for OctNets. This article briefly discusses the implementation, which will be available on GitHub.
Torch is a framework for scientific computing in LUA. However, it has mostly been used for deep learning research as it provides efficient and comfortable C/CUDA implementations of a wide range of (convolutional and/or recurrent) neural network components. In this article, I want to provide a code template allowing to easily extend
torch.nn by custom modules implemented in C and/or CUDA without knowledge of Torch’s core.
Currently, both OpenCV 2 and OpenCV 3 seem to have some minor issues with CUDA 9. However, CUDA 9 is required for the latest generation of NVidia graphics cards. In this article, based on this StackOverflow question, I want to discuss a very simple patch to get OpenCV 2 running with CUDA 9.
Caffe  is a popular deep learning framework used within the computer vision community. The first challenge when working with Caffe (at least for me) is setting up CUDA on Ubuntu. In this article, I want to share my experience on how to install CUDA 7 on Ubuntu 14.04.