Coder Social home page Coder Social logo

msnh2012 / msnhnet Goto Github PK

View Code? Open in Web Editor NEW
727.0 26.0 143.0 15.06 MB

🔥 (yolov3 yolov4 yolov5 unet ...)A mini pytorch inference framework which inspired from darknet.

License: MIT License

CMake 1.42% C++ 84.69% C 2.42% Python 9.16% QMake 0.19% Cuda 2.12%
yolov3 yolov4 yolov5 pytorch inference-engine darknet jetson-nx mobilenetv2 mobilenetyolo

msnhnet's Introduction

🔥 Msnhnet(V2.0 Focusing on Robot Vision)🔥

English| 中文 |CSDN

A mini pytorch inference framework which inspired from darknet.

License c++ Msnhnet

OS supported (you can check other OS by yourself)

windows linux mac Loongnix
checked Windows Windows OSX Loongnix
gpu Windows Linux Mac Loongnix

CPU checked

Intel i7 raspberry 3B raspberry 4B Jeston NX Loongson
checked i7 3B 4B NX Loongson

Features

  • C++ Only. 3rdparty blas lib is optional, also you can use OpenBlas.
  • OS supported: Windows, Linux(Ubuntu checked) and Mac os(unchecked).
  • CPU supported: Intel X86, AMD(unchecked) and ARM(checked: armv7 armv8 arrch64).
  • x86 avx2 supported.(Working....)
  • arm neon supported.(Working....)
  • A cv lib like opencv is supported for msnhnet.(MsnhCV)
  • conv2d 3x3s1 3x3s2 winograd3x3s1 is supported(Arm)
  • Keras to Msnhnet is supported. (Keras 2 and tensorflow 1.x)
  • GPU cuda supported.(Checked GTX1080Ti, Jetson NX)
  • GPU cudnn supported.(Checked GTX1080Ti, Jetson NX)
  • GPU fp16 mode supported.(Checked GTX1080Ti, Jetson NX.)
  • ps. Please check your card wheather fp16 full speed is supported.
  • c_api supported.
  • keras 2 msnhnet supported.(Keras 2 and tensorflow 1.x, part of op)
  • pytorch 2 msnhnet supported.(Part of op, working on it)
  • MsnhnetSharp supported. pic
  • A viewer for msnhnet is supported.(netron like)
  • Working on it...(Weekend Only (╮(╯_╰)╭))

Tested networks

Yolo Test

  • Win10 MSVC 2017 I7-10700F

    net yolov3 yolov3_tiny yolov4
    time 380ms 50ms 432ms
  • ARM(Yolov3Tiny cpu)

    cpu raspberry 3B raspberry 4B Jeston NX
    with neon asm ? 0.432s ?

Yolo GPU Test

  • Ubuntu16.04 GCC Cuda10.1 GTX1080Ti

    net yolov3 yolov3_tiny yolov4
    time 30ms 8ms 30ms
  • Jetson NX

    net yolov3 yolov3_tiny yolov4
    time 200ms 20ms 210ms

Yolo GPU cuDnn FP16 Test

  • Jetson NX
    net yolov3 yolov4
    time 115ms 120ms

Yolov5s GPU Test

  • Ubuntu18.04 GCC Cuda10.1 GTX2080Ti
    net yolov5s yolov5s_fp16
    time 9.57ms 8.57ms

Mobilenet Yolo GPU cuDnn Test

  • Jetson NX
    net yoloface100k yoloface500k mobilenetv2_yolov3_nano mobilenetv2_yolov3_lite
    time 7ms 20ms 20ms 30ms

DeepLabv3 GPU Test

  • Ubuntu18.04 GCC Cuda10.1 GTX2080Ti
    net deeplabv3_resnet101 deeplabv3_resnet50
    time 22.51ms 16.46ms

Requirements

Video tutorials(bilibili)

How to build

  • With CMake 3.15+

  • Viewer can not build with GPU.

  • Options

    ps. You can change omp threads by unchecking OMP_MAX_THREAD and modifying "num" val at CMakeLists.txt:52

  • Windows

  1. Compile opencv4 (optional)
  2. Config environment. Add "OpenCV_DIR" (optional)
  3. Get qt5 and install. http://download.qt.io/ (optional)
  4. Add qt5 bin path to environment (optional).
  5. Get glew for MsnhCV Gui.http://glew.sourceforge.net/ (optional).
  6. Get glfw3 for MsnhCV Gui.https://www.glfw.org/ (optional).
  7. Extract glew, add glew path to "CMAKE_PREFIX_PATH" (optional).
  8. Compile gflw3 with cmake, add gflw3 cmake dir to "GLFW_DIR" (optional).
  9. Then use cmake-gui tool and visual studio to make or use vcpkg.
  • Linux(Ubuntu)

ps. If you want to build with Jetson, please uncheck NNPACK, OPENBLAS, NEON.


sudo apt-get install build-essential
sudo apt-get install qt5-default      #optional
sudo apt-get install libqt5svg5-dev   #optional
sudo apt-get install libopencv-dev    #optional
sudo apt-get install libgl1-mesa-dev libglfw3-dev libglfw3 libglew-dev #optional


#config 
sudo echo /usr/local/lib > /etc/ld.so.conf.d/usrlib.conf
sudo ldconfig

# build Msnhnet
git clone https://github.com/msnh2012/Msnhnet.git
mkdir build 

cd Msnhnet/build
cmake -DCMAKE_BUILD_TYPE=Release ..  
make -j4
sudo make install

vim ~/.bashrc # Last line add: export PATH=/usr/local/bin:$PATH
sudo ldconfig
  • MacOS(MacOS Catalina) Without viewer

PS: XCode should be pre-installed.

Please download cmake from official website with gui support and the source code of yaml and opencv.

# install cmake

vim .bash_profile
export CMAKE_ROOT=/Applications/CMake.app/Contents/bin/
export PATH=$CMAKE_ROOT:$PATH
source .bash_profile

# install brew to install necessary libraries

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

brew install wget
brew install openjpeg
brew install hdf5
brew install gflags
brew install glog
brew install eigen
brew install libomp

# build yaml-cpp
git clone https://github.com/jbeder/yaml-cpp.git
cd yaml-cpp
mkdir build
source .bash_profile
cmake-gui
Set the source code path: ./yaml-cpp
Set the build binary path: ./yaml-cpp/build
configure
CMAKE_BUILD_TYPE = Release
uncheck YAML_CPP_BUILD_TESTS
configure (and continue to debug)
generate
cd ./yaml-cpp/build
sudo make install -j8

# build opencv
# download opencv.zip from official website(Remember to download opencv-contrib together)
cd opencv-4.4.0
mkdir build
source .bash_profile
cmake-gui


Set the source code path: ./opencv-4.4.0
Set the build binary path: ./opencv-4.4.0/build
configure (use default)
search for OPENCV_ENABLE_NONFREE and enable it
seach for OPENCV_EXTRA_MODULES_PATH to the path of opencv-contrib
configure (and continue to debug)
generate
cd ./opencv-4.4.0/build/
sudo make install -j8


# build Msnhnet
git clone https://github.com/msnh2012/Msnhnet.git
mkdir build 

cd Msnhnet/build
cmake -DCMAKE_BUILD_TYPE=Release ..  
make -j4
sudo make install

Test Msnhnet

    1. Download pretrained model and extract. eg.D:/models.
    1. Open terminal and cd "Msnhnet install bin". eg. D:/Msnhnet/bin
    1. Test yolov3 "yolov3 D:/models".
    1. Test yolov3tiny_video "yolov3tiny_video D:/models".
    1. Test classify "classify D:/models".


View Msnhnet

    1. Open terminal and cd "Msnhnet install bin" eg. D:/Msnhnet/bin
    1. run "MsnhnetViewer"


PS. You can double click "ResBlock Res2Block AddBlock ConcatBlock" node to view more detail
ResBlock

Res2Block

AddBlock

ConcatBlock

How to convert your own pytorch network

  • pytorch2msnhnet
  • ps:
  • 1 . Please check out OPs which supported by pytorch2msnhnet before trans.
  • 2 . Maybe some model can not be translated.
  • 3 . If your model contains preprocessors and postprocessors which are quite complicated, please trans backbone first and then add some OPs manually.
  • 4 . As for yolov3 & yolov4, just follow this video. You can find "pytorch2msnhbin" tool here.

About Train

Enjoy it! :D

Acknowledgement

Msnhnet got ideas and developed based on these projects:

3rdparty Libs

加群交流

msnhnet's People

Contributors

bbuf avatar cydiachen avatar hengc-137 avatar msnh2012 avatar tengfeihan0 avatar wllkk avatar zchrissirhcz avatar zh794390558 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

msnhnet's Issues

转换报错

你好,用https://github.com/bat67/pytorch-FCN-easiest-demo生成的模型,用下面的代码转换报错

import torch
import PytorchToMsnhnet

device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')

fcn_model = torch.load(r'pytorch-FCN-easiest-demo\checkpoints\fcn_model_95.pt').to("cpu")
fcn_model.requires_grad_(False)
fcn_model.eval()

input = torch.ones([1, 3, 160, 160], dtype=torch.float)

trans msnhnet and msnhbin file

PytorchToMsnhnet.trans(fcn_model, input, "fcn.msnhnet", "fcn.msnhbin", False)

输出:
E:\python\Python38\python.exe pytorch-FCN-easiest-demo/toMsnhnet.py
conv2d-i 2163667712896
conv2d-o 2163667704448
weights: 1728
bias: 64
relu-i 2163667704448
relu-o 2163667704448
conv2d-i 2163667704448
conv2d-o 2163667709056
weights: 36864
bias: 64
relu-i 2163667709056
relu-o 2163667709056
max2d-i 2163667709056
max2d-o 2163667703424
conv2d-i 2163667703424
conv2d-o 2163667705472
weights: 73728
bias: 128
relu-i 2163667705472
relu-o 2163667705472
conv2d-i 2163667705472
conv2d-o 2163667713152
weights: 147456
bias: 128
relu-i 2163667713152
relu-o 2163667713152
max2d-i 2163667713152
max2d-o 2163667706240
conv2d-i 2163667706240
conv2d-o 2163667699072
weights: 294912
bias: 256
relu-i 2163667699072
relu-o 2163667699072
conv2d-i 2163667699072
conv2d-o 2163667700864
weights: 589824
bias: 256
relu-i 2163667700864
relu-o 2163667700864
conv2d-i 2163667700864
conv2d-o 2163667706752
weights: 589824
bias: 256
relu-i 2163667706752
relu-o 2163667706752
max2d-i 2163667706752
max2d-o 2163667703680
conv2d-i 2163667703680
conv2d-o 2163667703936
weights: 1179648
bias: 512
relu-i 2163667703936
relu-o 2163667703936
conv2d-i 2163667703936
conv2d-o 2163667707008
weights: 2359296
bias: 512
relu-i 2163667707008
relu-o 2163667707008
conv2d-i 2163667707008
conv2d-o 2163667707520
weights: 2359296
bias: 512
relu-i 2163667707520
relu-o 2163667707520
max2d-i 2163667707520
max2d-o 2163667704960
conv2d-i 2163667704960
conv2d-o 2163667698816
weights: 2359296
bias: 512
relu-i 2163667698816
relu-o 2163667698816
conv2d-i 2163667698816
conv2d-o 2163667705216
weights: 2359296
bias: 512
relu-i 2163667705216
relu-o 2163667705216
conv2d-i 2163667705216
conv2d-o 2163667699584
weights: 2359296
bias: 512
relu-i 2163667699584
relu-o 2163667699584
max2d-i 2163667699584
max2d-o 2163667707776
relu-i 2163667704704
relu-o 2163667704704
'2163667704704' is not in list
Traceback (most recent call last):
File "MsnhBuilder.py", line 33, in checkInput
ID = self.getIndexFromName(str(inAddr._cdata))
File "MsnhBuilder.py", line 17, in getIndexFromName
ids = self.indexes[self.names.index(name)]
ValueError: '2163667704704' is not in list

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "toMsnhnet.py", line 18, in
PytorchToMsnhnet.trans(fcn_model, input, "fcn.msnhnet", "fcn.msnhbin", False)
File "PytorchToMsnhnet.py", line 1389, in trans
net.forward(inputVar)
File "FCN.py", line 142, in forward
score = self.relu(score)
File "E:\python\Python38\lib\site-packages\torch\nn\modules\module.py", line 727, in _call_impl
result = self.forward(*input, **kwargs)
File "E:\python\Python38\lib\site-packages\torch\nn\modules\activation.py", line 102, in forward
return F.relu(input, inplace=self.inplace)
File "PytorchToMsnhnet.py", line 31, in call
out=self.obj(self.raw,*args,**kwargs)
File "PytorchToMsnhnet.py", line 392, in _relu
msnhnet.checkInput(inData,sys._getframe().f_code.co_name)
File "MsnhBuilder.py", line 37, in checkInput
raise NotImplementedError("last op is not supported " + fun + str(inAddr._cdata))
NotImplementedError: last op is not supported _relu2163667704704

Process finished with exit code 1

compile with gpu error

-- The CXX compiler identification is GNU 7.4.0
-- The C compiler identification is GNU 7.4.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ - works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc - works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- OS is Linux-3.10.0-957.el7.x86_64
-- Use OMP
-- Found OpenMP_C: -fopenmp (found version "4.5") 
-- Found OpenMP_CXX: -fopenmp (found version "4.5") 
-- Found OpenMP: TRUE (found version "4.5")  
-- Found Openmp
-- The CUDA compiler identification is NVIDIA 10.0.130
-- Check for working CUDA compiler: /usr/local/cuda/bin/nvcc
-- Check for working CUDA compiler: /usr/local/cuda/bin/nvcc - works
-- Detecting CUDA compiler ABI info
-- Detecting CUDA compiler ABI info - done
-- Detecting CUDA compile features
-- Detecting CUDA compile features - done
-- Found cuBlas: /usr/local/cuda/include  
-- Use x86_64 arch
x86_64
shared--------------------
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp-data/zhanghui/Msnhnet/build
luban@k8s-deploy-olbenz-1566810569345-7cc55777cd-mvdlp:/tmp-data/zhanghui/Msnhnet$ cmake --build build
Scanning dependencies of target Msnhnet
[  0%] Building CXX object CMakeFiles/Msnhnet.dir/src/core/MsnhBlas.cpp.o
[  1%] Building CXX object CMakeFiles/Msnhnet.dir/src/core/MsnhGemm.cpp.o
[  2%] Building CXX object CMakeFiles/Msnhnet.dir/src/core/MsnhMemoryManager.cpp.o
[  3%] Building CXX object CMakeFiles/Msnhnet.dir/src/io/MsnhIO.cpp.o
[  4%] Building CXX object CMakeFiles/Msnhnet.dir/src/io/MsnhParser.cpp.o
[  4%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhActivationLayer.cpp.o
[  5%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhActivations.cpp.o
[  6%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhActivationsAvx.cpp.o
[  7%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhActivationsNeon.cpp.o
[  8%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhAddBlockLayer.cpp.o
[  9%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhBaseLayer.cpp.o
[  9%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhBatchNormLayer.cpp.o
[ 10%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhConcatBlockLayer.cpp.o
[ 11%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhConnectedLayer.cpp.o
[ 12%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhConvolutionalLayer.cpp.o
/tmp-data/zhanghui/Msnhnet/src/layers/MsnhConvolutionalLayer.cpp: In member function ‘virtual void Msnhnet::ConvolutionalLayer::loadAllWeigths(std::vector<float>&)’:
/tmp-data/zhanghui/Msnhnet/src/layers/MsnhConvolutionalLayer.cpp:1153:23: error: ‘class Msnhnet::ConvolutionalLayer’ has no member named ‘_gpuWeightsFp16’; did you mean ‘_gpuWeights’?
                 this->_gpuWeightsFp16   = this->_shareLayer->_gpuWeightsFp16;
                       ^~~~~~~~~~~~~~~
                       _gpuWeights
/tmp-data/zhanghui/Msnhnet/src/layers/MsnhConvolutionalLayer.cpp:1153:62: error: ‘class Msnhnet::ConvolutionalLayer’ has no member named ‘_gpuWeightsFp16’; did you mean ‘_gpuWeights’?
                 this->_gpuWeightsFp16   = this->_shareLayer->_gpuWeightsFp16;
                                                              ^~~~~~~~~~~~~~~
                                                              _gpuWeights
CMakeFiles/Msnhnet.dir/build.make:264: recipe for target 'CMakeFiles/Msnhnet.dir/src/layers/MsnhConvolutionalLayer.cpp.o' failed
make[2]: *** [CMakeFiles/Msnhnet.dir/src/layers/MsnhConvolutionalLayer.cpp.o] Error 1
CMakeFiles/Makefile2:280: recipe for target 'CMakeFiles/Msnhnet.dir/all' failed
make[1]: *** [CMakeFiles/Msnhnet.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2

libyaml-cpp.a symbol error while building libMsnhnet.so

When I build Msnhnet following the steps wrote in readme, an symbol error occurred
here is the error output

[  1%] Linking CXX shared library libMsnhnet.so
/usr/bin/ld: /usr/local/lib/libyaml-cpp.a(exceptions.cpp.o): relocation R_X86_64_32 against `_ZTVN4YAML9ExceptionE' can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/libyaml-cpp.a: 无法添加符号: 错误的值
collect2: error: ld returned 1 exit status
CMakeFiles/Msnhnet.dir/build.make:647: recipe for target 'libMsnhnet.so' failed
make[2]: *** [libMsnhnet.so] Error 1
CMakeFiles/Makefile2:279: recipe for target 'CMakeFiles/Msnhnet.dir/all' failed
make[1]: *** [CMakeFiles/Msnhnet.dir/all] Error 2
Makefile:148: recipe for target 'all' failed
make: *** [all] Error 2

build error

evn:build in vs2019 cuda10.2. win10 GPU GTX960X

1.when i build msnhnet it occurs error in function

int n = static_cast<int>(floor(x));

use foor is error ,so i change foorf function.
2.when i use cmake msnhnetviewer don't add lib msnhnet.lib and cudnn.lib in this project.

win10 vs2019上面一直编译失败

error 1:error C3861: “_mm256_cvtss_f32”: 找不到标识符
error 2:error C3861: “_mm256_extract_epi64”: 找不到标识符
error 3:无法打开包括文件: “yaml-cpp/yaml.h”: No such file or directory

warming 1: warning C4752: 发现 Intel(R) 高级矢量扩展;请考虑使用 /arch:AVX

可否提供一份详细的,傻瓜式的编译教程,非常感谢

还有我在ubuntu上编译成功了,没有看到MnshnetViewer工具

Compilation failed

Thank you very much for your work
After adding c++11 support, set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -O3 -pthread"), there are a lot of errors, see the text for details.

error.txt

onnx推理

可以考虑一下支持直接onnx推理吗?

Compile on Ubuntu 18 failure.

CMakeFiles/Msnhnet.dir/build.make:62: recipe for target 'CMakeFiles/Msnhnet.dir/src/core/MsnhBlas.cpp.o' failed
make[2]: *** [CMakeFiles/Msnhnet.dir/src/core/MsnhBlas.cpp.o] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/Msnhnet.dir/all' failed
make[1]: *** [CMakeFiles/Msnhnet.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2

AMD® Ryzen 7 2700x eight-core processor × 16
GeForce GTX 1080 Ti/PCIe/SSE2
Ubuntu 18.06

编译Viewer时报错

环境:
win10 x64
vs2017
Qt5.12.3
在编译到Viewer的时候报以下两个错误:
3>D:\msnhNet\Msnhnet-master\viewer\mainwindow.cpp(368): error C2653: “ReductionType”: 不是类或命名空间名称
3>D:\msnhNet\Msnhnet-master\viewer\mainwindow.cpp(368): error C2065: “REDUCTION_SUM”: 未声明的标识符
不加编译Viewer选项时候整个工程已经编译通过,并通过测试。

我把mainwindow.cpp报错地方ReductionType::REDUCTION_SUM改成Msnhnet::ReductionType::REDUCTION_SUM后,
出现更多的报错,
3>MsnhNetwork.obj : error LNK2001: 无法解析的外部符号 "public: static bool Msnhnet::MemoryManager::memAlign" (?memAlign@MemoryManager@Msnhnet@@2_NA)
3>MsnhSliceLayer.obj : error LNK2001: 无法解析的外部符号 "public: static bool Msnhnet::MemoryManager::memAlign" (?memAlign@MemoryManager@Msnhnet@@2_NA)
3>MsnhYoloLayer.obj : error LNK2001: 无法解析的外部符号 "public: static bool Msnhnet::MemoryManager::memAlign" (?memAlign@MemoryManager@Msnhnet@@2_NA)
3>MsnhYoloOutLayer.obj : error LNK2001: 无法解析的外部符号 "public: static bool Msnhnet::MemoryManager::memAlign" (?memAlign@MemoryManager@Msnhnet@@2_NA)
....

想请教下是什么地方我操作有问题。

compile gpu error

-- The CXX compiler identification is GNU 7.4.0
-- The C compiler identification is GNU 7.4.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ - works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc - works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- OS is Linux-3.10.0-957.el7.x86_64
-- Use OMP
-- Found OpenMP_C: -fopenmp (found version "4.5") 
-- Found OpenMP_CXX: -fopenmp (found version "4.5") 
-- Found OpenMP: TRUE (found version "4.5")  
-- Found Openmp
-- The CUDA compiler identification is NVIDIA 10.0.130
-- Check for working CUDA compiler: /usr/local/cuda/bin/nvcc
-- Check for working CUDA compiler: /usr/local/cuda/bin/nvcc - works
-- Detecting CUDA compiler ABI info
-- Detecting CUDA compiler ABI info - done
-- Detecting CUDA compile features
-- Detecting CUDA compile features - done
-- Found cuBlas: /usr/local/cuda/include  
-- Use x86_64 arch
x86_64
shared--------------------
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp-data/zhanghui/Msnhnet/build
luban@k8s-deploy-olbenz-1566810569345-7cc55777cd-mvdlp:/tmp-data/zhanghui/Msnhnet$ cmake --build build
Scanning dependencies of target Msnhnet
[  0%] Building CXX object CMakeFiles/Msnhnet.dir/src/core/MsnhBlas.cpp.o
[  1%] Building CXX object CMakeFiles/Msnhnet.dir/src/core/MsnhGemm.cpp.o
[  2%] Building CXX object CMakeFiles/Msnhnet.dir/src/core/MsnhMemoryManager.cpp.o
[  3%] Building CXX object CMakeFiles/Msnhnet.dir/src/io/MsnhIO.cpp.o
[  4%] Building CXX object CMakeFiles/Msnhnet.dir/src/io/MsnhParser.cpp.o
[  4%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhActivationLayer.cpp.o
[  5%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhActivations.cpp.o
[  6%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhActivationsAvx.cpp.o
[  7%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhActivationsNeon.cpp.o
[  8%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhAddBlockLayer.cpp.o
[  9%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhBaseLayer.cpp.o
[  9%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhBatchNormLayer.cpp.o
[ 10%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhConcatBlockLayer.cpp.o
[ 11%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhConnectedLayer.cpp.o
[ 12%] Building CXX object CMakeFiles/Msnhnet.dir/src/layers/MsnhConvolutionalLayer.cpp.o
/tmp-data/zhanghui/Msnhnet/src/layers/MsnhConvolutionalLayer.cpp: In member function ‘virtual void Msnhnet::ConvolutionalLayer::loadAllWeigths(std::vector<float>&)’:
/tmp-data/zhanghui/Msnhnet/src/layers/MsnhConvolutionalLayer.cpp:1153:23: error: ‘class Msnhnet::ConvolutionalLayer’ has no member named ‘_gpuWeightsFp16’; did you mean ‘_gpuWeights’?
                 this->_gpuWeightsFp16   = this->_shareLayer->_gpuWeightsFp16;
                       ^~~~~~~~~~~~~~~
                       _gpuWeights
/tmp-data/zhanghui/Msnhnet/src/layers/MsnhConvolutionalLayer.cpp:1153:62: error: ‘class Msnhnet::ConvolutionalLayer’ has no member named ‘_gpuWeightsFp16’; did you mean ‘_gpuWeights’?
                 this->_gpuWeightsFp16   = this->_shareLayer->_gpuWeightsFp16;
                                                              ^~~~~~~~~~~~~~~
                                                              _gpuWeights
CMakeFiles/Msnhnet.dir/build.make:264: recipe for target 'CMakeFiles/Msnhnet.dir/src/layers/MsnhConvolutionalLayer.cpp.o' failed
make[2]: *** [CMakeFiles/Msnhnet.dir/src/layers/MsnhConvolutionalLayer.cpp.o] Error 1
CMakeFiles/Makefile2:280: recipe for target 'CMakeFiles/Msnhnet.dir/all' failed
make[1]: *** [CMakeFiles/Msnhnet.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2

模型转换的疑问

您好,这个项目非常好,我想请教下,不支持的op怎么添加吗?

Consider remove duplicated model directories

Hi, Msnhnet Authors

After git clone this repo on MacOSX, git gives hint, complaining this:

正克隆到 'Msnhnet'...
remote: Enumerating objects: 352, done.
remote: Counting objects: 100% (352/352), done.
remote: Compressing objects: 100% (252/252), done.
remote: Total 4515 (delta 174), reused 188 (delta 92), pack-reused 4163
接收对象中: 100% (4515/4515), 13.81 MiB | 2.24 MiB/s, 完成.
处理 delta 中: 100% (2863/2863), 完成.
warning: 以下路径发生碰撞(如:在不区分大小写的文件系统上的区分大小写的路径),
并且碰撞组中只有一个文件存在工作区中:

  'models/Lenet5/lenet5.msnhnet'
  'models/lenet5/lenet5.msnhnet'
  'models/Lenet5_bn/lenet5_bn.msnhnet'
  'models/lenet5_bn/lenet5_bn.msnhnet'
  'models/Resnet101/resnet101.msnhnet'
  'models/resnet101/resnet101.msnhnet'
  'models/Resnet101/resnet101_add.msnhnet'
  'models/resnet101/resnet101_add.msnhnet'
  'models/Resnet152/resnet152.msnhnet'
  'models/resnet152/resnet152.msnhnet'
  'models/Resnet152/resnet152_add.msnhnet'
  'models/resnet152/resnet152_add.msnhnet'
  'models/Resnet18/resnet18.msnhnet'
  'models/resnet18/resnet18.msnhnet'
  'models/Resnet18/resnet18_add.msnhnet'
  'models/resnet18/resnet18_add.msnhnet'
  'models/Resnet34/resnet34.msnhnet'
  'models/resnet34/resnet34.msnhnet'
  'models/Resnet34/resnet34_add.msnhnet'
  'models/resnet34/resnet34_add.msnhnet'
  'models/Resnet50/resnet50.msnhnet'
  'models/resnet50/resnet50.msnhnet'
  'models/Resnet50/resnet50_add.msnhnet'
  'models/resnet50/resnet50_add.msnhnet'

I've just pick the lenet5 and Lenet5 folder, checking model files with md5sum:

(base) ➜  Msnhnet git:(master) md5sum models/Lenet5/lenet5-gpu.msnhnet
5dad8c756bc711b1ed0939261b6812a2  models/Lenet5/lenet5-gpu.msnhnet
(base) ➜  Msnhnet git:(master) md5sum models/lenet5/lenet5-gpu.msnhnet
5dad8c756bc711b1ed0939261b6812a2  models/lenet5/lenet5-gpu.msnhnet

I would suggest removing duplicated directories that has same if case-insensitve.

Fps of deeplabv3

Hi, thanks for your great work!
I am interested in the fps of deeplabv3. Could you provide some detail how to test the fps of deeplabv3, such as image size, and the fps of pytorch version.
Thanks

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.