Synet is a small framework to inference neural network on CPU. Synet uses models previously trained by other deep neural network frameworks.
The main advantages of Synet are:
- Synet is faster then most other DNN original frameworks (has great single thread CPU performance).
- Synet is header only, small C++ library.
- Synet has only one external dependence - Simd Library.
To build test to compare Synet and Darknet for Linux you can run folowing bash script:
./test.sh darknet
And application darknet_test
will be created in directory build_darknet
.
In order to run this test use ./test.sh
bash script (in the file manually uncomment unit test that you need).
./test.sh
To build test to compare Synet and Inference Engine for Linux you can run folowing bash script:
./test.sh inference_engine
And application inference_engine_test
will be created in directory build_inference_engine
.
In order to run this test use ./test.sh
bash script (in the file manually uncomment unit test that you need).
In order to convert Darknet trained model to Synet model you can use darknet_test
application:
./build_darknet/darknet_test -m convert -om darknet_model.cfg -ow darknet_weigths.dat -sm synet_model.xml -sw synet_weigths.bin
In order to convert Caffe, Tensorflow, MXNet or ONNX trained models to Synet format you previously need to convert they to Inference Engine models format.
Then use inference_engine_test
application:
./build_inference_engine/inference_engine_test -m convert -om ie_model.xml -ow ie_weigths.bin -sm synet_model.xml -sw synet_weigths.bin