  Marsaglia proposed recently xorshift generators as a class of very fast,
good-quality pseudorandom number generators. Subsequent analysis by Panneton
and L'Ecuyer has lowered the expectations raised by Marsaglia's paper, showing
several weaknesses of such generators, verified experimentally using the
TestU01 suite. Nonetheless, many of the weaknesses of xorshift generators fade
away if their result is scrambled by a non-linear operation (as originally
suggested by Marsaglia). In this paper we explore the space of possible
generators obtained by multiplying the result of a xorshift generator by a
suitable constant. We sample generators at 100 equispaced points of their state
space and obtain detailed statistics that lead us to choices of parameters that
improve on the current ones. We then explore for the first time the space of
high-dimensional xorshift generators, following another suggestion in
Marsaglia's paper, finding choices of parameters providing periods of length
$2^{1024} - 1$ and $2^{4096} - 1$. The resulting generators are of extremely
high quality, faster than current similar alternatives, and generate
long-period sequences passing strong statistical tests using only eight logical
operations, one addition and one multiplication by a constant.
