Application semantics based optimization of distributed algorithm

dc.contributor.authorDas, Sanghamitra
dc.date.accessioned2012-11-27T16:14:09Z
dc.date.available2012-11-27T16:14:09Z
dc.date.graduationmonthDecemberen_US
dc.date.issued2012-11-27
dc.date.published2012en_US
dc.description.abstractTo increase their applicability, distributed algorithms are typically written to work with any application on any network. This flexibility comes at the cost of performance since these 'general purpose' algorithms are written with the worst case scenario in mind. A distributed algorithm written for a specific application or a class of application is fine tuned to the properties of the application and can give a better performance when compared to the general purpose one. In this work, we propose two mechanisms in which we can optimize a general purpose algorithm - Alg based on the application - App using it. In the first approach, we analyze the specification of App to identify patterns of communication in its communication topology. These properties are then used to customize the behavior of the underlying distributed algorithm Alg. To demonstrate this approach, we study applications specified as component based systems where application components communicate via events and distributed algorithms to enforce ordering requirements on these events. We show how our approach can be used to optimize event ordering algorithms based on communication patterns in the applications. In the second approach, rather than analyzing the application specification, we assume that the developer provides application properties - I_App which are invariants for the optimization process. We assume that the algorithm is written and annotated in a format that is amenable to analysis. Our analysis algorithm then takes as input the application invariants and the annotated algorithm and looks for potential functions in the algorithm which are redundant in the context of the given application. In particular, we first look for function invocations in the algorithm whose post-conditions are already satisfied as a result of the application invariants. Each such invocation is considered as a potential redundant module. We further analyze the distributed algorithm to identify the impact of the removal of a specific invocation on the rest of the algorithm. We describe an implementation of this approach and demonstrate the applicability using a distributed termination detection algorithm.en_US
dc.description.advisorGurdip Singhen_US
dc.description.degreeDoctor of Philosophyen_US
dc.description.departmentDepartment of Computing and Information Sciencesen_US
dc.description.levelDoctoralen_US
dc.identifier.urihttp://hdl.handle.net/2097/15056
dc.language.isoen_USen_US
dc.publisherKansas State Universityen
dc.subjectOptimization of distributed algorithmsen_US
dc.subjectDistributed algorithmsen_US
dc.subject.umiComputer Science (0984)en_US
dc.titleApplication semantics based optimization of distributed algorithmen_US
dc.typeDissertationen_US

Files

Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
SanghamitraDas2012.pdf
Size:
1.23 MB
Format:
Adobe Portable Document Format
License bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
1.62 KB
Format:
Item-specific license agreed upon to submission
Description: