  Data intensive workloads have become a popular use of HPC in recent years and
the question of how data scientists, who might not be HPC experts, can
effectively program these machines is important to address. Whilst using models
such as Partitioned Global Address Space (PGAS) is attractive from a simplicity
point of view, the abstractions that these impose upon the programmer can
impact performance. We propose an approach, type-oriented programming, where
all aspects of parallelism are encoded via types and the type system which
allows for the programmer to write simple PGAS data intensive HPC codes and
then, if they so wish, tune the fundamental aspects by modifying type
information. This paper considers the suitability of using type-oriented
programming, with the PGAS memory model, in data intensive workloads. We
compare a type-oriented implementation of the Graph500 benchmark against MPI
reference implementations both in terms of programmability and performance, and
evaluate how orienting their parallel codes around types can assist in the data
intensive HPC field.
