Michael Mascagni

Learn More
In this article we present background, rationale, and a description of the Scalable Parallel Random Number Generators (SPRNG) library. We begin by presenting some methods for parallel pseudorandom number generation. We will focus on methods based on parameterization, meaning that we will not consider splitting methods such as the leap-frog or blocking(More)
High performance computing on a large-scale computational grid is complicated by the heterogeneous computational capabilities of each node, node unavailability, and unreliable network connectivity. Replicating computation on multiple nodes can significantly improve performance by reducing task completion time on a grid’s dynamic environment. We develop an(More)
Linear congruential generators (LCGs) remain the most popular method of pseudorandom number generation on digital computers. Ease of implementation has favored implementing LCGs with power-of-two moduli. However, prime modulus LCGs are superior in quality to power-of-two modulus LCGs, and the use of a Mersenne prime minimizes the computational cost of(More)
We study the suitability of the additive lagged-Fibonacci pseudorandom number generator for parallel computation. This generator has relatively short period with respect to the size of its seed. However, the short period is more than made up for with the huge number of full-period cycles it contains. These diierent full-period cycles are called equivalence(More)
Monte Carlo computations are commonly considered to be naturally parallel. However, one needs to exercise care in parallelizing the underlying pseudorandom number generator (PRNG) to avoid correlations within, and between, random number streams. PRNGs are normally parallelized using one of the following two paradigms: (i) cycle division and (ii)(More)
In this paper we describe Monte Carlo methods for solving some boundary-value problems for elliptic partial differential equations arising in the computation of physical properties of large molecules. The constructed algorithms are based on walk on spheres, Green’s function first passage, walk in subdomains techniques, and finite-difference approximations(More)