+ All Categories
Home > Documents > Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file ·...

Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file ·...

Date post: 26-Mar-2018
Category:
Upload: phamthu
View: 216 times
Download: 1 times
Share this document with a friend
34
IBM Systems & Technology Group Cell/Quasar Ecosystem & Solutions Enablement Cell Programming Workshop 05/17/22 © 2007 IBM Corporation 1 Cell Broadband Engine Programming Workshop Welcome Session Cell Programming Workshop Cell/Quasar Ecosystem & Solutions Enablement
Transcript
Page 1: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology GroupCell/Quasar Ecosystem & Solutions Enablement

Cell Programming Workshop 05/06/23 © 2007 IBM Corporation1

Cell Broadband Engine Programming WorkshopWelcome Session

Cell Programming WorkshopCell/Quasar Ecosystem & Solutions Enablement

Page 2: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/232

Workshop Objectives

At the end of this workshop you should know– The Cell Broadband Engine™ (Cell BE) system organization, software

development environment, software development toolkit, software model, and software development techniques.

– How to write programs using various techniques to harvest the performance of the Cell BE.

Trademarks - Cell Broadband Engine and Cell Broadband Engine Architecture are trademarks of Sony Computer Entertainment, Inc.

Page 3: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/233

Agenda

08:15 - 8:45 Registration08:45 - 9:00 Welcome09:00 - 9:30 Cell BE - Introduction09:30 - 10:30 Cell SDK2.010:30 - 10:45 Break10:45 - 11:45 Developing code for Cell - Cell basic programming concepts

Hands-on system checkHands-on - hello world program PPE vs SPE

11:45 - 12:30 Developing code for Cell - SIMDHands-on SIMD

12:30 - 13:30 Lunch13:30 - 14:15 Developing code for Cell - DMA and mailboxes

Hands-on DMA and mailboxes14:15 - 15:00 Developing code for Cell - Software model15:00 - 15:15 Break15:15 - 16:00 Developing code for Cell - Application porting16:00 - 17:00 Developing code for Cell - Tips and techniques

Hands-on Code porting walkthrough17:00 - 17:15 Closing

Page 4: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/234

So let’s get started!

Page 5: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/235

Alpha Quality– SDK hosted on FC4 / X86

OS: Initial Linux Cell 2.6.14 patches

SPE Threads runtime XLC Cell C Compiler SPE gdb debugger Cell Coding Sample Source Documentation

– Installation Scripts– Cell Hardware Specs– Programming Docs

SDK1.0

GCC Tools from SCEA– gcc 3.0 for Cell– Binutils for Cell

Alpha Quality– SDK hosted on FC5 / X86

Critical Linux Cell Performance Enhancements– STIDC reqd. features

Critical Cell RAS Functions– Machine Check, System Error

Performance Analysis Tools– Oprofile and Event Trace

GNU Toolchain updates Mambo Updates Julia Set Sample

SDK1.1

Execution platform:Cell Simulator

Hosting platform:Linux/86 (FC4)

GCC Tools from SCEA– gcc 4.02 for Cell– Binutils for Cell

11/2005 7/2006

SDK 2.0

12/2006

XL C/C++ – v8.1 Linux/x86, LoP – Overlay prototype– Auto-SIMD enhancements

Linux Kernel updates– Performance Enhancements– RAS/ Debug support– SPE runtime extensions– Interrupt controller cleanup

GNU Toolchain updates– FSF integration– GDB multi-thread support– Newlib library optimization– Prog model support for overlay

Programming Model Preview– Overlay support– Accelerated Libraries Framework

Library enhancements– Vector Math Library – Phase 1 – MASS Library for SPU, MASSV Library for PPU/SPU

IDE– Tool integration– Remote tool support

Performance Analysis– Visualization tools– Bandwidth, Latency, Lock analyzers– Performance debug tools

Mambo– Performance model correlation– Visualization

Security (Concept validation)

SDK1.0.1

Execution platform:Cell Simulator Cell Blade 1 rev 2

Hosting platform:Linux/86 (FC4)Linux/Cell (FC4)*Linux/Power (FC4)*

* Subset of tools

Execution platform:Cell Simulator Cell Blade 1 rev 3

Hosting platform:Linux/86 (FC5)Linux/Cell (FC5)*Linux/Power (FC5)*

Refresh

Execution platform:Cell Simulator Cell Blade 1 rev 3

Hosting platform:Linux/86 (FC5)Linux/Cell (FC5)*Linux/Power (FC5)*

Delivered – 7/14/2006

2/2006

Refresh

9/2006

SDK1.1.1

•Documentation•Mambo updates for CB1 and 64-bit hosting•ISO image update

Page 6: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/236

Firmware

e.g. Blades, Development platforms, etc

Operating Systems such as Linux

e.g. SPE exploitation, BE awarenessDevice Drivers

Compilers

C, C++, Fortran, etc

Application Tooling and EnvironmentProgramming model/APIs for accelerators

Scale out Systems

Sector Specific Libraries

ISVs, Universities, Labs, Open Source, etc.

Applications

ISV, Universities, Labs, etc

HyperVisors

Core Libraries

e.g. SPE intrinsic, etc

Ubiquitous for all Markets

Market Segment Specific

Cell based systems Software Stack

SPE performance enhancements, improved scheduling and affinity management, SPE core files

libSPE cleanup and vector math support for SPEssecurity utilities

XLC GA with additional distro hosted platform coverage, Overlay support, gcc and xlC continued work on auto-vectorization/SIMDization,

xlC MASS/V support

Overlay support, Accelerated Library Framework (ALF)Performance tooling (oprofile, pmcount, VPA)

Gdbserver server support for combined PPE/SPE remote debuggingIDE integration with programming models, compiler, debugger and

simulator support,

In addition: libraries, programming model and frameworks, performance tools, operating systemsf rom IBM

Ecosystem, Mercury, Sony, PeakStream, RapidMind, Yellow Dog

Page 7: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/237

Cell Broadband Engine Architecture™ TechnologyCompetitive Roadmap

2006 2007 2008 2009 2010

PerformanceEnhancements/Scaling

EnhancedCell BE

(1+8eDP)65nm SOI

Cell BE(1+8)

90nm SOI

CostReduction

1TF Processor45nm SOI

Cell BE Roadmap Version 5.0 24-Jul-2006

All future dates are estimations only; Subject to change without notice.

Page 8: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/238

Cell Broadband Engine™ Blade – The first in a line of planned offerings using Cell Broadband Engine technology

Performance

2006 20082007

Cell BE-Based Blade

Advanced Cell BE-Based Blade

Enhanced Cell BE-basedBlade

GA: 2H06

Target Availability: 2H07

Target Availability: 1H08

2 Cell BE Processors Single Precision Floating Pt Affinity1 GB MemoryUp to 4X PCI Express™

2 Cell BE ProcessorsSingle Precision Floating Pt Affinity2 GB MemoryUp to 16X PCI Express

2 Enhanced Cell BE ProcessorsSP & DP Floating Point AffinityUp to 16 GB MemoryUp to 16X PCI Express

Available: 17 July 2006

Target Availability: 1H07

Target Availability: 2H07

SDK 1.1Alpha Software

Hardware

SDK 2.0

Beta Software

SDK 3.0

GA Software

Cell BE Roadmap Version 5.0 24-Jul-2006

All future dates are estimations only; Subject to change without notice.

Page 9: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/239

VMware

Page 10: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2310

Perform Cell VMware image installation

Cell VMware image– Fedora Core 5 + Cell SDK 2.0 + Hands-on Exercise + IDE

Assume your system is running under WinXP, has 10MB of free disk space, and at least 512MB of RAM– Copy all files to a windows directory, e.g., cellvm

• CellVMware-FC5-SDK20-IDE-28Jan07.zip• VMware-player-1.0.3-34682.exe (for Windows)• VMware-player-1.0.3-34682.tar.gz (for Linux)

– Unzip CellVMware-FC5-SDK20-IDE-28Jan07.zip – Install VMware-player-1.0.3-34682.exe– Adjust the memory size allocated for the vmware image specified in the

file Other Linux 2.6.x kernel.vmx • memsize = “xxxx” where xxxx equals half of your physical RAM

Page 11: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2311

Check for correct system installation

Start the VMware Player– Select “Other Linux 2.6.x kernel.vmx” as the virtual machine configuration file– For the first time run, answer all questions using the default selected options– Wait for the complete boot of the guest FC5, then login

• Userid: root• Password: inn0vate

– Open a terminal session and do cat /proc/version• “linux version 2.6.1x-x.xxxx_FC5 ………..”

Page 12: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2312

Check for correct system components

We should have the following directories– /opt/ibm/cell-sdk (Cell BE SDK 2.0)

– /opt/ibm/systemsim-cell (Cell BE full system simulator)

– /opt/cell (GNU toolchain-3.3)

– /opt/ibmcmp (IBM xlc and xlcpp)

– /opt/IDE (Cell BE Integrated Development Environment)

– /opt/cell_class (workshop hands-on examples)

– /opt/sandbox (sandbox for system simulator)

Page 13: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2313

Changing the default compiler

The build environment makefile is

– /opt/ibm/cell-sdk/prototype/README_build_env.txt

gcc is the default compiler

To change gcc to xlc, run ./cellsdk build [-x | -g ] where the –x flag selects the XL C/C++ compiler (x86 only) and the –g flag selects the gcc compiler

Notes: You should cd /opt/ibm/cell-sdk/prototype/src and then run ./cellsdk build

Page 14: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2314

Check for correct environment variables

“top of the SDK” is /opt/ibm/cell-sdk/prototype Makefile in SDK samples and tutorial use

– “include ../../../../../make.footer” CELL_TOP, TOP, and SDK_TOP are used in many exercises

– export CELL_TOP=/opt/ibm/cell-sdk/prototype– export TOP =/opt/ibm/cell-sdk/prototype– export SDK_TOP =/opt/ibm/cell-sdk/prototypeNOTES: you can include those exports in /root/.bash_profile

If make fails, – make sure to have correct path and environment variables, or– logout root then log back in, or– reboot the host FC5 by typing “shutdown –r now”

Page 15: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2315

Check for IDE Operational

cd /opt/IDE/eclipse

./eclipse

Note: eclipse should come up after ./eclipse was typed. The eclipse windows is NOT in foreground, therefore you may not see it. To see it, you click on the screen to bring the background to foreground.

Page 16: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2316

Summary

Make sure to have a fully cell operational environment– FC5 as host

– Cell SDK 2.0

– system simulator systemsim-cell

– Cell IDE

Page 17: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2317

Where to get Cell BE information?

Page 18: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2318

Cell Resource Cell resource center at developerWorks

– http://www-128.ibm.com/developerworks/power/cell/ Cell developer's corner at power.org

– http://www.power.org/resources/devcorner/cellcorner/ The cell project at IBM Research

– http://www.research.ibm.com/cell/ The Cell BE at IBM alphaWorks

– http://www.alphaworks.ibm.com/topics/cell Cell BE at IBM Engineering & Technical Services

– http://www-03.ibm.com/technology/ IBM Power Architecture

– http://www-03.ibm.com/chips/power/ Cell BE documentation at IBM Microelectronics

– http://www-306.ibm.com/chips/techlib/techlib.nsf/products/Cell_Broadband_EngineCell

Linux info at the Barcelona Supercomputing Center website– http://www.bsc.es/projects/deepcomputing/linuxoncell/

Page 19: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2319

Cell Education

Online courses at IBM Education Assistant– http://publib.boulder.ibm.com/infocenter/ieduasst/stgv1r0/index.jsp

Online courses at IBM Learning– http://ibmlearning.ibm.com/index.html

Podcasts at power.org– http://www.power.org

Onsite classes at IBM Innovation Center– https://www-304.ibm.com/jct09002c/isv/spc/events/cbea.html

Page 20: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2320

Cell BE Documentation The following documents define the Cell Broadband Engine architecture,

programming using the SDK, the new IBM BladeCenter QS20, XL C/C++compiler, Full-System Simulator, and the PowerPC base architecture.

Cell Broadband Engine – Cell Broadband Engine Architecture V1.01 (updated) – Cell Broadband Engine Programming Handbook V1.0 – Cell Broadband Engine Registers V1.4 (updated) – SPU C/C++ Language Extensions V2.2.1 (updated) – Synergistic Processor Unit (SPU) Instruction Set Architecture V1.11 (updated) – SPU Application Binary Interface Specification V1.5.1 (updated) – SPU Assembly Language Specification V1.4 (updated)

Page 21: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2321

Cell BE Documentation Cell Broadband Engine Programming using the SDK

– Cell Broadband Engine SDK Installation Guide V2.0 (updated) – Cell Broadband Engine SDK Programmer's Guide V1.0 (new) – Cell Broadband Engine Programming Tutorial V2.0 (updated) – Cell Broadband Engine Linux Reference Implementation Application Binary Interface

Specification V1.1 (updated) – SPE Runtime Management library documentation V1.2 (updated) – SPE Runtime Management library documentation V2.0 (new) – Cell Broadband Engine SIMD Math Library Specification V1.0 (new) – Accelerator Library Framework Programming Guide and API Reference V1.0 (new) – Sample Library documentation V2.0 (updated) – IDL Compiler for Remote Procedure Calls – Post-link Optimization Utility (new)

Page 22: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2322

Cell BE Documentation IBM BladeCenter QS20

– IBM BladeCenter QS20 Datasheet – IBM BladeCenter QS20 Installation and User's Guide – IBM BladeCenter QS20 Problem Determination and Service Guide

IBM XL C/C++ Compiler – Getting Started with IBM XL C/C++ Compiler (new) – IBM XL C/C++ Compiler Language Reference (new) – IBM XL C/C++ Compiler Programming Guide (new) – IBM XL C/C++ Compiler Reference (new) – IBM XL C/C++ Compiler Installation Guide (new)

Page 23: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2323

Cell BE Documentation

IBM Cell Broadband Engine Full-System Simulator – IBM Full-System Simulator Users Guide (updated) – IBM Full-System Simulator Command Reference (updated) – Performance Analysis with the IBM Full-System Simulator – IBM Full-System Simulator BogusNet HowTo (updated)

PowerPC Base – PowerPC Architecture Book, Version 2.02

• Book I: PowerPC User Instruction Set Architecture • Book II: PowerPC Virtual Environment Architecture • Book III: PowerPC Operating Environment Architecture

– PowerPC Microprocessor Family • Vector/SIMD Multimedia Extension Technology Programming Environments

Manual Version 2.06c

Page 24: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2324

Cell BE Technical Articles Real-time Ray Tracing Papers from the Fall Processor Forum 2005: Unleashing the Cell Broadband Engine Processor:

The Element Interconnect Bus Papers from the Fall Processor Forum 2005: Unleashing the power of the Cell Broadband Engine:

A programming model approach Cell Broadband Engine Architecture and its first implementation Introduction to the Cell Broadband Engine Introduction to the Cell Multiprocessor Maximizing the power of the Cell Broadband Engine processor: 25 tips to optimal application

performance Terrain Rendering Engine (TRE): Cell Broadband Engine Optimized Real-time Ray-caster An Implementation of the Feldkamp Algorithm for Medical Imaging on Cell Broadband Engine Cell Broadband Engine Support for Privacy, Security, and Digital Rights Management Applications A Programming Example: Large FFT on the Cell Broadband Engine

Page 25: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2325

More Detailed Description

Page 26: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2326

Standards and Documentation at developerWorks http://www-128.ibm.com/developerworks/power/cell/downloads_doc.html

Cell Broadband Engine Programming HandbookGet information for developing applications, libraries, middleware, drivers, compilers, or operating systems for the Cell Broadband Engine processor.

Cell Broadband Engine Hardware Initialization GuideThis document describes the sequences for initializing a Cell Broadband Engine processor, from Power-On Reset (POR) through calibration of the memory and I/O interfaces and the PowerPC Processor Element (PPE) firmware.

Cell Broadband Engine Linux Reference Implementation Application Binary Interface SpecificationThis document defines a standard interface that allows compiled objects to be linked and run on the Linux Reference Implementation for the Cell Broadband Engine without recompilation or recoding.

Cell Broadband Engine RegistersThis document describes the CBE memory-mapped I/O registers used by the PowerPC Processor Element (PPE), the Synergistic Processor Elements (SPEs) and other units.

Page 27: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2327

Standards and Documentation at developerWorks http://www-128.ibm.com/developerworks/power/cell/downloads_doc.html

Cell Broadband Engine Architecture V1.0Like the Power Architecture, but different -- the CBE Architecture builds upon knowledge contained in the Power Architecture "books" and describes the app-level User Mode Environment (UME) and the OS-level Privileged Mode Environment (PME) in astonishingly rich detail.

Synergistic Processor Unit (SPU) Instruction Set Architecture V1.0Somewhere between a general-purpose processor and special-purpose hardware lies the Cell SPU: designed to provide leadership performance in game, media, and broadband applications, this document describes the Instruction Set of the Synergistic Processor Unit (SPU). Get to know all of its instructions.

SPU Application Binary Interface Specification V1.4 Including register usage and calling conventions, data type sizes and alignment, low-level system and language binding information, information on loading and linking, and coding examples, this specification defines the system interface for SPU-targeted object files to help ensure maximum binary portability across implementations.

SPU Assembly Language Specification V1.3 Program directly to the SPU Instruction Set! This specification will prove an indispensable aid in your efforts as it takes you on a carefully-worded journey describing SPU assembly-level syntax and machine-dependent features for the GNU assembler (but serves as an example specification for other SPU assemblers as well).

Page 28: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2328

Standards and Documentation at developerWorks http://www-128.ibm.com/developerworks/power/cell/downloads_doc.html

SPU C/C++ Language Extensions V2.1 Unleash the full processing power of the SPUs. This specification extends the C and C++ languages with a rich set of vector data types, several programmer directives, and an extensive set of vector intrinsics.

PowerPC Architecture Book, Version 2.01This three-volume set (pdf), Version 2.01, defines the instruction and registers used by application programs, the storage models, privileged facilities, and related instructions for the POWER4 and POWER4+ processors.

PowerPC Architecture Book, Version 2.02This three-volume set (pdf), Version 2.02, defines the instruction and registers used by application programs, the storage models, privileged facilities, and related instructions for the IBM POWER5 processor family.

PowerPC Microprocessor Family: Vector/SIMD Multimedia Extension Technology Programming Environments Manual Version 2.06cCreate software that is compatible across the family of 64-bit PowerPC processors, which have implemented the Vector/SIMD Multimedia Extension technology -- from the 970FX, to the Cell Broadband Engine -- and beyond.

Page 29: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2329

IBM Full-System Simulator – XLC – Software Sample at alphaworks http://www.alphaworks.ibm.com/topics/cell

IBM Full-System Simulator for the Cell Broadband Engine Processor – A full-system simulation infrastructure and tools for the Cell Broadband Engine

processor. XL C Alpha Edition for Cell Broadband Engine Processor

– A high performance C compiler for the IBM Cell Broadband Engine processor. IBM Cell Broadband Engine Software Sample and Library Source

Code – Working examples and libraries that demonstrate programming techniques and

performance of Cell Broadband Engine Architecture.

Page 30: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2330

Linux on Cell at the Barcelona Supercomputer Center http://www.bsc.es/projects/deepcomputing/linuxoncell/cbexdev.html

Cell Broadband Engine SDK for x86, PowerPC, and Cell-based blade installation script and open source packages– The cross-hosted Cell Broadband Engine development environment contains

packages from several sources. This page includes a primary install/build script for the Cell Broadband Engine SDK, an SPU/PPU toolchain package, a Fedora Core 5 for PowerPC run-time package for the GNU/Linux on Cell simulation environment, Cell BE kernel patches for the 2.6.18 Linux Kernel, and the source code for the SPE run-time management library.

Page 31: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2331

Linux on Cell at the Barcelona Supercomputer Center http://www.bsc.es/projects/deepcomputing/linuxoncell/cbexdev.html

GCC Toolchain – Contains the GCC compiler for the SPE implemented by SCE which also supports the

standards defined in the SPU C/C++ Language Extensions V2.1, SPU Application Binary Interface Specification V1.4, and Synergistic Processor Unit (SPU) Instruction Set Architecture V1.0 documents (previously released). The associated assembler and linker additionally support the SPU Assembly Language Specification V1.3. The assembler and linker are common to both the GCC and XL C compilers.

Linux Kernel Patch – This set of patches to the Linux operating system provides services needed to support the

hardware facilities of the Cell Broadband Engine microprocessor. Fedora Core 5 links SPE Management Library

– Contains an SPE thread programming model for CBEA applications. SDK Installation Script

– The install script grabs the RPMs and builds the CBE programming environment Linux on Cell

– Provides information about how to enable Linux on CBE platforms.

Page 32: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2332

This document was developed for IBM offerings in the United States as of the date of publication. IBM may not make these offerings available in other countries, and the information is subject to change without notice. Consult your local IBM business contact for information on the IBM offerings available in your area. In no event will IBM be liable for damages arising directly or indirectly from any use of the information contained in this document.Information in this document concerning non-IBM products was obtained from the suppliers of these products or other public sources. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products.IBM may have patents or pending patent applications covering subject matter in this document. The furnishing of this document does not give you any license to these patents. Send license inquires, in writing, to IBM Director of Licensing, IBM Corporation, New Castle Drive, Armonk, NY 10504-1785 USA. All statements regarding IBM future direction and intent are subject to change or withdrawal without notice, and represent goals and objectives only. The information contained in this document has not been submitted to any formal IBM test and is provided "AS IS" with no warranties or guarantees either expressed or implied.All examples cited or described in this document are presented as illustrations of the manner in which some IBM products can be used and the results that may be achieved. Actual environmental costs and performance characteristics will vary depending on individual client configurations and conditions.IBM Global Financing offerings are provided through IBM Credit Corporation in the United States and other IBM subsidiaries and divisions worldwide to qualified commercial and government clients. Rates are based on a client's credit rating, financing terms, offering type, equipment type and options, and may vary by country. Other restrictions may apply. Rates and offerings are subject to change, extension or withdrawal without notice.IBM is not responsible for printing errors in this document that result in pricing or information inaccuracies.All prices shown are IBM's United States suggested list prices and are subject to change without notice; reseller prices may vary.IBM hardware products are manufactured from new parts, or new and serviceable used parts. Regardless, our warranty terms apply.Many of the features described in this document are operating system dependent and may not be available on Linux. For more information, please check: http://www.ibm.com/systems/p/software/whitepapers/linux_overview.html Any performance data contained in this document was determined in a controlled environment. Actual results may vary significantly and are dependent on many factors including system hardware configuration and software design and configuration. Some measurements quoted in this document may have been made on development-level systems. There is no guarantee these measurements will be the same on generally-available systems. Some measurements quoted in this document may have been estimated through extrapolation. Users of this document should verify the applicable data for their specific environment.

Revised January 19, 2006

Special Notices -- Trademarks

Page 33: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2333

The following terms are trademarks of International Business Machines Corporation in the United States and/or other countries: alphaWorks, BladeCenter, Blue Gene, ClusterProven, developerWorks, e business(logo), e(logo)business, e(logo)server, IBM, IBM(logo), ibm.com, IBM Business Partner (logo), IntelliStation, MediaStreamer, Micro Channel, NUMA-Q, PartnerWorld, PowerPC, PowerPC(logo), pSeries, TotalStorage, xSeries; Advanced Micro-Partitioning, eServer, Micro-Partitioning, NUMACenter, On Demand Business logo, OpenPower, POWER, Power Architecture, Power Everywhere, Power Family, Power PC, PowerPC Architecture, POWER5, POWER5+, POWER6, POWER6+, Redbooks, System p, System p5, System Storage, VideoCharger, Virtualization Engine.

A full list of U.S. trademarks owned by IBM may be found at: http://www.ibm.com/legal/copytrade.shtml.

Cell Broadband Engine and Cell Broadband Engine Architecture are trademarks of Sony Computer Entertainment, Inc. in the United States, other countries, or both.Rambus is a registered trademark of Rambus, Inc.XDR and FlexIO are trademarks of Rambus, Inc.UNIX is a registered trademark in the United States, other countries or both. Linux is a trademark of Linus Torvalds in the United States, other countries or both.Fedora is a trademark of Redhat, Inc.Microsoft, Windows, Windows NT and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries or both.Intel, Intel Xeon, Itanium and Pentium are trademarks or registered trademarks of Intel Corporation in the United States and/or other countries.AMD Opteron is a trademark of Advanced Micro Devices, Inc.Java and all Java-based trademarks and logos are trademarks of Sun Microsystems, Inc. in the United States and/or other countries. TPC-C and TPC-H are trademarks of the Transaction Performance Processing Council (TPPC).SPECint, SPECfp, SPECjbb, SPECweb, SPECjAppServer, SPEC OMP, SPECviewperf, SPECapc, SPEChpc, SPECjvm, SPECmail, SPECimap and SPECsfs are trademarks of the Standard Performance Evaluation Corp (SPEC).AltiVec is a trademark of Freescale Semiconductor, Inc.PCI-X and PCI Express are registered trademarks of PCI SIG.InfiniBand™ is a trademark the InfiniBand® Trade AssociationOther company, product and service names may be trademarks or service marks of others.

Revised July 23, 2006

Special Notices (Cont.) -- Trademarks

Page 34: Cell/Quasar Educational Course - College of Computingbader/cell/Day1-01_Welcome.ppt · PPT file · Web view... power/cell/downloads_doc.html Cell Broadband Engine ... 01 This three-volume

IBM Systems & Technology Group – Cell/Quasar Ecosystem & Solutions Enablement

© 2007 IBM CorporationCell Programming Workshop 05/06/2334

(c) Copyright International Business Machines Corporation 2005.All Rights Reserved. Printed in the United Sates September 2005.

The following are trademarks of International Business Machines Corporation in the United States, or other countries, or both. IBM IBM Logo Power Architecture

Other company, product and service names may be trademarks or service marks of others.

All information contained in this document is subject to change without notice. The products described in this document are NOT intended for use in applications such as implantation, life support, or other hazardous uses where malfunction could result in death, bodily injury, or catastrophic property damage. The information contained in this document does not affect or change IBM product specifications or warranties. Nothing in this document shall operate as an express or implied license or indemnity under the intellectual property rights of IBM or third parties. All information contained in this document was obtained in specific environments, and is presented as an illustration. The results obtained in other operating environments may vary.

While the information contained herein is believed to be accurate, such information is preliminary, and should not be relied upon for accuracy or completeness, and no representations or warranties of accuracy or completeness are made.

THE INFORMATION CONTAINED IN THIS DOCUMENT IS PROVIDED ON AN "AS IS" BASIS. In no event will IBM be liable for damages arising directly or indirectly from any use of the information contained in this document.

IBM Microelectronics Division The IBM home page is http://www.ibm.com1580 Route 52, Bldg. 504 The IBM Microelectronics Division home page is Hopewell Junction, NY 12533-6351 http://www.chips.ibm.com

Special Notices - Copyrights


Recommended