Commit Graph

27 Commits

Author SHA1 Message Date
27f1f77524 ecos: DB-related campaign changes
- Don't enforce the join order, MariaDB usually gets this right.
- Update DB statistics before terminating.

Change-Id: If7bbbe146321430d199811062d05b3c179c5732f
2013-07-03 13:46:55 +02:00
f3c36e70ef ecos: stack-protection eval
Change-Id: I576c2ef3834f61bb9017af37541afc7639672782
2013-05-29 16:43:46 +02:00
091e8dcae0 ecos: baseline assessment integrated into main experiment
Change-Id: Iaf2a31c917b6ddd50568e5fb784ab8457193ee7d
2013-04-29 14:15:53 +02:00
0887a53d1d ecos: campaign rewrite for MySQL data store
We're not yet using the common DatabaseCampaign as it doesn't allow
for additional experiment parameters (such as "variant" and
"benchmark") yet.  TODO: Integrate changes in DatabaseCampaign in a
generic way and use it.

Change-Id: I45480003be433654aea8d3a417fbfa66be31155b
2013-04-29 14:15:44 +02:00
2d45a2c52c ecos: use MemoryMap materialization instead of own code
Change-Id: I8615a066c53e1d6a02c78bce3199fa1f73edfda9
2013-04-10 13:01:04 +02:00
d7a3a28431 ecos: split valid mem access range
When eCos is built as a multiboot binary, some of its data structures
are still at very low (<<1M) addresses, but the rest moves to
addresses >1M.  This change makes sure our invalid mem access
detection is not overly generous.

Change-Id: If8265a407b3706a4ff71562b316e05aa22255f62
2013-04-09 13:16:13 +02:00
373c19dd68 ecos: store traceinfo.txt in correct location
This commit completes the change introduced in commit
59e5fd3169.

Change-Id: I0a6ab7b35fbb69cbb8ef91e187b0d0bc32d01071
2013-04-03 15:18:08 +02:00
hsc
87ee9df37b ecos: additional burst fault model
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1961 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-27 17:06:32 +00:00
hsc
c65c4936ab ecos: compress traces
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1950 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-23 15:33:27 +00:00
hsc
dfe4a5d4c0 ecos: split campaign into job producer and consumer
When we want to use a bounded job queue, job producer and job consumer must
run in different threads in order not to deadlock the campaign.  Ideally
this functionality moves to the CampaignManager later (including the
retrieval of existing experiment results and storing new results).

git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1946 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-20 15:02:01 +00:00
hsc
35026de2d8 ecos: use multiple intermediate states to speed up experiments (disabled)
This modification creates and uses multiple intermediate snapshot states
(one every 1,000,000 instructions) to fast-forward to the FI site.
Unfortunately this doesn't work yet; the trace seems to change in many (not
all!) cases we do this.  One possible cause could be an incorrect
(off-by-one or alike?) restoration of the serial device timers, and
therefore an earlier/later transition to "output buffer empty", resulting
in eCos' serial putc function needing a different amount of polling loop
iterations.  Needs more investigation.

git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1940 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-20 15:01:43 +00:00
hsc
20fc14e6b3 ecos: result merging repaired
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1938 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-20 15:01:37 +00:00
hsc
4cce602bca ecos: actually enqueue jobs
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1928 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-13 00:17:33 +00:00
hsc
7b3e5986d1 ecos: save experiment runtime
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1927 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-13 00:17:31 +00:00
hsc
077f7ea507 ecos: load existing results on campaign startup
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1926 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-13 00:17:28 +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
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
chb
8d2fea7521 ecos_kernel_test: fixed assertion
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1589 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-03 14:01:29 +00:00
chb
b139c71053 ecos_kernel_test: experiment calculates timeout in STEP 2
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1492 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-08-14 09:32:07 +00:00
chb
b5b06a0448 ecos_kernel_test: transfer instr_count, lowest- and highest_addr between STEP 2 and 3
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1477 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-08-08 14:20:53 +00:00
chb
829b08c31c ecos_kernel_test: experiment cleanup
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1476 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-08-08 14:20:50 +00:00
chb
0fbe3d7cfd ecos_kernel_test experiment update
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1444 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-07-10 10:38:16 +00:00
chb
bc922a98d3 ecos_kernel_test: merge experiment steps 0-2 into a single run
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1443 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-07-09 13:58:47 +00:00
chb
596f4c0644 new experiment: ecos_kernel_test
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1426 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-07-05 14:37:38 +00:00