A pthreads wrapper for fortran 2003

Publikation: Beitrag in FachzeitschriftForschungsartikelBeigetragenBegutachtung

Beitragende

Abstract

With the advent of multicore processors, numerical and mathematical software relies on parallelism in order to benefit from hardware performance increases. We present the design and use of a Fortran 2003 wrapper for POSIX threads, called forthreads. Forthreads is complete in the sense that is provides native Fortran 2003 interfaces to all pthreads routines where possible. We demonstrate the use and efficiency of forthreads for SIMD parallelism and task parallelism. We present forthreads/MPI implementations that enable hybrid shared-/distributed-memory parallelism in Fortran 2003. Our benchmarks show that forthreads offers performance comparable to that of OpenMP, but better thread control and more freedom. We demonstrate the latter by presenting a multithreaded Fortran 2003 library for POSIX Internet sockets, enabling interactive numerical simulations with runtime control.

Details

OriginalspracheEnglisch
Aufsatznummer2558889
FachzeitschriftACM transactions on mathematical software
Jahrgang40
Ausgabenummer3
PublikationsstatusVeröffentlicht - Apr. 2014
Peer-Review-StatusJa
Extern publiziertJa

Externe IDs

ORCID /0000-0003-4414-4340/work/159608280

Schlagworte

ASJC Scopus Sachgebiete

Schlagwörter

  • Fortran, Fortran 2003, Mathematical software, Parallel particle-mesh, POSIX threads, PPM library, Pthreads, Scientific computing, Shared-memory programming