Skip to content

Runtime Configuration

Sean McBride edited this page Mar 9, 2021 · 3 revisions

Environment Variables

LD_LIBRARY_PATH

Sledge serverless functions are ahead-of-time compiled to native code and output at POSIX(?) shared libraries via the aWsm toolchain. As such, the Sledge runtime loads serverless modules using standard shared library techniques. Similar to how the PATH variable is used to define the directories that are searched for executable binaries, the LD_LIBRARY_PATH is used by the linker to determine which directories to search for shared libraries. This is useful for helping the runtime find the *.so files references in the specification loaded at runtime.

Example:

LD_LIBRARY_PATH=/sledge/runtime/bin sledgert spec.json

SLEDGE_NWORKERS

Soft cap on the number of worker threads. Configurable between 1 and 1 less than the total number of online processors as measured by sysconf(_SC_NPROCESSORS_ONLN) Default is 1 less than the total number of online processors as measured by sysconf(_SC_NPROCESSORS_ONLN)

Example:

SLEDGE_NWORKERS=1 sledgert spec.json

SLEDGE_SCHEDULER

Selects the desired scheduler policy. Valid entries include EDF and FIFO. Default is FIFO

Example:

SLEDGE_SCHEDULER=EDF sledgert spec.json

SLEDGE_SANDBOX_PERF_LOG

Path to a file to dump sandbox-level performance Default is NULL, which disables logging

Example:

SLEDGE_SANDBOX_PERF_LOG=log.csv sledgert spec.json
Clone this wiki locally