Critical Section Overhead Reduction for OpenMP Program by Nesting a Serial Loop to Increase Task Granularity of Parallel Loop

This paper presents a simple method to reduce performance loss due to a parallel program's massive critical sections of parallel numerical integration. The method transforms a fine-grain parallel loop into a coarse grain parallel loop that nests a sequential loop. The coarse grain parallel loop...

Full description

Bibliographic Details
Main Authors: Adnan Adnan, Intan Sari Areni, Zulkifli Tahir
Format: Article
Language:English
Published: Ikatan Ahli Informatika Indonesia 2022-04-01
Series:Jurnal RESTI (Rekayasa Sistem dan Teknologi Informasi)
Subjects:
Online Access:http://jurnal.iaii.or.id/index.php/RESTI/article/view/3848
_version_ 1797334112334249984
author Adnan Adnan
Intan Sari Areni
Zulkifli Tahir
author_facet Adnan Adnan
Intan Sari Areni
Zulkifli Tahir
author_sort Adnan Adnan
collection DOAJ
description This paper presents a simple method to reduce performance loss due to a parallel program's massive critical sections of parallel numerical integration. The method transforms a fine-grain parallel loop into a coarse grain parallel loop that nests a sequential loop. The coarse grain parallel loop is by nesting a loop block to make task granularities coarser than that naive one. In addition to the overhead reduction, the method makes the parallel work fraction significantly more significant than the serial fraction. As a result, nesting a serial loop within a parallel loop improves the parallel program's performance. Compared to the naïve method, which does not scale the performance of a parallel program of numerical integration, the nesting serial loop method scales a parallel program up to 3.26 times a fold relative to its sequential program on a quad-core processor. This result shows that the proposed method makes the parallel program much faster than the naïve method.
first_indexed 2024-03-08T08:15:57Z
format Article
id doaj.art-f88ab081cbc24d53aabe9ae0f09be084
institution Directory Open Access Journal
issn 2580-0760
language English
last_indexed 2024-03-08T08:15:57Z
publishDate 2022-04-01
publisher Ikatan Ahli Informatika Indonesia
record_format Article
series Jurnal RESTI (Rekayasa Sistem dan Teknologi Informasi)
spelling doaj.art-f88ab081cbc24d53aabe9ae0f09be0842024-02-02T07:42:52ZengIkatan Ahli Informatika IndonesiaJurnal RESTI (Rekayasa Sistem dan Teknologi Informasi)2580-07602022-04-016220721210.29207/resti.v6i2.38483848Critical Section Overhead Reduction for OpenMP Program by Nesting a Serial Loop to Increase Task Granularity of Parallel LoopAdnan Adnan0Intan Sari Areni1Zulkifli Tahir2Universitas HasanuddinUniversitas HasanuddinUniversitas HasanuddinThis paper presents a simple method to reduce performance loss due to a parallel program's massive critical sections of parallel numerical integration. The method transforms a fine-grain parallel loop into a coarse grain parallel loop that nests a sequential loop. The coarse grain parallel loop is by nesting a loop block to make task granularities coarser than that naive one. In addition to the overhead reduction, the method makes the parallel work fraction significantly more significant than the serial fraction. As a result, nesting a serial loop within a parallel loop improves the parallel program's performance. Compared to the naïve method, which does not scale the performance of a parallel program of numerical integration, the nesting serial loop method scales a parallel program up to 3.26 times a fold relative to its sequential program on a quad-core processor. This result shows that the proposed method makes the parallel program much faster than the naïve method.http://jurnal.iaii.or.id/index.php/RESTI/article/view/3848critical section, overhead reduction, openmp, task granularity, parallel loop
spellingShingle Adnan Adnan
Intan Sari Areni
Zulkifli Tahir
Critical Section Overhead Reduction for OpenMP Program by Nesting a Serial Loop to Increase Task Granularity of Parallel Loop
Jurnal RESTI (Rekayasa Sistem dan Teknologi Informasi)
critical section, overhead reduction, openmp, task granularity, parallel loop
title Critical Section Overhead Reduction for OpenMP Program by Nesting a Serial Loop to Increase Task Granularity of Parallel Loop
title_full Critical Section Overhead Reduction for OpenMP Program by Nesting a Serial Loop to Increase Task Granularity of Parallel Loop
title_fullStr Critical Section Overhead Reduction for OpenMP Program by Nesting a Serial Loop to Increase Task Granularity of Parallel Loop
title_full_unstemmed Critical Section Overhead Reduction for OpenMP Program by Nesting a Serial Loop to Increase Task Granularity of Parallel Loop
title_short Critical Section Overhead Reduction for OpenMP Program by Nesting a Serial Loop to Increase Task Granularity of Parallel Loop
title_sort critical section overhead reduction for openmp program by nesting a serial loop to increase task granularity of parallel loop
topic critical section, overhead reduction, openmp, task granularity, parallel loop
url http://jurnal.iaii.or.id/index.php/RESTI/article/view/3848
work_keys_str_mv AT adnanadnan criticalsectionoverheadreductionforopenmpprogrambynestingaseriallooptoincreasetaskgranularityofparallelloop
AT intansariareni criticalsectionoverheadreductionforopenmpprogrambynestingaseriallooptoincreasetaskgranularityofparallelloop
AT zulkiflitahir criticalsectionoverheadreductionforopenmpprogrambynestingaseriallooptoincreasetaskgranularityofparallelloop