# OmpSs-2 environment This example shows how to include the LLVM compiler to build OmpSs-2 programs with the new NODES and nOS-V runtime. The package `clangOmpss2Nodes` already sets all the needed variables to locate the right runtime. Run `nix develop` then `make` to build the `hello` program: apex% nix develop apex$ make clang -fompss-2 hello.c -o hello apex$ ./hello hello from task 1 hello from task 0 hello from task 2 hello from task 3 hello from task 4 hello from task 7 hello from task 8 hello from task 6 hello from task 9 hello from task 5 You can use `make trace` to run the hello program with instrumentation and generate an ovni trace that is then converted to paraver: apex$ make trace rm -rf ovni/ NOSV_CONFIG_OVERRIDE="instrumentation.version=ovni" NOSV_APPID=1 ./hello hello from task 1 hello from task 0 hello from task 3 hello from task 4 hello from task 5 hello from task 6 hello from task 2 hello from task 8 hello from task 7 hello from task 9 ovniemu ovni/ ovniemu: INFO: loaded 58 streams ovniemu: INFO: sorting looms by name ovniemu: INFO: loaded 1 looms, 1 processes, 58 threads and 56 cpus ovniemu: INFO: generated with libovni version 1.13.0 commit 0643266 ovniemu: INFO: the following 2 models are enabled: ovniemu: INFO: ovni 1.1.0 'O' (18 events) ovniemu: INFO: nosv 2.6.0 'V' (64 events) ovniemu: INFO: emulation starts ovniemu: INFO: apex.nosv-u1880-p598308 burst stats: median/avg/max = 77/ 81/333 ns ovniemu: WARN: ignoring old event OCn ovniemu: INFO: 100.0% done at avg 42 kev/s ovniemu: INFO: processed 711 input events in 0.02 s ovniemu: INFO: writing traces to disk, please wait ovniemu: INFO: emulation finished ok ls -l ovni/*.prv -rw-r--r-- 1 rarias Computational 48224 Feb 4 11:52 ovni/cpu.prv -rw-r--r-- 1 rarias Computational 33689 Feb 4 11:52 ovni/thread.prv