okdaydream / GPU-CNN

Accelerate convolution neural network for face recognition using GPU

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Accelerate CNN computation with GPU

Please indicate the source below when this repo is shared somewhere else:

Source code: https://github.com/WalkerLau/GPU-CNN

The purpose of this repo is to accelerate VIPLFaceNet, a face recognition algorithm with 7 convolution layers, with GPU and CUDA programming.

For more infomation about VIPLFaceNet:

https://github.com/seetaface/SeetaFaceEngine

Development Environment

  • HARDWARE

    • Machine: Amazon AWS EC2, g3s.xlarge (Ohio, us-east-2)

    • GPU: Tesla M60

    • Compute Capability: 5.2

  • SOFTWARE

    • AMI ID: Deep Learning Base AMI (Ubuntu) Version 19.1 (ami-04fde1417a0168c95)

    • Ubuntu 16.04 (contained in AMI)

    • OpenCV 2.4.9.1 (contained in AMI)

    • CUDA 10.0.130 (contained in AMI)

Installation

  1. Download this repo

    git clone https://github.com/WalkerLau/GPU-CNN.git

    Note: The model file GPU-CNN/model/seeta_fr_v1.0.bin is stored in Git Large File Storage (LFS). You should Download and install Git Large File Storage (LFS) before further operations on Linux machine, or download the seeta_fr_v1.0.bin independently from this repo's webpage. Simply "git clone" would not download the complete seeta_fr_v1.0.bin and will cause error. The complete seeta_fr_v1.0.bin should be of about 110 MB.

  2. Build

    cd GPU-CNN
    
    mkdir build
    
    cd build
    
    cmake ../src
    
    make
    

    Note: Try switching to root if build failed.

  3. Run

    ./GPU-CNN

Others

  • About source files:

    • test_face_recognizer.cpp contains top level function

    • conv_net.cpp calls convolution layers

    • inner_product_net.cpp calls fully-connected layers

    • math_functions.cu defines CUDA kernel functions

References

About

Accelerate convolution neural network for face recognition using GPU

License:Other


Languages

Language:C++ 95.1%Language:Cuda 3.2%Language:C 1.2%Language:CMake 0.5%