I work on the software for finding exploding stars in the Gaia data. There are a lot of data (like 100 million measurements each day) and it takes a lot of computing power to do it. Modern computers have a lot of not-very-fast processor-cores, so to go fast the software has to assign parts of the problem to each of these cores, and do those parts at the same time (“in parallel”).
There are many ways to make a software “multi-threaded” so that it can use a lot of CPU cores at once. Most of them are horribly complicated; they make the software hard to understand and to develop. Some of these approaches make the software go wrong in weird ways, so that wrong answers come out. I was able to select a threading approach that was (fairly) simple, easy to code and reliable, so that we could trust the answers.
I didn’t invent this threading method. I just picked the one that worked best. Much of engineering is knowing how best to use other people’s inventions.
It’s not exactly an engineering problem but more so a physics problem. Over the course of my academic career, the thing I am most proud of was deriving a formula which described how gravity worked around a spinning black hole. This took me around 50 days and took 45 sheets of A3 paper to fully complete the calculation. Although this was a problem that was previously solved one way, during my dissertation I attempted to solve it a different way (which may or may not be more efficient… we still don’t know!). It was my first “proper” research level calculation I’ve ever worked through!
Probably for the James Webb Telescope. Part of the instrument was a shoe-box sized structure which contained about 300 very accurate tiny mirrors, had extremely precise mechanisms AND had to be tested to prove that it could survive a rocket launch. Fingers crossed for the real launch in 2019!
Comments