All Projects → nicklhy → DLInfBench

nicklhy / DLInfBench

Licence: Apache-2.0 license
CNN model inference benchmarks for some popular deep learning frameworks

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to DLInfBench

Netron
Visualizer for neural network, deep learning, and machine learning models
Stars: ✭ 17,193 (+33611.76%)
Mutual labels:  caffe, mxnet, deeplearning, caffe2
Xlearning
AI on Hadoop
Stars: ✭ 1,709 (+3250.98%)
Mutual labels:  caffe, mxnet, deeplearning
Deep Learning Model Convertor
The convertor/conversion of deep learning models for different deep learning frameworks/softwares.
Stars: ✭ 3,044 (+5868.63%)
Mutual labels:  caffe, mxnet, caffe2
Dlcookbook Dlbs
Deep Learning Benchmarking Suite
Stars: ✭ 114 (+123.53%)
Mutual labels:  caffe, mxnet, caffe2
Deepo
Setup and customize deep learning environment in seconds.
Stars: ✭ 6,145 (+11949.02%)
Mutual labels:  caffe, mxnet, caffe2
Ssd Models
把极速检测器的门槛给我打下来make lightweight caffe-ssd great again
Stars: ✭ 62 (+21.57%)
Mutual labels:  caffe, deeplearning
Pwc Net
PWC-Net: CNNs for Optical Flow Using Pyramid, Warping, and Cost Volume, CVPR 2018 (Oral)
Stars: ✭ 1,142 (+2139.22%)
Mutual labels:  caffe, deeplearning
Dlcv for beginners
《深度学习与计算机视觉》配套代码
Stars: ✭ 1,244 (+2339.22%)
Mutual labels:  caffe, mxnet
Mxnet2caffe
convert model from mxnet to caffe without lossing precision
Stars: ✭ 20 (-60.78%)
Mutual labels:  caffe, mxnet
Mobilenet Ssd
MobileNet-SSD(MobileNetSSD) + Neural Compute Stick(NCS) Faster than YoloV2 + Explosion speed by RaspberryPi · Multiple moving object detection with high accuracy.
Stars: ✭ 84 (+64.71%)
Mutual labels:  caffe, deeplearning
Facerecognition
This is an implematation project of face detection and recognition. The face detection using MTCNN algorithm, and recognition using LightenenCNN algorithm.
Stars: ✭ 137 (+168.63%)
Mutual labels:  caffe, mxnet
Audio Pretrained Model
A collection of Audio and Speech pre-trained models.
Stars: ✭ 61 (+19.61%)
Mutual labels:  caffe, mxnet
Active Convolution
Active Convolution
Stars: ✭ 56 (+9.8%)
Mutual labels:  caffe, deeplearning
Mtcnn
face detection and alignment with mtcnn
Stars: ✭ 66 (+29.41%)
Mutual labels:  caffe, mxnet
Jacinto Ai Devkit
Training & Quantization of embedded friendly Deep Learning / Machine Learning / Computer Vision models
Stars: ✭ 49 (-3.92%)
Mutual labels:  caffe, deeplearning
Liteflownet2
A Lightweight Optical Flow CNN - Revisiting Data Fidelity and Regularization, TPAMI 2020
Stars: ✭ 195 (+282.35%)
Mutual labels:  caffe, deeplearning
Caffe2 Ios
Caffe2 on iOS Real-time Demo. Test with Your Own Model and Photos.
Stars: ✭ 221 (+333.33%)
Mutual labels:  caffe, caffe2
Mxnet2Caffe-Tensor-RT-SEnet
Mxnet2Caffe_Tensor RT
Stars: ✭ 18 (-64.71%)
Mutual labels:  caffe, mxnet
Machine Learning Curriculum
💻 Make machines learn so that you don't have to struggle to program them; The ultimate list
Stars: ✭ 761 (+1392.16%)
Mutual labels:  caffe, mxnet
Ncnn
ncnn is a high-performance neural network inference framework optimized for the mobile platform
Stars: ✭ 13,376 (+26127.45%)
Mutual labels:  caffe, mxnet

DLInfBench

Introduction

Benchmarks of the CNN inference task over some popular deep learning frameworks.

Currently, we support five deep learning frameworks: Caffe, Caffe2, PyTorch, MXNet, TensorFlow. Some commonly used imagenet models (i.e. alexnet, resnet50, resnet101 and resnet152) are ready to test. For convenience, we provide all the code or network definition files here. There is no need to download pre-trained weights because we will randomly initialize them.

In order to exclude the impacts of different storage devices and different IO implementations over these deep learning frameworks, we generate all data randomly in advance. The time we calculate in the benchmark experiments only include the cpu-memory to gpu-memory data copy time and the GPU forward time.

I may add benchmark code for more networks (i.e. inception-bn, inception-v3) and deep learning frameworks in the future but no specific plans have been made yet. Thus, anyone is welcomed to submit PRs.

Usage

  1. Install Caffe, Caffe2, PyTorch and MXNet in your machine and make sure you can import them in python. Turn on CUDNN support if possible. If you only want to test a part of them, please modify "DLLIB_LIST" in run.sh.
  2. Modify the "GPU" variable in run.sh to the gpu device you want to use. (In order to get accurate results, please select a GPU without any other process running on it.)
  3. Start benchmark experiments by executing sh run.sh.
  4. The results of network's inference speed and gpu memory cost will be saved to cache/results/${DLLIB}_${NETWORK}_${BATCH_SIZE}.txt. Columns in these files represent "framework name", "network", "batch size", "speed(images/s)", "gpu memory(MB)" respectively.
  5. We also plot the benchmark results in pictures as it could make them more straightforward. cache/results/${NETWORK}_speed.png demonstrates the network's inference speed of different batch size in different frameworks. cache/results/${NETWORK}_gpu_memory.png demonstrates the network's gpu memory cost of different batch size in different frameworks.

Known Issues

  1. There is a problem when I try to run alexnet with CUDNN in caffe2(check the code here). Thus, CUDNN is turned off temporally in caffe2's alexnet benchmarks. If you know how to fix this bug, a PR is welcomed.

Results

License

This project is licensed under an Apache-2.0 license.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].