Programming Itanium-based Systems: Developing High Performance Applications for Intel's New Architecture

Chapter 6: Creating an Itanium Executable File

Chapter 1 presented an overview of the program development process for a software application. In this chapter, we introduce the tools for creating an executable Itanium program. The simplicity of the Itanium architecture forces its compiler to be a lot smarter than the processor. The EPIC philosophy transfers to the compiler the job of optimizing the instructions and extracting parallelism. This in turn means that the job of the compiler engineer and to some extent the application programmer in compiling source code for an Itanium processor has become more complex than it was for older architectures. Here the compiling and linking tools are covered in detail. Greater attention is given to compiling, because it plays the most important role in the creation of an executable file.

The Itanium Compiler

Developing the sophisticated compilers required by the Itanium architecture is not an easy task. This is because the processor makes no scheduling decisions. It can only follow orders issued by the compiler. C/C++ and Fortran90 programs are both compiled for the Itanium processor with the Intel enhanced compilers (ecl and efl). An Itanium C/C++ compiler is also available from Microsoft Corporation.

This compiler must fully understand data dependencies between instructions, and be aware of the associated resources available in the Itanium processor. It must work within these constraints to produce a stream of operations that is as efficient and parallel as possible. That is, the operations that can occur in parallel are statically determined and ordered by the compiler for...

UNLIMITED FREE
ACCESS
TO THE WORLD'S BEST IDEAS

SUBMIT
Already a GlobalSpec user? Log in.

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.

Customize Your GlobalSpec Experience

Category: Programming Languages
Finish!
Privacy Policy

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.