Introduction
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.
Darknet Test project for Linux
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
Inference Engine Test project for Linux
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).
Darknet model conversion
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
Other model conversion
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