You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Adrian Sampson edited this page May 14, 2015
·
3 revisions
Here's a very manual way of running the error injection in ACCEPT applications.
You will need to switch to the errorinjection branch on both the accept and accept-apps repositories. Build ACCEPT as normal. Use activate.sh or otherwise ensure that you have ACCEPT's bin directory on your $PATH.
Error injection requires a liberror.cpp to define the error model. We'll use the accept-apps/perfect/sar/kernels/bp application as an example, since it has one checked into the repo already.
Go to the application directory and type make build_orig. This will produce an accept_config.txt (but you don't need to meddle with that).
(You can optionally write make run_orig to see the output without error injection.)
Write an inject_config.txt file to set up the parameters. For example:
$ cat inject_config.txt
default 1
cmult 2
List the function name (mangled, if it's C++) and the parameter. You can also choose a default for other instructions.
Run inject_config.py. This will transfer your parameters from inject_config.txt to ACCEPT's accept_config.txt.
Type make run_opt. This will compile, instrument, and execute the error-injected version of the application.