Since September 2004, I have been a scientific researcher in the John von Neumann Institute for Computing (NIC) hosted by Forschungszentrum Jülich (FZJ) near Aachen in Germany. I am developing the support for holistic performance analysis of parallel applications through improved specification, analysis and presentation of hardware counter metrics within the open-source KOJAK toolkit.
From September 2000 to January 2004, I was a member of technical staff with Sun Microsystems, Inc. in the developer tools division on the Sun Studio Performance Analyzer team (formerly known as Sun WorkShop and later Forte Developer), based in Menlo Park, California, USA. Primarily tasked with the development of new functionality to exploit microprocessors' performance counters for insight into application data access and use, handling dynamic processes and general performance experiment collection reliability and robustness, I continued to engage users (and potential users) of the tools to assist them in understanding the execution performance of their applications and investigating performance optimisation opportunities.
For the prior 3 years, I was an associate researcher with the Paradyn parallel performance tools development team lead by Prof. Barton P. Miller at the University of Wisconsin-Madison in the USA. Paradyn was well-established as a novel tool for performance analysis and automated bottleneck diagnosis of distributed parallel applications, based on runtime process instrumentation, and several major distributions of the tool were released during my time with the project. I was involved with the design and development of a more effective automated bottleneck search strategy based on an application's dynamic callgraph, as well as associated improved instrumentation robustness and flexibility. I also participated in partnerships with the dyninst dynamic instrumentation project and APART working group on automated performance analysis.
Until August 1997, I worked 4 years for CSCS/SCSC (the Centro Svizzero di Calcolo Scientifico or Swiss Center for Scientific Computing, situated near Lugano in canton Ticino, the italian-influenced part of Switzerland) as a research scientist in software technology, mainly within the Joint CSCS/NEC Collaboration in Parallel Processing. This work involved designing and developing practical tools to facilitate the use of distributed-memory computer systems. In addition to general responsibilities for the Annai integrated tool environment for HPF/MPI parallel program engineering, my primary responsibility was the Performance Monitor & Analyzer (PMA) tool component. These tools were internationally acclaimed and subsequently incorporated within NEC Corp.'s program development environment, PSuite. Other work at CSCS included initiating a number of collaborations with industrial partners to develop environments for application management on in-house and geographically-distributed HPC systems, and a collaboration with the Education Department of Cantone Ticino to develop a modern curriculum in informatics and computational science: this activity continued as part of the CSCS Education Programme.
Previously, I worked 3 years for Edinburgh Parallel Computing Centre (EPCC) in Scotland, after 7 years of education/research at the University of Edinburgh -- my PhD research investigated lattice-gas hydrodynamics, parallel computers and visualisation. In the period from 1986, I was fortunate to be able to play with various parallel systems on a range of projects: (ICL and AMT) Distributed Array Processors (DAPs), Meiko Computing Surfaces (mostly the transputer-flavoured variety) and TMC Connection Machine CM-200. This included work for the UK Meteorological Office (investigating the parallelisation of part of their weather forecasting and climate modelling code, in CM Fortran) and the traffic consultancy SIAS (designing a parallel traffic simulator capable of simulations of individual vehicles over large-scale geographical areas, in C*) -- the latter work produced the PARAMICS parallel microscopic traffic simulator which won a Strategic IT Award for Technology Transfer in 1994, was later nominated for ComputerWorld Smithsonian Innovation awards, and is now available as a PARAMICS product. As well as serious application development work, I also managed to fit in some time for investigating and visualising the performance of multicomputers, along with messing around with bits of (La)TeX and PostScr!pt.
Before I moved to Edinburgh, I grew up in the Fawkirk (anglicised to Falkirk) area of Central Scotland, mostly on my parents farm near the village of Airth on the South Carse of the Firth of Forth (not far from the Kincardine Bridge), and going to the local schools in Bothkennar/Skinflats and Larbert/Stenhousemuir.
My main outside interests include photography and travel, and learning out about the different peoples I've encountered, including their cultures, history, and the basics of their languages (such as american!). Apart from that I enjoy music (in the passive form!) and used to occasionally play various sports such as squash, frisbee, fitba, and basketball (all fairly poorly!), as well as hiking, canoeing and cycling.