Loading…

Parallel Hybrid Testing Techniques for the Dual-Programming Models-Based Programs

The importance of high-performance computing is increasing, and Exascale systems will be feasible in a few years. These systems can be achieved by enhancing the hardware’s ability as well as the parallelism in the application by integrating more than one programming model. One of the dual-programmin...

Full description

Saved in:
Bibliographic Details
Published in:Symmetry (Basel) 2020-09, Vol.12 (9), p.1555
Main Authors: Alghamdi, Ahmed Mohammed, Eassa, Fathy Elbouraey, Khamakhem, Maher Ali, AL-Ghamdi, Abdullah Saad AL-Malaise, Alfakeeh, Ahmed S., Alshahrani, Abdullah S., Alarood, Ala A.
Format: Article
Language:English
Subjects:
Citations: Items that this one cites
Items that cite this one
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
cited_by cdi_FETCH-LOGICAL-c336t-985cff8e55402b4d0ea9b7091eb4c9f8524e900b472e18a934d95e82014dc4313
cites cdi_FETCH-LOGICAL-c336t-985cff8e55402b4d0ea9b7091eb4c9f8524e900b472e18a934d95e82014dc4313
container_end_page
container_issue 9
container_start_page 1555
container_title Symmetry (Basel)
container_volume 12
creator Alghamdi, Ahmed Mohammed
Eassa, Fathy Elbouraey
Khamakhem, Maher Ali
AL-Ghamdi, Abdullah Saad AL-Malaise
Alfakeeh, Ahmed S.
Alshahrani, Abdullah S.
Alarood, Ala A.
description The importance of high-performance computing is increasing, and Exascale systems will be feasible in a few years. These systems can be achieved by enhancing the hardware’s ability as well as the parallelism in the application by integrating more than one programming model. One of the dual-programming model combinations is Message Passing Interface (MPI) + OpenACC, which has several features including increased system parallelism, support for different platforms with more performance, better productivity, and less programming effort. Several testing tools target parallel applications built by using programming models, but more effort is needed, especially for high-level Graphics Processing Unit (GPU)-related programming models. Owing to the integration of different programming models, errors will be more frequent and unpredictable. Testing techniques are required to detect these errors, especially runtime errors resulting from the integration of MPI and OpenACC; studying their behavior is also important, especially some OpenACC runtime errors that cannot be detected by any compiler. In this paper, we enhance the capabilities of ACC_TEST to test the programs built by using the dual-programming models MPI + OpenACC and detect their related errors. Our tool integrated both static and dynamic testing techniques to create ACC_TEST and allowed us to benefit from the advantages of both techniques reducing overheads, enhancing system execution time, and covering a wide range of errors. Finally, ACC_TEST is a parallel testing tool that creates testing threads based on the number of application threads for detecting runtime errors.
doi_str_mv 10.3390/sym12091555
format article
fullrecord <record><control><sourceid>doaj_cross</sourceid><recordid>TN_cdi_doaj_primary_oai_doaj_org_article_357eb376d21d4cdabd7ec942dd5230ee</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><doaj_id>oai_doaj_org_article_357eb376d21d4cdabd7ec942dd5230ee</doaj_id><sourcerecordid>oai_doaj_org_article_357eb376d21d4cdabd7ec942dd5230ee</sourcerecordid><originalsourceid>FETCH-LOGICAL-c336t-985cff8e55402b4d0ea9b7091eb4c9f8524e900b472e18a934d95e82014dc4313</originalsourceid><addsrcrecordid>eNpNkEtPAkEQhCdGEwly8g_s3az2vNido-IDEoyY4Hkyj15YMsvqzHLg37sIMfSlOt2VL5Ui5JbCPecKHtK-oQwUlVJekAGDguelUuLybL8mo5Q20I8EKcYwIJ8LE00IGLLp3sbaZ0tMXb1d9erW2_pnhymr2ph1a8yedybki9iuommag-e99RhS_mQS-uz0SDfkqjIh4eikQ_L1-rKcTPP5x9ts8jjPHefjLleldFVVopQCmBUe0Chb9PHRCqeqUjKBCsCKgiEtjeLCK4klAyq8E5zyIZkdub41G_0d68bEvW5Nrf8ObVxpE7vaBdRcFmh5MfaMeuG8sb5ApwTzXjIOiD3r7shysU0pYvXPo6AP5eqzcvkvj7Zsjg</addsrcrecordid><sourcetype>Open Website</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype></control><display><type>article</type><title>Parallel Hybrid Testing Techniques for the Dual-Programming Models-Based Programs</title><source>Publicly Available Content Database</source><creator>Alghamdi, Ahmed Mohammed ; Eassa, Fathy Elbouraey ; Khamakhem, Maher Ali ; AL-Ghamdi, Abdullah Saad AL-Malaise ; Alfakeeh, Ahmed S. ; Alshahrani, Abdullah S. ; Alarood, Ala A.</creator><creatorcontrib>Alghamdi, Ahmed Mohammed ; Eassa, Fathy Elbouraey ; Khamakhem, Maher Ali ; AL-Ghamdi, Abdullah Saad AL-Malaise ; Alfakeeh, Ahmed S. ; Alshahrani, Abdullah S. ; Alarood, Ala A.</creatorcontrib><description>The importance of high-performance computing is increasing, and Exascale systems will be feasible in a few years. These systems can be achieved by enhancing the hardware’s ability as well as the parallelism in the application by integrating more than one programming model. One of the dual-programming model combinations is Message Passing Interface (MPI) + OpenACC, which has several features including increased system parallelism, support for different platforms with more performance, better productivity, and less programming effort. Several testing tools target parallel applications built by using programming models, but more effort is needed, especially for high-level Graphics Processing Unit (GPU)-related programming models. Owing to the integration of different programming models, errors will be more frequent and unpredictable. Testing techniques are required to detect these errors, especially runtime errors resulting from the integration of MPI and OpenACC; studying their behavior is also important, especially some OpenACC runtime errors that cannot be detected by any compiler. In this paper, we enhance the capabilities of ACC_TEST to test the programs built by using the dual-programming models MPI + OpenACC and detect their related errors. Our tool integrated both static and dynamic testing techniques to create ACC_TEST and allowed us to benefit from the advantages of both techniques reducing overheads, enhancing system execution time, and covering a wide range of errors. Finally, ACC_TEST is a parallel testing tool that creates testing threads based on the number of application threads for detecting runtime errors.</description><identifier>ISSN: 2073-8994</identifier><identifier>EISSN: 2073-8994</identifier><identifier>DOI: 10.3390/sym12091555</identifier><language>eng</language><publisher>MDPI AG</publisher><subject>ACC_TEST ; dual-programming model ; Exascale systems ; hybrid-testing tool ; MPI + OpenACC</subject><ispartof>Symmetry (Basel), 2020-09, Vol.12 (9), p.1555</ispartof><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c336t-985cff8e55402b4d0ea9b7091eb4c9f8524e900b472e18a934d95e82014dc4313</citedby><cites>FETCH-LOGICAL-c336t-985cff8e55402b4d0ea9b7091eb4c9f8524e900b472e18a934d95e82014dc4313</cites><orcidid>0000-0003-1772-2782 ; 0000-0001-7644-5039 ; 0000-0001-6099-1027 ; 0000-0001-9259-4536</orcidid></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,780,784,27924,27925</link.rule.ids></links><search><creatorcontrib>Alghamdi, Ahmed Mohammed</creatorcontrib><creatorcontrib>Eassa, Fathy Elbouraey</creatorcontrib><creatorcontrib>Khamakhem, Maher Ali</creatorcontrib><creatorcontrib>AL-Ghamdi, Abdullah Saad AL-Malaise</creatorcontrib><creatorcontrib>Alfakeeh, Ahmed S.</creatorcontrib><creatorcontrib>Alshahrani, Abdullah S.</creatorcontrib><creatorcontrib>Alarood, Ala A.</creatorcontrib><title>Parallel Hybrid Testing Techniques for the Dual-Programming Models-Based Programs</title><title>Symmetry (Basel)</title><description>The importance of high-performance computing is increasing, and Exascale systems will be feasible in a few years. These systems can be achieved by enhancing the hardware’s ability as well as the parallelism in the application by integrating more than one programming model. One of the dual-programming model combinations is Message Passing Interface (MPI) + OpenACC, which has several features including increased system parallelism, support for different platforms with more performance, better productivity, and less programming effort. Several testing tools target parallel applications built by using programming models, but more effort is needed, especially for high-level Graphics Processing Unit (GPU)-related programming models. Owing to the integration of different programming models, errors will be more frequent and unpredictable. Testing techniques are required to detect these errors, especially runtime errors resulting from the integration of MPI and OpenACC; studying their behavior is also important, especially some OpenACC runtime errors that cannot be detected by any compiler. In this paper, we enhance the capabilities of ACC_TEST to test the programs built by using the dual-programming models MPI + OpenACC and detect their related errors. Our tool integrated both static and dynamic testing techniques to create ACC_TEST and allowed us to benefit from the advantages of both techniques reducing overheads, enhancing system execution time, and covering a wide range of errors. Finally, ACC_TEST is a parallel testing tool that creates testing threads based on the number of application threads for detecting runtime errors.</description><subject>ACC_TEST</subject><subject>dual-programming model</subject><subject>Exascale systems</subject><subject>hybrid-testing tool</subject><subject>MPI + OpenACC</subject><issn>2073-8994</issn><issn>2073-8994</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2020</creationdate><recordtype>article</recordtype><sourceid>DOA</sourceid><recordid>eNpNkEtPAkEQhCdGEwly8g_s3az2vNido-IDEoyY4Hkyj15YMsvqzHLg37sIMfSlOt2VL5Ui5JbCPecKHtK-oQwUlVJekAGDguelUuLybL8mo5Q20I8EKcYwIJ8LE00IGLLp3sbaZ0tMXb1d9erW2_pnhymr2ph1a8yedybki9iuommag-e99RhS_mQS-uz0SDfkqjIh4eikQ_L1-rKcTPP5x9ts8jjPHefjLleldFVVopQCmBUe0Chb9PHRCqeqUjKBCsCKgiEtjeLCK4klAyq8E5zyIZkdub41G_0d68bEvW5Nrf8ObVxpE7vaBdRcFmh5MfaMeuG8sb5ApwTzXjIOiD3r7shysU0pYvXPo6AP5eqzcvkvj7Zsjg</recordid><startdate>20200901</startdate><enddate>20200901</enddate><creator>Alghamdi, Ahmed Mohammed</creator><creator>Eassa, Fathy Elbouraey</creator><creator>Khamakhem, Maher Ali</creator><creator>AL-Ghamdi, Abdullah Saad AL-Malaise</creator><creator>Alfakeeh, Ahmed S.</creator><creator>Alshahrani, Abdullah S.</creator><creator>Alarood, Ala A.</creator><general>MDPI AG</general><scope>AAYXX</scope><scope>CITATION</scope><scope>DOA</scope><orcidid>https://orcid.org/0000-0003-1772-2782</orcidid><orcidid>https://orcid.org/0000-0001-7644-5039</orcidid><orcidid>https://orcid.org/0000-0001-6099-1027</orcidid><orcidid>https://orcid.org/0000-0001-9259-4536</orcidid></search><sort><creationdate>20200901</creationdate><title>Parallel Hybrid Testing Techniques for the Dual-Programming Models-Based Programs</title><author>Alghamdi, Ahmed Mohammed ; Eassa, Fathy Elbouraey ; Khamakhem, Maher Ali ; AL-Ghamdi, Abdullah Saad AL-Malaise ; Alfakeeh, Ahmed S. ; Alshahrani, Abdullah S. ; Alarood, Ala A.</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c336t-985cff8e55402b4d0ea9b7091eb4c9f8524e900b472e18a934d95e82014dc4313</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2020</creationdate><topic>ACC_TEST</topic><topic>dual-programming model</topic><topic>Exascale systems</topic><topic>hybrid-testing tool</topic><topic>MPI + OpenACC</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Alghamdi, Ahmed Mohammed</creatorcontrib><creatorcontrib>Eassa, Fathy Elbouraey</creatorcontrib><creatorcontrib>Khamakhem, Maher Ali</creatorcontrib><creatorcontrib>AL-Ghamdi, Abdullah Saad AL-Malaise</creatorcontrib><creatorcontrib>Alfakeeh, Ahmed S.</creatorcontrib><creatorcontrib>Alshahrani, Abdullah S.</creatorcontrib><creatorcontrib>Alarood, Ala A.</creatorcontrib><collection>CrossRef</collection><collection>DOAJ Directory of Open Access Journals</collection><jtitle>Symmetry (Basel)</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Alghamdi, Ahmed Mohammed</au><au>Eassa, Fathy Elbouraey</au><au>Khamakhem, Maher Ali</au><au>AL-Ghamdi, Abdullah Saad AL-Malaise</au><au>Alfakeeh, Ahmed S.</au><au>Alshahrani, Abdullah S.</au><au>Alarood, Ala A.</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Parallel Hybrid Testing Techniques for the Dual-Programming Models-Based Programs</atitle><jtitle>Symmetry (Basel)</jtitle><date>2020-09-01</date><risdate>2020</risdate><volume>12</volume><issue>9</issue><spage>1555</spage><pages>1555-</pages><issn>2073-8994</issn><eissn>2073-8994</eissn><abstract>The importance of high-performance computing is increasing, and Exascale systems will be feasible in a few years. These systems can be achieved by enhancing the hardware’s ability as well as the parallelism in the application by integrating more than one programming model. One of the dual-programming model combinations is Message Passing Interface (MPI) + OpenACC, which has several features including increased system parallelism, support for different platforms with more performance, better productivity, and less programming effort. Several testing tools target parallel applications built by using programming models, but more effort is needed, especially for high-level Graphics Processing Unit (GPU)-related programming models. Owing to the integration of different programming models, errors will be more frequent and unpredictable. Testing techniques are required to detect these errors, especially runtime errors resulting from the integration of MPI and OpenACC; studying their behavior is also important, especially some OpenACC runtime errors that cannot be detected by any compiler. In this paper, we enhance the capabilities of ACC_TEST to test the programs built by using the dual-programming models MPI + OpenACC and detect their related errors. Our tool integrated both static and dynamic testing techniques to create ACC_TEST and allowed us to benefit from the advantages of both techniques reducing overheads, enhancing system execution time, and covering a wide range of errors. Finally, ACC_TEST is a parallel testing tool that creates testing threads based on the number of application threads for detecting runtime errors.</abstract><pub>MDPI AG</pub><doi>10.3390/sym12091555</doi><orcidid>https://orcid.org/0000-0003-1772-2782</orcidid><orcidid>https://orcid.org/0000-0001-7644-5039</orcidid><orcidid>https://orcid.org/0000-0001-6099-1027</orcidid><orcidid>https://orcid.org/0000-0001-9259-4536</orcidid><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier ISSN: 2073-8994
ispartof Symmetry (Basel), 2020-09, Vol.12 (9), p.1555
issn 2073-8994
2073-8994
language eng
recordid cdi_doaj_primary_oai_doaj_org_article_357eb376d21d4cdabd7ec942dd5230ee
source Publicly Available Content Database
subjects ACC_TEST
dual-programming model
Exascale systems
hybrid-testing tool
MPI + OpenACC
title Parallel Hybrid Testing Techniques for the Dual-Programming Models-Based Programs
url http://sfxeu10.hosted.exlibrisgroup.com/loughborough?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-07T10%3A44%3A33IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-doaj_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Parallel%20Hybrid%20Testing%20Techniques%20for%20the%20Dual-Programming%20Models-Based%20Programs&rft.jtitle=Symmetry%20(Basel)&rft.au=Alghamdi,%20Ahmed%20Mohammed&rft.date=2020-09-01&rft.volume=12&rft.issue=9&rft.spage=1555&rft.pages=1555-&rft.issn=2073-8994&rft.eissn=2073-8994&rft_id=info:doi/10.3390/sym12091555&rft_dat=%3Cdoaj_cross%3Eoai_doaj_org_article_357eb376d21d4cdabd7ec942dd5230ee%3C/doaj_cross%3E%3Cgrp_id%3Ecdi_FETCH-LOGICAL-c336t-985cff8e55402b4d0ea9b7091eb4c9f8524e900b472e18a934d95e82014dc4313%3C/grp_id%3E%3Coa%3E%3C/oa%3E%3Curl%3E%3C/url%3E&rft_id=info:oai/&rft_id=info:pmid/&rfr_iscdi=true