#tensorflow #rune #coral

hotg-runecoral

Bindings to the librunecoral library for doing hardware-accelerated inference

15 releases

0.3.12 May 31, 2022
0.3.11 Mar 28, 2022
0.3.7 Feb 3, 2022
0.3.6 Oct 15, 2021
0.1.1 Aug 9, 2021

#664 in Machine learning


Used in 2 crates

MIT/Apache

3.5MB
19K SLoC

C++ 14K SLoC // 0.2% comments Bazel 3K SLoC // 0.1% comments Shell 869 SLoC // 0.1% comments Rust 548 SLoC // 0.1% comments Bitbake 305 SLoC // 0.1% comments FlatBuffers Schema 198 SLoC // 0.6% comments Batch 127 SLoC // 0.2% comments Python 40 SLoC // 0.5% comments Snakemake 2 SLoC

Contains (Windows DLL, 1.5MB) WdfCoInstaller01009.dll, (Windows DLL, 1MB) winusbcoinstaller2.dll, (DOS exe, 53KB) coral.sys

librunecoral

A thinly veiled wrapper around tflite and libedgetpu from Google

Building

Prerequisites

Linux/Android:

Windows 10:

  • Visual Studio Build tools 2019
  • Msys2
  • choco install python llvm bazel
  • pip install numpy
  • rust

OS X:

  • git
  • bazel
  • XCode
  • pip install numpy
  • rust

Getting the sources

$ git clone https://github.com/hotg-ai/librunecoral
$ cd librunecoral
$ git submodule update --init --recursive

Build the docker container

$ make docker-image-linux
$ docker image ls
REPOSITORY                      TAG     IMAGE ID       CREATED         SIZE
tinyverseml/runecoral-cross-linux-aarch64                   latest         349cd3de00b3   2 days ago      2.9GB
tinyverseml/runecoral-cross-linux-x86_64                    latest         4f5fe19abfb7   2 days ago      2.73GB

Build the package for Linux

$ make librunecoral-linux-aarch64
$ ls dist/include
runecoral.h
$ ls dist/lib/linux/aarch64
librunecoral.so

# To build for all supported CPU architectures under linux
$ make librunecoral-linux
$ ls dist/lib/linux
aarch64  x86_64

Build the package for / on Windows

$ bazel build --config windows //runecoral:runecoral
$ ls bazel-bin/runecoral/
_objs  runecoral.lib  runecoral.params

NOTE: On Windows you may need to clone librunecoral to C:\ or some such path in order to not run into Windows path length limitations

Thanks to:

  • Webcoral
  • libedgetpu
  • rust-embedded/cross (Especially for their docker container build scripts)

Dependencies