Skip to main content

By clicking Submit, you agree to the developerWorks terms of use.

The first time you sign into developerWorks, a profile is created for you. Select information in your profile (name, country/region, and company) is displayed to the public and will accompany any content you post. You may update your IBM account at any time.

All information submitted is secure.

  • Close [x]

The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerworks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

By clicking Submit, you agree to the developerWorks terms of use.

All information submitted is secure.

  • Close [x]

Cell/B.E. SDK 3.0, Part 6: Use simulator consoles, use the ALF wizard, and set IDE preferences

A quick-read intro to the new Multicore Accelerator SDK 3.0 IDE

Sean Curry (seancurry.ut@gmail.com), Software Engineer, IBM
Sean is an undergraduate student at The University of Texas at Austin, working toward a degree in Computer Sciences. As an intern at the IBM Linux Technology Center, Sean works as part of the Linux on Cell/B.E. team, specifically contributing to the IDE for Cell Broadband Engine SDK project. Sean develops source code and conducts integration testing and product release management.

Summary:  This introductory tutorial, designed for the IBM SDK for Multicore Acceleration, Version 3.0 (otherwise known as the Cell Broadband Engine SDK), explores the Cell/B.E. processor IDE and gives developers a click-for-click walk-through of building a simple project in this environment. This tutorial is broken into six quick-perform parts dealing with creating an SPU project, creating a PPU project, creating the Cell/B.E. simulator, configuring the application launcher, debugging and doing performance analysis, using simulator consoles, using the ALF wizard, and setting IDE preferences.

View more content in this series

Date:  13 Nov 2007
Level:  Introductory PDF:  A4 and Letter (421 KB | 15 pages)Get Adobe® Reader®

Activity:  25793 views
Comments:  

Before you start

Learn what to expect from this tutorial, and how to get the most out of it.

This tutorial series

This series of six quick-and-easy tutorials introduces the IBM SDK for Multicore Acceleration 3.0 (the Cell/B.E. SDK 3.0) and explains how to create, build, and run POWER™ Processing Unit (PPU) and Synergistic Processor Unit (SPU)-managed make projects. During this process, you will learn how to use some of the main features of the Multicore Acceleration SDK.

The tutorial series contains the following tutorials:


Objectives

In this tutorial series, you will:

  • Get step-by-step instructions on how to create, build, and run PPU- and SPU- managed make projects.
  • Understand how to use the Local Cell Simulator environment.
  • Walk through ways of using the static and dynamic performance analysis tools.
  • Discover how to configure and use the C/C++ Cell Target Application launcher to run and debug your Cell/B.E. applications.
  • See a great example usage scenario of the Accelerated Library Framework IDE wizard (ALF).

Prerequisites

Although this is a fairly entry-level tutorial, it is written for readers with some experience installing and using IDEs, especially makefiles. Some past experimentation with the Cell/B.E. SDK version 2.1 is a plus, but not required. This tutorial assumes only minimal familiarity with the Eclipse IDE.


Changes since SDK 2.1

The version 3.0 release of the SDK contains a number of significant enhancements over previous versions of the SDK and completely replaces earlier SDK versions. Enhancements include:

  • New installation process based on YUM.
  • Addition of PPU and SPU Fortran compiler.
  • Addition of PPU-only GNU Ada compiler.
  • Minor enhancements to XL C/C++ compiler.
  • Addition of single-source XL C/C++ compiler.
  • Compilers now generating code that is compliant with the SPE Stall App. Note.
  • GCC toolchain enhancements, including:
    • GCC C/C++ compilers supporting infix operations on vector data types.
    • GCC support of additional PPU VMX intrinsics.
    • GCC performance enhancements.
    • Link time estimation of SPU stack consumption.
    • Transparent SPE embedding.
    • SPE function descriptor support for embedded executables.
    • Additional POSIX API support in the SPE runtime library.
    • Addition of SPE direct access of PPE address space using __ea qualified data types. This feature is supported by the GCC C++ compiler only.
    • Combined debugger enhancements.
  • Restructuring of examples and demonstration source code, and more examples.
  • Addition of DaCS and DaCS for Hybrid-x86 programming model.
  • Major enhancements to ALF framework and addition of ALF for Hybrid-x86.
  • Complete implementation of SIMDMath library.
  • Addition of BLAS Linear Algebra library.
  • Addition of FFT library.
  • Addition of SPU virtual clock and timer services.
  • Addition of Performance and Debug Tracing tool (PDT and PDTR).
  • Updates to Cell Performance Counter, OProfile, and FDPR-Pro performance tools.
  • Addition of Hybrid performance tooling.
  • Performance enhancements to the Full System Simulator.
  • Updated Full System Simulator sysroot to Fedora 7.

You can also use these related products with the SDK 3.0 components for additional capability:


System requirements

The SDK 3.0 has specific hardware and software requirements.

Hardware

The following table shows the recommended minimum configuration for each hardware platform.


Hardware requirements
SystemRecommended minimum configuration
x86 or x86-642GHz Pentium® 4 processor
PowerPC® 64-bit PPC with a clock speed of 1.42 GHz
32-bit PPC platforms not supported
BladeCenter® QS20Revision 31 or greater and minimum firmware level of QA-06.14.0-0F (7.21)
BladeCenter QS21Minimum hardware firmware level of QB-01.08.0-00

Additionally, all systems must have:

  • Hard disk space: 5GB (minimum) to install the source package and the accompanying development tools
  • 1GB RAM (minimum) on the host system

Note: If you use the Full System Simulator, the minimum amount of RAM installed must be twice the amount of simulated memory. For example, to simulate a system with 512MB of RAM, the host system must have at least 1GB of RAM installed.

Software

This tutorial requires Fedora 7, which must be installed before you install the SDK.

SELinux: The SELinux policy files that are included in the Fedora 7 base distribution prevent spufs from loading correctly on boot. To install the SDK, you must either turn off SELinux or update the selinux-policy and selinux-policy-targeted RPMs to the latest version. The preferred method is to update the RPMs. To update, type the following commands as root: yum update selinux-policy selinux-policy-targeted.

expat: The DaCS for Hybrid-x86 daemon for both X86_64 and the BladeCenter QS20 and QS21 platforms requires the expat XML parsing library. Install expat by typing the following command as root: yum install expat.

SDK utility software: The SDK requires the packages rsync, sed, TCL, and wget. To install these dependencies, type the following command as root: yum install rsync sed tcl wget.

1 of 8 | Next

Comments



static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Multicore acceleration, Open source
ArticleID=268876
TutorialTitle=Cell/B.E. SDK 3.0, Part 6: Use simulator consoles, use the ALF wizard, and set IDE preferences
publish-date=11132007
author1-email=seancurry.ut@gmail.com
author1-email-cc=dwpower@us.ibm.com