random_openmp


random_openmp a C++ code which uses random numbers during a calculation that has been parallelized with OpenMP.

The random numbers are generated by a function which depends on a user-defined integer called SEED. When multiple OpenMP threads are involved, each thread should be assigned a different initial value for SEED, in order that the threads generate distinct streams of random numbers. This example shows one way that that can be done.

Licensing:

The information on this web page is distributed under the MIT license.

Languages:

random_openmp is available in a C version and a C++ version and a Fortran90 version.

Related Data and Programs:

random_openmp_test

openmp_test, a C++ code which uses the OpenMP application program interface for parallel computations in a shared memory environment.

Reference:

  1. Peter Arbenz, Wesley Petersen,
    Introduction to Parallel Computing - A practical guide with examples in C,
    Oxford University Press,
    ISBN: 0-19-851576-6,
    LC: QA76.58.P47.
  2. Rohit Chandra, Leonardo Dagum, Dave Kohr, Dror Maydan, Jeff McDonald, Ramesh Menon,
    Parallel Programming in OpenMP,
    Morgan Kaufmann, 2001,
    ISBN: 1-55860-671-8,
    LC: QA76.642.P32.
  3. Barbara Chapman, Gabriele Jost, Ruud vanderPas, David Kuck,
    Using OpenMP: Portable Shared Memory Parallel Processing,
    MIT Press, 2007,
    ISBN13: 978-0262533027,
    LC: QA76.642.C49.

Source Code:


Last revised on 06 April 2020.