Skip to content

Stubs for UxHw functions so that developers can compile against UxHw API on non-uncertainty-tracking hardware.

Notifications You must be signed in to change notification settings

signaloid/Signaloid-Demo-UxHwCompatibilityForNativeExecution

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

UxHwCompatibilityForNativeExecution

Stubs for UxHw functions so that developers can compile against UxHw API1 on non-uncertainty-tracking hardware. The compatibility version of the UxHw API implements all available UxHw functions and uses GNU Scientific Library (GSL)2 to generate random samples from parametric distributions. It also uses GSL to draw samples from empirical distributions provided as user input. You can use UxHwCompatibilityForNativeExecution to implement native Monte Carlo implementations in order to quantify the benefit of running an application on Signaloid's platform compared to running the same application on conventional architectures, without the need to modify the application source code.

Usage

UxHw Compatibility API is used as a submodule in many of the Signaloid public application examples. In order to compile and run natively an application that uses UxHwCompatibilityForNativeExecution, you need to:

  1. Install dependencies (e.g., on Linux)
sudo apt-get install libgsl-dev libgslcblas0
  1. Use the source files and header files provided by UxHwCompatibilityForNativeExecution to compile your program
gcc -I/path/to/Signaloid-Demo-UxHwCompatibilityForNativeExecution /path/to/Signaloid-Demo-UxHwCompatibilityForNativeExecution/uxhw.c main.c -o main.bin -lgsl -lgslcblas -lm

Don't forget to link with -lgsl and -lgslcblas.

  1. Run the application natively
./main.bin ...

Footnotes

  1. UxHw API Documentation

  2. GNU Scientific Library

About

Stubs for UxHw functions so that developers can compile against UxHw API on non-uncertainty-tracking hardware.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages