Assume a sequential computer has 512 MB of main memory and enough disk space. The disk read/ write bandwidth for a large data block is 1 MB/second. The following code needs to apply checkpointing: do...


Assume a sequential computer has 512 MB of main memory and enough disk space. The disk read/


write bandwidth for a large data block is 1 MB/second. The following code needs to apply


checkpointing:


do 1000 iterations


A = foo (C from last iteration) /* this statement takes 10 minutes */


B = goo (A) /* this statement takes 10 minutes */


C = hoo (B) /* this statement takes 10 minutes */


end do


A, B, and C are arrays of 120 MB each. All other parts of the code, operating system, libraries


take, at most, 16 MB of memory. Assume the computer fails exactly once, and the time to restore


the computer is ignored.


a. What is the worst-case execution time for the successful completion of the code if checkpointing


is performed?


b. What is the worst-case execution time for the successful completion of the code if plain


transparent checkpointing is performed?


c. Is it beneficial to use forked checkpointing with (b)?


d. What is the worst-case execution time for the code if user-directed checkpointing is performed?


Show the code where user directives are added.


e. What is the worst-case execution time of the code if forked checkpointing is used with (d)?



Dec 06, 2021
SOLUTION.PDF

Get Answer To This Question

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here