TensorFlow.NET pack all required libraries in architecture-specific assemblies folders per NuGet standard.
PM> Install-Package TensorFlow.NET
PM> Install-Package SciSharp.TensorFlow.Redist
Download Linux pre-built library and unzip libtensorflow.so
and libtensorflow_framework.so
into current running directory.
To run image recognition in Linux, please ensure some prerequisite libraries is install.
sudo apt install libc6-dev
sudo apt install libgdiplus
More information about System.Drawing on Linux.
Before running verify you installed CUDA and cuDNN (TensorFlow v1.15 is compatible with CUDA v10.0 and cuDNN v7.4), and make sure the corresponding cuda version is compatible.
There is no GPU support for macOS.
PM> Install-Package SciSharp.TensorFlow.Redist-Windows-GPU
PM> Install-Package SciSharp.TensorFlow.Redist-Linux-GPU
Here are some pre-built TensorFlow binaries you can use for each platform:
- Linux
- Mac: https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-darwin-x86_64-1.15.0.tar.gz
- Windows
https://www.tensorflow.org/install/source_windows
pacman -S git patch unzip
- Build static library
bazel build --config=opt //tensorflow:libtensorflow.so
- Build pip package
bazel build --config=opt //tensorflow/tools/pip_package:build_pip_package
- Generate pip installation file
bazel-bin\tensorflow\tools\pip_package\build_pip_package C:/tmp/tensorflow_pkg
- Install from local wheel file.
pip install C:/tmp/tensorflow_pkg/tensorflow-1.15.0-cp36-cp36m-win_amd64.whl
Add more api to c_api.h
TF_CAPI_EXPORT extern void AddControlInput(TF_Graph* graph, TF_Operation* op, TF_Operation* input);
TF_CAPI_EXPORT extern void UpdateEdge(TF_Graph* graph, TF_Output new_src, TF_Input dst, TF_Status* status);
TF_CAPI_EXPORT extern void RemoveAllControlInputs(TF_Graph* graph, TF_Operation* op);
For Linux version, these APIs symbols should also be put into tensorflow/c/version_script.lds
to be exported.
Please refer to commit https://github.com/SciSharp/tensorflow/commit/58122da06be3e7707500ad889dfd5c760a3e0424