  Disk access latency and transfer times are often considered to have a major
and detrimental impact on the running time of software. Developers are often
advised to favour in-memory operations and minimise disk access. Furthermore,
diskless computer architectures are being studied and designed to remove this
bottleneck all together, to improve application performance in areas such as
High Performance Computing, Big Data, and Business Intelligence. In this paper
we use code inspired by real, production software, to show that in-memory
operations are not always a guarantee for high performance, and may actually
cause a considerable slow-down. We also show how small code changes can have
dramatic effects on running times. We argue that a combination of system-level
improvements and better developer awareness and coding practices are necessary
to ensure in-memory computing can achieve its full potential.
