Exploiting non-constant safe memory in resilient algorithms and data structures

We extend the Faulty RAM model by Finocchi and Italiano (2008) by adding a safe memory of arbitrary size S, and we then derive tradeoffs between the performance of resilient algorithmic techniques and the size of the safe memory. Let δ and α denote, respectively, the maximum amount of faults which c...

Full description

Saved in:
Bibliographic Details
Published in:Theoretical computer science Vol. 583; pp. 86 - 97
Main Authors: De Stefani, Lorenzo, Silvestri, Francesco
Format: Journal Article
Language:English
Published: Elsevier B.V 07.06.2015
Subjects:
ISSN:0304-3975, 1879-2294
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:We extend the Faulty RAM model by Finocchi and Italiano (2008) by adding a safe memory of arbitrary size S, and we then derive tradeoffs between the performance of resilient algorithmic techniques and the size of the safe memory. Let δ and α denote, respectively, the maximum amount of faults which can happen during the execution of an algorithm and the actual number of occurred faults, with α≤δ. We propose a resilient algorithm for sorting n entries which requires O(nlog⁡n+α(δ/S+log⁡S)) time and uses Θ(S) safe memory words. Our algorithm outperforms previous resilient sorting algorithms which do not exploit the available safe memory and require O(nlog⁡n+αδ) time. Finally, we exploit our sorting algorithm for deriving a resilient priority queue. Our implementation uses Θ(S) safe memory words and Θ(n) faulty memory words for storing n keys, and requires O(log⁡n+δ/S) amortized time for each insert and deletemin operation. Our resilient priority queue improves the O(log⁡n+δ) amortized time required by the state of the art. •We study tradeoffs between algorithmic resiliency and hardware resiliency.•We extend the Faulty RAM (FRAM) model by adding a safe memory S which is immune to corruptions.•We propose a resilient sorting algorithm requiring O(nlog⁡n+α(δ/S+log⁡S)) time.•We propose a resilient priority queue data structure requiring O(log⁡n+δ/S) amortized time per operation.
Bibliography:ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 23
ISSN:0304-3975
1879-2294
DOI:10.1016/j.tcs.2015.04.003