User Tools

Site Tools


publication

Publication details

Abstract

File systems as well as libraries for input/output (I/O) offer interfaces that are used to interact with them, albeit on different levels of abstraction. While an interface's syntax simply describes the available operations, its semantics determines how these operations behave and which assumptions developers can make about them. There are several different interface standards in existence, some of them dating back decades and having been designed for local file systems; one such representative is POSIX. Many parallel distributed file systems implement a POSIX-compliant interface to improve portability. Its strict semantics is often relaxed to reach maximum performance which can lead to subtly different behavior on different file systems. This, in turn, can cause application misbehavior that is hard to track down. All currently available interfaces follow a fixed approach regarding semantics, making them only suitable for a subset of use cases and workloads. While the interfaces do not allow application developers to influence the I/O semantics, applications could benefit greatly from the possibility of being able to adapt them to their requirements. The work presented in this thesis includes the design of a novel I/O interface called JULEA. It offers support for dynamically adaptable semantics and is suited specifically for HPC applications. The introduced concept allows applications to adapt the file system behavior to their exact I/O requirements instead of the other way around. The general goal is an interface that allows developers to specify what operations should do and how they should behave - leaving the actual realization and possible optimizations to the underlying file system. Due to the unique requirements of the proposed interface, a prototypical file system is designed and developed from scratch. The new I/O interface and file system prototype are evaluated using both synthetic benchmarks and real-world applications. This ensures covering both specific optimizations made possible by the file system's additional knowledge as well as the applicability for existing software. Overall, JULEA provides data and metadata performance comparable to that of other established parallel distributed file systems. However, in contrast to the existing solutions, its flexible semantics allows it to cover a wider range of use cases in an efficient way. The results demonstrate that there is need for I/O interfaces that can adapt to the requirements of applications. Even though POSIX facilitates portability, it does not seem to be suited for contemporary HPC demands. JULEA presents a first approach of how application-provided semantical information can be used to dynamically adapt the file system's behavior to the applications' I/O requirements.

BibTeX

@phdthesis{DAISFHPCK15,
	author	 = {Michael Kuhn},
	title	 = {{Dynamically Adaptable I/O Semantics for High Performance Computing}},
	advisors	 = {Thomas Ludwig},
	year	 = {2015},
	month	 = {04},
	school	 = {Universität Hamburg},
	howpublished	 = {{Online \url{http://ediss.sub.uni-hamburg.de/volltexte/2015/7302/pdf/Dissertation.pdf}}},
	type	 = {PhD Thesis},
	abstract	 = {File systems as well as libraries for input/output (I/O) offer interfaces that are
			used to interact with them, albeit on different levels of abstraction. While an interface's
			syntax simply describes the available operations, its semantics determines how these
			operations behave and which assumptions developers can make about them. There are several
			different interface standards in existence, some of them dating back decades and having been
			designed for local file systems; one such representative is POSIX. Many parallel distributed
			file systems implement a POSIX-compliant interface to improve portability. Its strict
			semantics is often relaxed to reach maximum performance which can lead to subtly different
			behavior on different file systems. This, in turn, can cause application misbehavior that is
			hard to track down. All currently available interfaces follow a fixed approach regarding
			semantics, making them only suitable for a subset of use cases and workloads. While the
			interfaces do not allow application developers to influence the I/O semantics, applications
			could benefit greatly from the possibility of being able to adapt them to their requirements.
			The work presented in this thesis includes the design of a novel I/O interface called JULEA.
			It offers support for dynamically adaptable semantics and is suited specifically for HPC
			applications. The introduced concept allows applications to adapt the file system behavior to
			their exact I/O requirements instead of the other way around. The general goal is an interface
			that allows developers to specify what operations should do and how they should behave -
			leaving the actual realization and possible optimizations to the underlying file system. Due
			to the unique requirements of the proposed interface, a prototypical file system is designed
			and developed from scratch. The new I/O interface and file system prototype are evaluated
			using both synthetic benchmarks and real-world applications. This ensures covering both
			specific optimizations made possible by the file system's additional knowledge as well as the
			applicability for existing software. Overall, JULEA provides data and metadata performance
			comparable to that of other established parallel distributed file systems. However, in
			contrast to the existing solutions, its flexible semantics allows it to cover a wider range of
			use cases in an efficient way. The results demonstrate that there is need for I/O interfaces
			that can adapt to the requirements of applications. Even though POSIX facilitates portability,
			it does not seem to be suited for contemporary HPC demands. JULEA presents a first approach of
			how application-provided semantical information can be used to dynamically adapt the file
			system's behavior to the applications' I/O requirements.},
	url	 = {http://ediss.sub.uni-hamburg.de/volltexte/2015/7302/},
}

publication.txt · Last modified: 2019-01-23 10:26 by 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki