Profile of a scientist: Rei Odaira

Share this post:

Location: IBM Research-Austin

Nationality: Japanese

Focus: High Performance Computing Compiler Optimization

Compilers turn a computer’s coding into executable programs. So, the faster a compiler works, the faster a program runs. Compilers, though, have to work within a computer’s constraints. The number of processors, the amount of memory, even the programming language all influence a compiler’s effectiveness. So, engineers like Rei Odaira develop ways to optimize them.

Rei joined IBM Research-Tokyo 10 years ago to optimize System z mainframe compilers. The team he joined invented the technology in the mid-1990s, for the High Performance FORTRANcompilers. And in 1995 – while Rei was still at the University of Tokyo – they built the Java virtual machine, and the Java just-in-time compiler, that has been embedded in every IBM software product that uses Java, including WebSphere. Rei took notice of the world-famous work happening only 20 kilometers away from campus, and wanted to be a part of the group.

“College students at the University of Tokyo cannot declare a major for the first two years of school. They can only choose ‘sciences’ or ‘liberal arts’ as a general areas of study. I originally wanted to study mathematics and physics when I entered the university. But this was also the time of the Internet boom of mid- and late-1990s. So, I began learning about things like Linux. And also, IBM’s just-in-time compiler was the fastest in the world at that time. And because that team was in Tokyo, my classmates and I knew their work very well – from papers they published, to conferences they attended.

Power 8’s greatest advancement is in its CAPI interface. It allows others to build new systems on top of Power 8. For example, CAPI can be made to quickly access and analyze unstructured NoSQL data stored in Flash memory.Making Power Open to the Enterprising Masses
“My first job [at IBM] was to optimize the compiler on the System z mainframe. Compiler optimization is all about getting as much performance out of hardware as possible. It was a perfect match for my computer science background, and love for working on hardware.

System z, though, is an interesting challenge. It has 16 registers (places on a computer processor where data is kept), while other machine architectures, like our Power systems have several more (so, have more ways to spread out and execute a workload). But our algorithms improved z’s middleware efficiency by 3 percent – a major breakthrough in 2005, considering how fast the mainframe already was, and the limited ways to optimize it.

On OpenPower and moving to the US

“I moved to Austin in January of this year to manage a systems team working on the Power system’s Coherent Accelerator Processor Interface (CAPI) Flash. The opportunity actually came up last April, when one of my managers – while on a visit to the Austin lab – was asked about who could manage their local team working on OpenPoweroptimization. And my name came up. My family thought it was a great opportunity, so it wasn’t a hard decision to say ‘yes.’

“Now in Austin, my scope broadened from System z compilers and run time programs like Java and Ruby, to developing ways to exploit CAPI Flash – an accelerator that can access and analyze unstructured data stored in Flash memory. This means it can optimize workloads on the Bluemix cloud platform and the SoftLayer infrastructure it runs on, to do things like process genome sequence data in a few hours, versus the day or so it takes, now.”

Tips on the transition from school to industry

“University studies give you the skills and knowledge about a topic. Computer architecture and algorithms in my case. Coming to IBM meant picking up new skills, like writing papers and making presentations. And also learning how to contribute to products – something you don’t do in school.

“At first, I had these ideas of how to change a product. They didn’t go over too well because it meant implementing a completely new thing, like an algorithm or function, in the development and maintenance of that product. I had to learn how to work in the industry, balancing business needs – and the many parts that come together to make a product work – with how my own ideas could make an impact.

“But at IBM you also have plenty of opportunities to partner with academia. I write papers for industry and academic publications. And am a member of, and on the 2015 organizational committee for the International Conference on Principles and Practices of Programming on the Java platform (PPPJ). I was also an external review committee member for Programming Language Design and Implementation (PLDI) earlier this year, and am now working as an editorial committee member for the Information Processing Society of Japan’s Transaction on Programming.
More stories

A new supercomputing-powered weather model may ready us for Exascale

In the U.S. alone, extreme weather caused some 297 deaths and $53.5 billion in economic damage in 2016. Globally, natural disasters caused $175 billion in damage. It’s essential for governments, business and people to receive advance warning of wild weather in order to minimize its impact, yet today the information we get is limited. Current […]

Continue reading

DREAM Challenge results: Can machine learning help improve accuracy in breast cancer screening?

        Breast Cancer is the most common cancer in women. It is estimated that one out of eight women will be diagnosed with breast cancer in their lifetime. The good news is that 99 percent of women whose breast cancer was detected early (stage 1 or 0) survive beyond five years after […]

Continue reading

Computational Neuroscience

New Issue of the IBM Journal of Research and Development   Understanding the brain’s dynamics is of central importance to neuroscience. Our ability to observe, model, and infer from neuroscientific data the principles and mechanisms of brain dynamics determines our ability to understand the brain’s unusual cognitive and behavioral capabilities. Our guest editors, James Kozloski, […]

Continue reading