Commit Graph

413 Commits

Author SHA1 Message Date
hsc
9decf95a09 ecos: specific traps are OK for two benchmarks
The "except1" and "clockcnv" benchmarks explicitly cause a trap and handle
it in their own trap handler.  This, of course, isn't a bad experiment
outcome.

git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1923 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-13 00:17:18 +00:00
hsc
a0e6ddd519 ecos: fault-space cutoff specific for this campaign
For the eCos kernel test campaign we define a relatively "special" metric
to compare FI results from different applications:  Instead of aligning
the fault-space dimensions (e.g., by artificially adding "don't care" space
to the right for shorter application variants), we only keep the data
address axis constant.  The rationale behind this is that -- despite the
benchmark applications' run-to-completion behavior -- an operating system's
scheduler usually runs ad infinitum, and that we therefore can extrapolate
from a short application run to any longer period.

In essence, this means we use a failure/experiment-length quotient (ignoring
the Y axis for simplicity, as it is constant in size) to compare
application variants, instead of an absolute failure count.  One important
side effect is that we do not punish any application slowdown with this
metric.  (And simply prolongating non-susceptible program sections with,
e.g., NOPs, seemingly "improves" fault tolerance.)

git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1922 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-12 13:55:45 +00:00
hsc
464bc9390b ecos: campaign rewritten
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1920 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-12 10:59:35 +00:00
hsc
283d946295 ecos: no need for experimentInfo.hpp.sh anymore
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1918 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-12 10:59:28 +00:00
1b5bbba0e5 Handled a kind of wicked error case which nevertheless happens quite frequently
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1917 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-11 11:37:08 +00:00
hsc
4957cfb71b ecos: remove hard-coded trace filename
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1913 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-10 16:13:59 +00:00
hsc
0ab4f12b7c ecos: no need for clearListeners anymore
Since r1700, listeners remove themselves when they leave their scope.
A restore() call also implicitly clears all listeners.

git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1912 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-09 15:37:33 +00:00
hsc
661563125e ecos: cosmetics / compiler warning
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1910 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-09 15:37:27 +00:00
hsc
1292b66043 ecos: image/prerequisite/result path naming changes
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1909 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-09 15:37:24 +00:00
hsc
c2242f2bb4 ecos: guest-image independent fail client
TODO: campaign needs to be updated, too

git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1908 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-09 15:37:21 +00:00
hsc
a26aeb52ee ecos: preparations for guest-image independent fail client
Additional change: prerequisite data files are not opened in append mode
anymore.  These files can be easily reproduced, and append mode does more harm
than good here.

git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1906 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-09 15:37:14 +00:00
e337fef205 perf-test: further results added
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1895 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-08 12:59:43 +00:00
2eb18c81ac perf-test: code improved.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1894 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-08 12:59:16 +00:00
chb
126fb1a1ff ecos_kernel_test: remove 2nd reboot (which was just before a restore)
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1889 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-07 16:01:35 +00:00
chb
b7bbcd389f ecos_kernel_test: record error detected/corrected
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1882 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-06 10:51:41 +00:00
hsc
9e5de7b14a ecos_kernel_test bugfix: timer granularity of 10s is way too coarse
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1877 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-02 16:59:07 +00:00
cb3775b290 Ensuring parsability in case of exceptions
by removing unnecessary newline characters


git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1874 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-01 13:28:52 +00:00
1423fb93dd Removed instruction vector to reduce memory consumption
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1873 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-01 09:23:45 +00:00
hsc
163be81874 rampage: final experiment parameters, for the records
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1872 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-31 15:07:01 +00:00
ccc4aca728 Forgot to cast the type
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1866 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-30 11:09:59 +00:00
22634f6103 Minor bugfix
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1865 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-30 10:59:27 +00:00
7ae8b6b09d Introduces instruction filtering, e.g. to filter for kernel instructions
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1864 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-30 09:14:33 +00:00
hsc
4a48b6c20c nanojpeg: deleting result sets after handling them is not racy
Deleting result sets after retrieving them from the "done" queue is /not/
racy.  This obviously was a misinterpretation of crashes with other
campaigns.

git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1861 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-27 23:18:27 +00:00
hsc
4e26205aef nanojpeg: count existing experiments and CSV rows
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1855 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-26 17:31:44 +00:00
hsc
8f39aa9717 nanojpeg: correct experiment count
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1854 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-26 17:31:41 +00:00
hsc
5a5367beee nanojpeg: complete fault-space coverage by closing ECs in the end
As we don't know what happens after the "right margin" of the specified
fault space (specified by trace length, or an explicit instruction limit),
we need to do one FI experiment for every register/bit in the end.

git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1847 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-26 14:27:35 +00:00
hsc
05217d77d9 nanojpeg: more thorough output address check
This prevents the experiment trying to read from invalid guest-system
addresses.

git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1846 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-26 14:27:32 +00:00
34d89000cf ecos_kernel_test: simplification (no need to call clearListeners() here).
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1843 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-25 15:52:55 +00:00
12f3550428 Reboot-test optimized
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1833 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-25 12:39:09 +00:00
hsc
14ca377a85 nanojpeg: run 200 experiments, not 50 jobs
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1824 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 22:35:49 +00:00
hsc
bd3bef1f72 nanojpeg: load existing results before starting campaign
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1823 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 22:35:46 +00:00
hsc
4fb768972b nanojpeg: allow CSV output to be buffered
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1822 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 22:35:43 +00:00
hsc
4dcee177be nanojpeg: receive/store results, merge identical neighbors
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1816 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:59 +00:00
hsc
554d80139a nanojpeg: timeout reduced, instructions limited (temporarily)
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1815 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:56 +00:00
hsc
f61db1ff39 nanojpeg: psnr is optional
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1814 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:53 +00:00
hsc
1585b4a614 nanojpeg: signedness fixes
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1813 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:50 +00:00
hsc
bb621aac82 nanojpeg: uint32_t for IPs in protobuf message
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1811 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:45 +00:00
hsc
3de22e1b10 nanojpeg: count both jobs and single experiments
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1810 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:42 +00:00
hsc
2b1e4edd6b nanojpeg: store known-outcome results, enqueue jobs
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1809 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:39 +00:00
hsc
892e5f86f0 nanojpeg: use absolute IP from trace
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1808 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:36 +00:00
hsc
b167b21de6 nanojpeg: handle known-outcome ECs
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1807 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:33 +00:00
hsc
6af5689cce nanojpeg: cosmetics, updated CSV header
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1806 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:26 +00:00
hsc
f74954f460 nanojpeg: more diagnostic info for weird BROKEN cases
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1802 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-23 13:36:06 +00:00
hsc
c5304c0c31 nanojpeg: detect rogue memory accesses
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1801 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-23 13:36:03 +00:00
hsc
8de290f47d nanojpeg: experiment largely complete
- utilizes ELF reader to find symbols
 - retrieves generated image from guest system and calculates PSNR

git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1798 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-22 21:13:20 +00:00
hsc
41cf5e1352 nanojpeg: campaign's fault-space pruning works now
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1795 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-22 15:36:18 +00:00
hsc
1ae19893ea nanojpeg: debug output (missing opcode information)
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1794 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-22 15:36:15 +00:00
hsc
d26fc600da nanojpeg: helper for Udis86 -> Fail* register ID translation
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1793 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-22 15:36:12 +00:00
hsc
069cd42d4d nanojpeg: recognize more opcodes for -O3 variant
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1791 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-22 15:36:06 +00:00
hsc
8d96c50bfb nanojpeg: default timeout
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1790 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-22 15:35:59 +00:00