This experiment is a single execution of the LULESH simulation using OpenMP.
Warning
LULESH does a lot of forking in a tight loop. This is highly inefficient in our current implementation, so the results are very bad until we do something about it. The first easy fix is caching scheduling results locally, avoiding a round-trip to the planner.
In the experiment-base
terminal, run:
(faasm-exp-base) inv cluster.provision --vm Standard_D8_v5 --nodes 1
(faasm-exp-base) inv cluster.credentials
Deploy the cluster:
(faasm-exp-faabric) faasmctl deploy.k8s --workers=1
Upload the WASM file:
(faasm-exp-faabric) inv lammps.wasm.upload
and run the experiment with:
(faasm-exp-faabric) inv lammps.run.granny -w compute -w network
To remove the cluster, run:
(faasm-exp-mpi) faasmctl delete
Deploy the cluster:
inv lammps.native.deploy
And run:
inv lammps.run.native -w compute -w network
finally, delete the native cluster:
inv lammps.native.delete
To plot the results, you may run:
inv lammps.plot
which will generate a plot in ./plots/lammps/runtime.png
, we also include it below:
Remember to delete the cluster. From the experiment base terminal:
inv cluster.delete