iHarmonizer: improving the disk efficiency of I/O-intensive multithreaded codes
Conference
·
OSTI ID:1009542
- Los Alamos National Laboratory
- WAYNE STATE UNIV.
Challenged by serious power and thermal constraints, and limited by available instruction-level parallelism, processor designs have evolved to multi-core architectures. These architectures, many augmented with native simultaneous multithreading, are driving software developers to use multithreaded programs to exploit thread-level parallelism. While multithreading is well-known to introduce concerns of data dependency and CPU load balance, less known is that the uncertainty of relative progress of thread execution can cause patterns of I/O requests, issued by different threads, to be effectively random and so significantly degrade hard-disk efficiency. This effect can severely offset the performance gains from parallel execution, especially for I/O-intensive programs. Retaining the benefits of multithreading while not reducing I/O efficiency is an urgent and challenging problem. We propose a user-level scheme, iHarmonizer, to streamline the servicing of I/O requests from multiple threads in OpenMP programs. Specifically, we use the compiler to insert code into OpenMP programs so that data usage can be transmitted at run time to a supporting run-time library; this library in turn prefetches data in a disk-friendly way and coordinates threads execution according to the availability of their requested data. Transparently to the programmer, iHarmonizer makes a multithreaded program I/O efficient while maintaining the benefits of parallelism. Our experiments show that iHarmonizer can significantly speed up the execution of a representative set of I/O-intensive scientific benchmarks.
- Research Organization:
- Los Alamos National Laboratory (LANL)
- Sponsoring Organization:
- DOE
- DOE Contract Number:
- AC52-06NA25396
- OSTI ID:
- 1009542
- Report Number(s):
- LA-UR-10-02602; LA-UR-10-2602
- Country of Publication:
- United States
- Language:
- English
Similar Records
A study of the Earth-Manna multithreaded system
Tail queues: A multi-threaded matching architecture
Multithreaded parallelization of the energy and analytic gradient in the fragment molecular orbital method
Journal Article
·
Thu Aug 01 00:00:00 EDT 1996
· International Journal of Parallel Programming
·
OSTI ID:441127
Tail queues: A multi-threaded matching architecture
Journal Article
·
Tue Feb 05 19:00:00 EST 2019
· Concurrency and Computation. Practice and Experience
·
OSTI ID:1496973
Multithreaded parallelization of the energy and analytic gradient in the fragment molecular orbital method
Journal Article
·
Thu Apr 25 20:00:00 EDT 2019
· International Journal of Quantum Chemistry
·
OSTI ID:1529983