Home Services Technologies Company Careers Contact  

Blackbird®

Blackbird Home

Blackbird® - HPEC Compiler

Whitepaper

If you would like to receive the full version of the Blackbird Whitepaper, please submit the following information:

Name:
Company:
E-mail:
Phone:

Executive Summary

Blackbird is a world-class optimizing compiler base designed to be applicable across a spectrum of source languages and architectures. Blackbird's modular design and well-documented, multi-leveled IR ease the addition of source languages, analyses, optimizations, heuristics and hardware targets. The built-in suite of optimizations has been proven effective across a broad base of applications and architectures. Many modern techniques are harnessed to produce highest-possible quality code, including interprocedural analysis, hyperblock formation, loop nest optimizations, software pipelining, feedback, and automatic parallelization.

Blackbird is an attractive base for compilers targeting new architectures. The release of many modules of Blackbird as the Open64 project has helped to create a community of developers and graduate students who are familiar with the technology. Blackbird's commercial license overcomes the limitations imposed by the open source GPL. In addition, Blackbird includes several important modules not in the Open64 release, including a more advanced software pipeliner and an industry-standard front-end. Blackbird also comes with support by Reservoir Labs, an experienced company with a long history of providing advanced compiler solutions.

Introduction

Demands on compilers come from several directions. Often, a substantial amount of a company's intellectual property is in the form of a (potentially large) code base. Software engineers turn to compilers in order to add value to their code bases. Good compilers can add value by supporting many languages and by targeting a broad spectrum of target architectures. On the other hand, hardware engineers also turn to compilers as tools to support their new hardware architectures. Here too, good compilers can add value by supporting a spectrum of languages and architectures. A third demand, no less important, is that the compiler be capable of effectively optimizing the performance of the code base across all target architectures.

A compiler that successfully balances these demands has the potential to boost developer productivity dramatically and to create larger markets for new architectures. However, compilers are very large and complex pieces of engineering in themselves. There are no "silver-bullet" techniques that can address these demands in a stroke. Rather, what is needed is a well-engineered compiler base that supports extensions and modifications to broaden its support for new source languages and architectures.

The Blackbird compiler is a world-class compiler base featuring a modular EDG-based front-end, plug-innable architecture descriptions, and an extensive suite of both conventional and cutting-edge optimizations. Based on the SGI MIPSPro compiler, Blackbird represents over 200 person-years of engineering effort from SGI's formidable compiler team. Blackbird's modular design and well-documented intermediate representation greatly reduce the effort required to add new optimizations, source languages, and hardware targets. Blackbird supports a variety of input languages including C and C++, and has been successfully ported to a wide variety of architectures including the MIPS series and the Intel Itanium. Among the optimizations performed in the compiler back-end are software pipelining, hyperblock formation, interprocedural analysis, automated feedback, and automatic parallelization.

This whitepaper investigates the features and capabilities of the Blackbird compiler. This discussion follows the flow of control through the compiler, starting at the front-end, moving though high-level and mid-level optimizations, and finishing in the code generator and low-level optimizer.

Blackbird Features and Benefits

  • World-class software pipelining and scheduling
  • Modular target architecture machine models
  • Supports RISC, VLIW and superscalar architectures
  • Full suite of global optimizations
  • Interprocedural analyses and optimizations
  • Suite of advanced loop optimizations
  • Automatic parallelization
  • Instrumentation and feedback mechanisms
  • Supports Edison Design Group front-ends
  • Robust heuristics perform well for diverse source languages and architectures
  • Well-designed and documented IR (WHIRL)
  • Supports OpenMP directives
  • Highly parameterized design
  • Designed for debuggability - tracing, pretty printers, and IR browser built-in

Blackbird Technologies


If you would like to receive the full version of the Blackbird Whitepaper, please submit the following information:

Name:
Company:
E-mail:
Phone:
Copyright © 1998-2008 Reservoir Labs, Inc.