Irregular Computations in Fortran – Expression and Implementation Strategies

Modern dialects of Fortran enjoy wide use and good support on high‐performance computers as performance‐oriented programming languages. By providing the ability to express nested data parallelism, modern Fortran dialects enable irregular computations to be incorporated into existing applications wit...

Full description

Bibliographic Details
Main Authors: Jan F. Prins, Siddhartha Chatterjee, Martin Simons
Format: Article
Language:English
Published: Hindawi Limited 1999-01-01
Series:Scientific Programming
Online Access:http://dx.doi.org/10.1155/1999/607659
id doaj-b47d72c2164e4172996d4f728aeed359
record_format Article
spelling doaj-b47d72c2164e4172996d4f728aeed3592021-07-02T01:31:27ZengHindawi LimitedScientific Programming1058-92441875-919X1999-01-0173-431332610.1155/1999/607659Irregular Computations in Fortran – Expression and Implementation StrategiesJan F. Prins0Siddhartha Chatterjee1Martin Simons2Department of Computer Science, The University of North Carolina, Chapel Hill, NC 27599‐3175, USADepartment of Computer Science, The University of North Carolina, Chapel Hill, NC 27599‐3175, USADepartment of Computer Science, The University of North Carolina, Chapel Hill, NC 27599‐3175, USAModern dialects of Fortran enjoy wide use and good support on high‐performance computers as performance‐oriented programming languages. By providing the ability to express nested data parallelism, modern Fortran dialects enable irregular computations to be incorporated into existing applications with minimal rewriting and without sacrificing performance within the regular portions of the application. Since performance of nested data‐parallel computation is unpredictable and often poor using current compilers, we investigate threading and flattening, two source‐to‐source transformation techniques that can improve performance and performance stability. For experimental validation of these techniques, we explore nested data‐parallel implementations of the sparse matrix‐vector product and the Barnes–Hut n‐body algorithm by hand‐coding thread‐based (using OpenMP directives) and flattening‐based versions of these algorithms and evaluating their performance on an SGI Origin 2000 and an NEC SX‐4, two shared‐memory machines.http://dx.doi.org/10.1155/1999/607659
collection DOAJ
language English
format Article
sources DOAJ
author Jan F. Prins
Siddhartha Chatterjee
Martin Simons
spellingShingle Jan F. Prins
Siddhartha Chatterjee
Martin Simons
Irregular Computations in Fortran – Expression and Implementation Strategies
Scientific Programming
author_facet Jan F. Prins
Siddhartha Chatterjee
Martin Simons
author_sort Jan F. Prins
title Irregular Computations in Fortran – Expression and Implementation Strategies
title_short Irregular Computations in Fortran – Expression and Implementation Strategies
title_full Irregular Computations in Fortran – Expression and Implementation Strategies
title_fullStr Irregular Computations in Fortran – Expression and Implementation Strategies
title_full_unstemmed Irregular Computations in Fortran – Expression and Implementation Strategies
title_sort irregular computations in fortran – expression and implementation strategies
publisher Hindawi Limited
series Scientific Programming
issn 1058-9244
1875-919X
publishDate 1999-01-01
description Modern dialects of Fortran enjoy wide use and good support on high‐performance computers as performance‐oriented programming languages. By providing the ability to express nested data parallelism, modern Fortran dialects enable irregular computations to be incorporated into existing applications with minimal rewriting and without sacrificing performance within the regular portions of the application. Since performance of nested data‐parallel computation is unpredictable and often poor using current compilers, we investigate threading and flattening, two source‐to‐source transformation techniques that can improve performance and performance stability. For experimental validation of these techniques, we explore nested data‐parallel implementations of the sparse matrix‐vector product and the Barnes–Hut n‐body algorithm by hand‐coding thread‐based (using OpenMP directives) and flattening‐based versions of these algorithms and evaluating their performance on an SGI Origin 2000 and an NEC SX‐4, two shared‐memory machines.
url http://dx.doi.org/10.1155/1999/607659
work_keys_str_mv AT janfprins irregularcomputationsinfortranexpressionandimplementationstrategies
AT siddharthachatterjee irregularcomputationsinfortranexpressionandimplementationstrategies
AT martinsimons irregularcomputationsinfortranexpressionandimplementationstrategies
_version_ 1721344898495414272