Optimisation

Richard Evans gave an introduction to optimising your code, showing us some tips and tricks to help the compiler generate optimal code, and ultimately give us our simulation results faster.

Compilers

We often treat compilers as a bit of a black-box, without really understanding what it is they are doing. Today, I will take a brief tour through the different parts of a compiler to hopefully demystify them somewhat. [Read More]

What is a CPU?

This week, Phil Hasnip gave us a guided tour of a modern CPU, explaining how the different pieces, from ALU to pipelines work together to crunch numbers and show us pictures of cats, instantly.

Documentation

Helping future you

It happens to the best of us – you come across some incomprehensible code and wonder “who on earth wrote this?” only to discover it was you, a mere six months ago. Writing documentation is one of those tasks that often feels like a bit of a chore, but is... [Read More]

Tests and testing

Testing scientific codes - the basics

Along with version control, tests are essential to good practice for developing software. Having tests makes it easier to reason about changes, and ensure trust in the outputs of your code. And if you can’t trust your code, you can’t trust the papers written using the results… [Read More]
Tags: testing basics