Skip to content

A simplified parser and inference engine of neural networks described with the ONNX format, optimized with multi-threading. Academic project for the Systems Device Programming course at Politecnico di Torino.

License

Notifications You must be signed in to change notification settings

Novant8/onnx-rust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Group27

Progetto 2.1 - Configurazione ed esecuzione ottimizzata di una rete neurale generica descritta con standard ONNX

Build & Run (Rust)

# Build
cargo build --release

# Run
./target/release/onnx-cli <model> --input <input_file> [--output <output_file>]
  • model: Modello in formato .onnx da leggere
  • input_file: Dati in ingresso al modello in formato .pb
  • output_file: Eventuali dati di output attesi in formato .pb, stampati insieme all'output effettivo del modello, utile per valutare la correttezza dell'inferenza

Test (Rust)

Nel file tests/models.rs sono presenti i test relativi ai 2 modelli usati per lo sviluppo dell'applicazione:

Per valutare la correttezza dei modelli si assume che il risultato sia uguale valutandolo fino alla terza cifra significativa

Build & Run (Python)

# Build
python/build.sh

# Start virtual environment
source .env/bin/activate

# Run python program
python python/test.py

# Close virtual environment when you want to exit 
deactivate

La libreria compilata si trova in target/wheels.

Modelli scelti

MNIST-12 GoogLeNet-12

About

A simplified parser and inference engine of neural networks described with the ONNX format, optimized with multi-threading. Academic project for the Systems Device Programming course at Politecnico di Torino.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages