Heat-map of the power of an AND operation in a CPU with varying input values, the values resembling Sierpinksi triangles.

Steve Kerrison

Researcher, teacher, sysadmin, embedded developer, computer architect and electronics meddler.

I am Steve Kerrison, a Research Scientist in the Smart Manufacturing Group at ARTC, the Advanced Remanufacturing and Technology Centre, part of A*Star, Singapore's Agency for Science, Technology and Research. My work is to help Singapore lead the way in developing the Factories of the Future, where I focus on network infrastructure, embedded systems, and data analytics.

Previously, I was a Senior Research Associate in the Microelectronics Research Group at the University of Bristol. I was attached to the EMC2 project, working on predictable networks for mixed-criticality embedded multi-core systems, as well as the ICT-Energy coordination action, which brings together industry and academia all looking to educate for and enact a reduction in global ICT energy consumption. Here's a neat video overview of ICT-Energy.

Prior to the above, my research project was ENTRA: Whole Systems Energy Transparency. I have also directed teaching units for Bristol's MSc Computer Science degree programme, preparing and delivering upwards of twenty lectures per unit. I have a PhD in Computer Science and a 1st Class MEng in Computer Systems Engineering (Computer Science & Electronics) from the University of Bristol.

Research

In September 2015 I was awarded my PhD. My thesis is titled Energy modelling of multi-threaded, multi-core software for embedded systems. It is available online in several formats under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License:

Standard PDF
Coloured hyperlinks, 5MiB.
Print PDF
Black hyperlinks, 5MiB.
Monolithic HTML
Single embedded document, 7MiB, produced with pdf2htmlEX.
Paginated HTML
One HTML file per PDF page, 7.4MiB, produced with pdf2htmlEX.

A full list of my publications and related activities can be found on Research Gate.

The first year of my PhD took my research into a Bristol-local chip company called XMOS. The company makes innovative high performance multi-threaded & multi-core embedded processors with an instruction set that gives you direct control over many aspects of I/O, allowing you to do in software what previously required a separate ASIC, IP block or FPGA. I used their architecture as a case study for my software energy modelling techniques.

My work on EMC2 focused on SystemVerilog Assertions and Formal Verification, as well as communication scheduling. The work involves a Network-on-Chip architecture targeting a Xilinx Kintex-7 FPGA, utilising RISC V cores, in particular the PicoRV32, because a lot of them fit onto a single FPGA.

Sysadmin & development

Prior to moving to Singapore, I was also a self employed web developer and systems administrator with nearly ten years of experience in developing for high traffic environments, principally within the Unix/Apache/PHP/MySQL stack, but also with experience in Nginx (moreso than Apache these days) and Memcached. I used to use FreeBSD servers a lot and have experience with ZFS on both FreeBSD and OpenSolaris (NexentaCore), as well as now on Linux. In addition, I have an appreciation of infrastructure issues that are overlooked by those with less experience. I am also familiar with cloud services, particularly OpenStack and Amazon Web Services, including load balancing, RDS, auto-scaling and devops.

As is abundantly clear from this page, I am not a graphic designer. I can make things look nice, particularly when working with visually creative people, but it seemed a bit unnecessary for this web page. I recently added some CSS to this page to use the LaTeX favourite Computer Modern font family. If you want to do the same, it's quite simple. My only regret is that loading this page is no longer a single HTTP request.

I've looked after systems and services for BOXFX, a video production & graphics design company, as well as HEXUS, an online technology publication with millions of monthly visits. Both are part of The Media Team family of businesses.

Additionally, I work very closely with Snap Fashion, a web start-up that combines an amazing piece of image processing technology (created by the founder) with a fashion shopping portal. I was involved since its infancy and was responsible for server infrastructure as well as optimisation of the technology at the heart of Snap Fashion.

Back in 2010/11 I did some work on a Linux driver for the PCTV nanoStick T2 290e; a USB DVB-T2 (Freeview HD) tuner.

My favourite programming language is Python. I won't get into an argument about whether Python 2.7 or 3.x is better - I'll just import from future if I need to. After Python, I'm also well versed in C, mostly thanks to the large amount of low-level work I've done in the past. As a researcher, and building upon the programming philosophy I learned as an undergraduate, I can adapt to any language thrown my way, from a new assembly language to a DSL.

Get in touch

If you would like to contact me, then please email me. Take a guess at what my e-mail address is. It's very likely you'll get it right. Alternatively, visit my LinkedIn profile and connect with me. Finally, feel free to take a look at my work on GitHub, but please note that not all of my coding activities are public, mostly for IP reasons rather than shame.

Steve.