Software development

MPI: sending and receiving in multi-threaded MPI implementations

Author: Daniel Holmes
Posted: 5 Jul 2013 | 16:06

Have you ever wanted to send a message using MPI to a specific thread in a multi-threaded MPI process? With the current MPI Standard, there is no way to identify one thread from another. The whole MPI process has a single rank in each communicator.

CP2K-UK: Now recruiting!

Author: Iain Bethune
Posted: 20 Jun 2013 | 13:48

'CP2K-UK' is a new project starting shortly at EPCC, aiming to nurture the growth of a self-sustaining user and developer community around the CP2K materials science code here in the UK. I have been working on CP2K for nearly 5 years now thanks to a series of HECToR dCSE and PRACE projects, so it is great to get a chance to work on some of the more fundamental issues around usability and sustainability of the code, thanks to success in the EPSRC 'Software for the Future' call.

Making waves: TPLS code released as Open Source

Author: Iain Bethune
Posted: 10 Jun 2013 | 12:26

TPLS (Two-Phase Level Set) is a Computational Fluid Dynamics code developed by Dr Prash Valluri of the University of Edinburgh's School of Engineering and Dr Lennon Ó Náraigh of University College Dublin. It simulates the interface between two fluid phases, a phenomenon with a number of industrial applications including oil and gas hydrate transport, cleaning processes, distillation/absorption, and evaporative cooling of microelectronics.

Changing technology – thinking about digital preservation

Author: Alistair Grant
Posted: 7 May 2013 | 13:52

How do we deal with technology change? Ever thought about accessing the stuff you did twenty years ago? What’s that? You are having a hard time getting a floppy disk drive? Maybe the data format is unreadable or the media has been damaged? 8-inch, 5,25-inch, and 3,5-inch floppy disks: Public Domain 7 June 2009: George Chernilevsky

This is a problem that will continue to face us in many fields: how do you ensure that today’s data is still accessible in twenty or even fifty years' time? For a lot of areas, maybe we do not want to bother, it's the here and now that counts.

Opening OpenACC

Author: Ruyman Reyes Castro
Posted: 19 Apr 2013 | 10:57

Programmability of GPUs (or accelerators in general) has improved since the days of the OpenGL shaders. First CUDA, and OpenCL later, have evolved to offer a reasonable way of programming efficient algorithms onto GPUs. However, despite this improvement, there is still a lot of effort involved in the development of code for accelerators. This is inevitable sometimes: if you have a particular algorithm and you want to have the maximum performance possible for a particular accelerator architecture, and you have the time to do it, you can immerse yourself in the marvellous world of CUDA/OpenCL low-level optimisation and stop reading. If time is critical for you, as it is for me, then you will love the latest advance in accelerator programmability: OpenACC.