{"title":"Parallel Directives Evaluation in Porous Media Application: A Case Study","authors":"Natiele Lucca, C. Schepke, Gabriel Tremarin","doi":"10.1109/PDP59025.2023.00050","DOIUrl":null,"url":null,"abstract":"High-performance computing provides the acceleration of scientific applications through the use of parallelism. Applications of this type usually demand a lot of computation time for a version with a single code execution stream. The adoption of different models of parallel programming enables the development of concurrent code. In this sense, this paper evaluates parallel interfaces and their programming models. Therefore, as a case study, we evaluate a porous media application that simulates grain drying using OpenMP (loop, sections, tasks, target, and teams approach) and OpenACC programming interfaces. The results show a reduction in processing time in all test cases. The total parallel simulation time for a multicore architecture using 16 physical cores was 5.61 times less using loops, 5.96 using targets, and 7.50 using teams. Task and section directives produce around 1.20 speedup due to the limitations of concurrent task executions of the application. The reduction using a single GPU was 7.54. We also contribute with some collected traces, identifying the parallel steps and synchronization time.","PeriodicalId":153500,"journal":{"name":"2023 31st Euromicro International Conference on Parallel, Distributed and Network-Based Processing (PDP)","volume":"13 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2023 31st Euromicro International Conference on Parallel, Distributed and Network-Based Processing (PDP)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/PDP59025.2023.00050","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
High-performance computing provides the acceleration of scientific applications through the use of parallelism. Applications of this type usually demand a lot of computation time for a version with a single code execution stream. The adoption of different models of parallel programming enables the development of concurrent code. In this sense, this paper evaluates parallel interfaces and their programming models. Therefore, as a case study, we evaluate a porous media application that simulates grain drying using OpenMP (loop, sections, tasks, target, and teams approach) and OpenACC programming interfaces. The results show a reduction in processing time in all test cases. The total parallel simulation time for a multicore architecture using 16 physical cores was 5.61 times less using loops, 5.96 using targets, and 7.50 using teams. Task and section directives produce around 1.20 speedup due to the limitations of concurrent task executions of the application. The reduction using a single GPU was 7.54. We also contribute with some collected traces, identifying the parallel steps and synchronization time.