Cargando…

IOPA: I/O-aware parallelism adaption for parallel programs

With the development of multi-/many-core processors, applications need to be written as parallel programs to improve execution efficiency. For data-intensive applications that use multiple threads to read/write files simultaneously, an I/O sub-system can easily become a bottleneck when too many of t...

Descripción completa

Detalles Bibliográficos
Autores principales: Liu, Tao, Liu, Yi, Qian, Chen, Qian, Depei
Formato: Online Artículo Texto
Lenguaje:English
Publicado: Public Library of Science 2017
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5344351/
https://www.ncbi.nlm.nih.gov/pubmed/28278236
http://dx.doi.org/10.1371/journal.pone.0173038
_version_ 1782513523025248256
author Liu, Tao
Liu, Yi
Qian, Chen
Qian, Depei
author_facet Liu, Tao
Liu, Yi
Qian, Chen
Qian, Depei
author_sort Liu, Tao
collection PubMed
description With the development of multi-/many-core processors, applications need to be written as parallel programs to improve execution efficiency. For data-intensive applications that use multiple threads to read/write files simultaneously, an I/O sub-system can easily become a bottleneck when too many of these types of threads exist; on the contrary, too few threads will cause insufficient resource utilization and hurt performance. Therefore, programmers must pay much attention to parallelism control to find the appropriate number of I/O threads for an application. This paper proposes a parallelism control mechanism named IOPA that can adjust the parallelism of applications to adapt to the I/O capability of a system and balance computing resources and I/O bandwidth. The programming interface of IOPA is also provided to programmers to simplify parallel programming. IOPA is evaluated using multiple applications with both solid state and hard disk drives. The results show that the parallel applications using IOPA can achieve higher efficiency than those with a fixed number of threads.
format Online
Article
Text
id pubmed-5344351
institution National Center for Biotechnology Information
language English
publishDate 2017
publisher Public Library of Science
record_format MEDLINE/PubMed
spelling pubmed-53443512017-03-29 IOPA: I/O-aware parallelism adaption for parallel programs Liu, Tao Liu, Yi Qian, Chen Qian, Depei PLoS One Research Article With the development of multi-/many-core processors, applications need to be written as parallel programs to improve execution efficiency. For data-intensive applications that use multiple threads to read/write files simultaneously, an I/O sub-system can easily become a bottleneck when too many of these types of threads exist; on the contrary, too few threads will cause insufficient resource utilization and hurt performance. Therefore, programmers must pay much attention to parallelism control to find the appropriate number of I/O threads for an application. This paper proposes a parallelism control mechanism named IOPA that can adjust the parallelism of applications to adapt to the I/O capability of a system and balance computing resources and I/O bandwidth. The programming interface of IOPA is also provided to programmers to simplify parallel programming. IOPA is evaluated using multiple applications with both solid state and hard disk drives. The results show that the parallel applications using IOPA can achieve higher efficiency than those with a fixed number of threads. Public Library of Science 2017-03-09 /pmc/articles/PMC5344351/ /pubmed/28278236 http://dx.doi.org/10.1371/journal.pone.0173038 Text en © 2017 Liu et al http://creativecommons.org/licenses/by/4.0/ This is an open access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0/) , which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.
spellingShingle Research Article
Liu, Tao
Liu, Yi
Qian, Chen
Qian, Depei
IOPA: I/O-aware parallelism adaption for parallel programs
title IOPA: I/O-aware parallelism adaption for parallel programs
title_full IOPA: I/O-aware parallelism adaption for parallel programs
title_fullStr IOPA: I/O-aware parallelism adaption for parallel programs
title_full_unstemmed IOPA: I/O-aware parallelism adaption for parallel programs
title_short IOPA: I/O-aware parallelism adaption for parallel programs
title_sort iopa: i/o-aware parallelism adaption for parallel programs
topic Research Article
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5344351/
https://www.ncbi.nlm.nih.gov/pubmed/28278236
http://dx.doi.org/10.1371/journal.pone.0173038
work_keys_str_mv AT liutao iopaioawareparallelismadaptionforparallelprograms
AT liuyi iopaioawareparallelismadaptionforparallelprograms
AT qianchen iopaioawareparallelismadaptionforparallelprograms
AT qiandepei iopaioawareparallelismadaptionforparallelprograms