For many decades, quantum chemical method development has been dominated by
algorithms which involve increasingly complex series of tensor contractions
over one-electron orbital spaces. Procedures for their derivation and
implementation have evolved to require the minimum amount of logic and rely
heavily on computationally efficient library-based matrix algebra and optimized
paging schemes. In this regard, the recent development of exact stochastic
quantum chemical algorithms to reduce computational scaling and memory overhead
requires a contrasting algorithmic philosophy, but one which when implemented
efficiently can often achieve higher accuracy/cost ratios with small random
errors. Additionally, they can exploit the continuing trend for massive
parallelization which hinders the progress of deterministic high-level quantum
chemical algorithms. In the Quantum Monte Carlo community, stochastic
algorithms are ubiquitous but the discrete Fock space of quantum chemical
methods is often unfamiliar, and the methods introduce new concepts required
for algorithmic efficiency. In this paper, we explore these concepts and detail
an algorithm used for Full Configuration Interaction Quantum Monte Carlo
(FCIQMC), which is implemented and available in MOLPRO and as a standalone
code, and is designed for high-level parallelism and linear-scaling with walker
number. Many of the algorithms are also in use in, or can be transferred to,
other stochastic quantum chemical methods and implementations. We apply these
algorithms to the strongly correlated Chromium dimer, to demonstrate their
efficiency and parallelism.Comment: 16 pages, 8 figure