dependent on k c . We assume that c changes slowly over time and is therefore
considered here as constant during one program run.
In terms of used memory, cases (a) and (b) are equal as the program itself does
not know whether a recovery point is real or not. Thus the program prepares every
recovery point. The needed memory for the recovery points is allocated in the user
programs’ memory space.
However, the allocation process itself is done by the runtime and not by the
application, as the runtime knows the system topology and can therefore better
place the memory area.
In terms of processor overhead, the time required for storing the data is omitted
in the case of fake recovery points. The processor for further program execution can
then use this time. Therefore, we are interested in the time saved by not storing the
recovery point.
In case (a), the maximum time overheads W’ given by the maximum malfunction rate and execution time of the FT system:
W
0
t ¼ W k max
ð8:3Þ
where W kmax is the overhead of creating and storing recovery points during program execution. Currently, we only consider one program execution. W kmax consists of the time required to generate the recovery point in software (W c ) and the
time to store it on stable storage (W s ) for all recovery points that are created during
one program run.
W k max ¼ W c þ W s
ð8:4Þ
For case (b), the overhead for the recovery points W” is proportional to the
malfunction frequency taken from the system log and the resulting number of real
recovery points.
We assume that the fault rate does not significantly change during one program
run and that the rate of fake recovery points is only adapted between program runs.
W k i ¼ W c þ l i W s
ð8:5Þ
Here,
l i defines the percentage of the recovery points that are actually stored on stable
storage in case of active reliability mode i.
Therefore, (1−l i )W s defines the time that was saved during recovery. For n
program runs, we get
W
00
t ¼
X n
t¼0
W c þ
X n
t¼0
l i W s
ð8:6Þ
Here, (8.6) defines the total overhead to create the RPs during n program runs. In
fact, the time we can save in n program iterations is
8.5 Variable Recovery Point Creation
127
Précédent

- 140/315

Suivant