% IMPORTANT: The following is UTF-8 encoded.  This means that in the presence
% of non-ASCII characters, it will not work with BibTeX 0.99 or older.
% Instead, you should use an up-to-date BibTeX implementation like “bibtex8” or
% “biber”.

@ARTICLE{Ernstsson:910525,
      author       = {Ernstsson, August and Vandenbergen, Nicolas and Keller,
                      Jörg and Kessler, Christoph},
      title        = {{A} {D}eterministic {P}ortable {P}arallel {P}seudo-{R}andom
                      {N}umber {G}enerator for {P}attern-{B}ased {P}rogramming of
                      {H}eterogeneous {P}arallel {S}ystems},
      journal      = {International journal of parallel programming},
      volume       = {50},
      number       = {3-4},
      issn         = {0091-7036},
      address      = {Dordrecht [u.a.]},
      publisher    = {Springer Science + Business Media B.V.},
      reportid     = {FZJ-2022-03907},
      pages        = {319 - 340},
      year         = {2022},
      abstract     = {SkePU is a pattern-based high-level programming model for
                      transparent program execution on heterogeneous parallel
                      computing systems. A key feature of SkePU is that, in
                      general, the selection of the execution platform for a
                      skeleton-based function call need not be determined
                      statically. On single-node systems, SkePU can select among
                      CPU, multithreaded CPU, single or multi-GPU execution. Many
                      scientific applications use pseudo-random number generators
                      (PRNGs) as part of the computation. In the interest of
                      correctness and debugging, deterministic parallel execution
                      is a desirable property, which however requires a
                      deterministically parallelized pseudo-random number
                      generator. We present the API and implementation of a
                      deterministic, portable parallel PRNG extension to SkePU
                      that is scalable by design and exhibits the same behavior
                      regardless where and with how many resources it is executed.
                      We evaluate it with four probabilistic applications and show
                      that the PRNG enables scalability on both multi-core CPU and
                      GPU resources, and hence supports the universal portability
                      of SkePU code even in the presence of PRNG calls, while
                      source code complexity is reduced.},
      cin          = {JSC},
      ddc          = {004},
      cid          = {I:(DE-Juel1)JSC-20090406},
      pnm          = {5122 - Future Computing $\&$ Big Data Systems (POF4-512) /
                      EXA2PRO - Enhancing Programmability and boosting Performance
                      Portability for Exascale Computing Systems (801015)},
      pid          = {G:(DE-HGF)POF4-5122 / G:(EU-Grant)801015},
      typ          = {PUB:(DE-HGF)16},
      UT           = {WOS:000771886000001},
      doi          = {10.1007/s10766-022-00726-5},
      url          = {https://juser.fz-juelich.de/record/910525},
}