Meet the experts - Steven Munroe
StevenMunroe 060000BRH9 Comment (1) Visits (3876)
Or a drip under pressure, by any other name.
(By: Steve Munroe. )
So what is a Toolchain? It is all of the software components you need to compile, link, execute, and debug your program. We extend that definition to include performance and analysis tools that require platform specific enablement like oProfile (hardware specific profile events) and Valgrind (enabling for the latest PowerISA). And more recently we have added Eclipse based Integrated Development Tools via the IBM Software Development Kit for Linux on POWER.
A big part of my job is to learn about the latest POWER processor design and Instruction Set Architecture (PowerISA) features and get them enabled/exploited by the toolchain. I lead the LTC's Toolchain Development Team that develops code and submits source changes to the appropriate open source (GCC, Binutils, GLIBC, GDB, ...) communities. We also work with our enterprise Linux distribution partners to enable the latest POWER processors. We back port features to the current Distro releases within limits (distros may be fixed on back level toolchain components, untill the next major release).
To insure that the latest Power System servers are supported (as soon as the hardware is available), we also provide (with the University of Illinois at Urbana-Champaign National Center for Supercomputing Applications (UIUC/NCSA)) the Advance Toolchain. The latest Advance Toolchain version always supports the latest stable GCC features and enables/exploits the latest POWER servers.
I have many years of experience in performance analysis and broad knowledge of POWER Architecture, the compiler and runtime libraries, so I frequently get involved with customers and software developers. This includes answering questions posted to the PowerLinux Message Board and supporting pre-sales and proof-of-concept engagements. I can usually suggest a better language feature, coding style, POSIX library API to resolve a platform porting or performance issue. I also get involved in deep analysis of performance problems, using the very tools developed by the Toolchain team. Of course if I find something in the tools what needs to be fixed or improved I know who to talk about it.
I have tried to get some of this expertise integrated into the IBM SDK for PowerLinux. For example; the Advance Toolchain compiler options wizard, the Code Migration Assist plugin, and the Source Code Advisor plugin. My goal is to make the developing application for PowerLinux as easy and fun as possible.
So please post your Toolchain questions to the PowerLinux Message Board and I or member of my team will do our best to answer.