high performance embedded computing software initiative ...development and applied research. each of...

35
High Performance Embedded Computing Software Initiative (HPEC-SI) Jeremy Kepner ([email protected]) MIT Lincoln Laboratory, Lexington, MA 02420 Abstract The High Performance Embedded Computing Software Initiative (see www.hpec-si.org) is addressing the mili- tary need to advance the state of embedded software de- velopment tools, libraries, and methodologies to retain the nation’s military technology advantage in increas- ingly software-based systems. Key accomplishment in- clude completion of the first demonstration and the de- velopment of the Parallel VSIPL++ standard. Currently the HPEC-SI effort is on track towards its goal of chang- ing the state-of-the-practice in programming DoD HPEC SIP systems. 1 Introduction The High Performance Embedded Computing Software Initiative (HPEC-SI) involves a partnership of industry, academia, and government organizations to foster soft- ware technology insertion demonstrations, to advance the development of existing standards, and to promote a unified computation/communication embedded software standard. The goal of the initiative is software porta- bility: to enable ”write-once/run-anywhere/run-anysize” for applications of high performance embedded comput- ing (see [7, 4, 10, 8, 9, 18, 12]). This paper gives a brief overview of the HPEC-SI pro- gram objectives, technical objectives and program plans. Detailed progress of the demonstration, development and applied research activities that are taking place within the HPEC-SI can be found in the HPEC2002[15, 20, 27], GOMAC2002[26, 5, 11, 21, 23], GOMAC2003[28, 6, 14, 17, 22], and other conferences[16, 13]. This work is sponsored by the High Performance Comput- ing Modernization Office, under Air Force Contract F19628-00-C- 0002. Opinions, interpretations, conclusions and recommendations are those of the author and are not necessarily endorsed by the United States Government. 2 Program Objectives HPEC-SI is organized around demonstrations, standards development and applied research. Each of these activ- ities is overseen by a Working Group. The demonstra- tions team Prime contractors with FFRDC or academic partners to use currently defined standards, evaluate their performance, and report on how well their needs are be- ing met. The first demonstration was with the Common Imagery Processor (CIP) and successfully showed the use of MPI communication standard ([1]) and the VSIPL computation standard ([2]) to achieve portability (while preserving performance) across shared servers and dis- tributed memory embedded systems. The Development Working Group is extending the VSIPL standard to in- clude parallel object-oriented software practices already prototyped by the research community. This effort is tightly coupled with military demonstrations, and pro- vides the next generation of standards with direct feed- back from the military user base. The Applied Research Working Group is also taking a longer term view to as- sess the potential impact of a variety of emerging tech- nologies such as: fault tolerance and dynamic schedul- ing, self-optimization, and next generation high produc- tivity languages. 3 Technical Objectives The HPEC-SI program uses three principal metrics to measure the progress of its efforts: Portability (reduction in lines-of-code to change port/scale to new system); Productivity (reduction in overall lines-of-code); Performance (computation and communication benchmarks). Traditionally, it has always been possible to improve in two of the above areas while sacrificing the third. HPEC- SI aims to improve quantitatively in all three areas. 1

Upload: others

Post on 17-Mar-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

High Performance Embedded Computing Software Initiative (HPEC-SI)

Jeremy Kepner�

([email protected]) MIT Lincoln Laboratory, Lexington, MA 02420

Abstract

The High Performance Embedded Computing SoftwareInitiative (see www.hpec-si.org) is addressing the mili-tary need to advance the state of embedded software de-velopment tools, libraries, and methodologies to retainthe nation’s military technology advantage in increas-ingly software-based systems. Key accomplishment in-clude completion of the first demonstration and the de-velopment of the Parallel VSIPL++ standard. Currentlythe HPEC-SI effort is on track towards its goal of chang-ing the state-of-the-practice in programming DoD HPECSIP systems.

1 Introduction

The High Performance Embedded Computing SoftwareInitiative (HPEC-SI) involves a partnership of industry,academia, and government organizations to foster soft-ware technology insertion demonstrations, to advancethe development of existing standards, and to promote aunified computation/communication embedded softwarestandard. The goal of the initiative is software porta-bility: to enable ”write-once/run-anywhere/run-anysize”for applications of high performance embedded comput-ing (see [7, 4, 10, 8, 9, 18, 12]).

This paper gives a brief overview of the HPEC-SI pro-gram objectives, technical objectives and program plans.Detailed progress of the demonstration, development andapplied research activities that are taking place within theHPEC-SI can be found in the HPEC2002[15, 20, 27],GOMAC2002[26, 5, 11, 21, 23], GOMAC2003[28, 6,14, 17, 22], and other conferences[16, 13].

This work is sponsored by the High Performance Comput-ing Modernization Office, under Air Force Contract F19628-00-C-0002. Opinions, interpretations, conclusions and recommendationsare those of the author and are not necessarily endorsed by the UnitedStates Government.

2 Program Objectives

HPEC-SI is organized around demonstrations, standardsdevelopment and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime contractors with FFRDC or academicpartners to use currently defined standards, evaluate theirperformance, and report on how well their needs are be-ing met. The first demonstration was with the CommonImagery Processor (CIP) and successfully showed theuse of MPI communication standard ([1]) and the VSIPLcomputation standard ([2]) to achieve portability (whilepreserving performance) across shared servers and dis-tributed memory embedded systems. The DevelopmentWorking Group is extending the VSIPL standard to in-clude parallel object-oriented software practices alreadyprototyped by the research community. This effort istightly coupled with military demonstrations, and pro-vides the next generation of standards with direct feed-back from the military user base. The Applied ResearchWorking Group is also taking a longer term view to as-sess the potential impact of a variety of emerging tech-nologies such as: fault tolerance and dynamic schedul-ing, self-optimization, and next generation high produc-tivity languages.

3 Technical Objectives

The HPEC-SI program uses three principal metrics tomeasure the progress of its efforts:

� Portability (reduction in lines-of-code to changeport/scale to new system);

� Productivity (reduction in overall lines-of-code);

� Performance (computation and communicationbenchmarks).

Traditionally, it has always been possible to improve intwo of the above areas while sacrificing the third. HPEC-SI aims to improve quantitatively in all three areas.

1

Page 2: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Report Documentation Page Form ApprovedOMB No. 0704-0188

Public reporting burden for the collection of information is estimated to average 1 hour per response, including the time for reviewing instructions, searching existing data sources, gathering andmaintaining the data needed, and completing and reviewing the collection of information. Send comments regarding this burden estimate or any other aspect of this collection of information,including suggestions for reducing this burden, to Washington Headquarters Services, Directorate for Information Operations and Reports, 1215 Jefferson Davis Highway, Suite 1204, ArlingtonVA 22202-4302. Respondents should be aware that notwithstanding any other provision of law, no person shall be subject to a penalty for failing to comply with a collection of information if itdoes not display a currently valid OMB control number.

1. REPORT DATE 20 AUG 2004

2. REPORT TYPE N/A

3. DATES COVERED -

4. TITLE AND SUBTITLE High Performance Embedded Computing Software Initiative (HPEC-SI)

5a. CONTRACT NUMBER

5b. GRANT NUMBER

5c. PROGRAM ELEMENT NUMBER

6. AUTHOR(S) 5d. PROJECT NUMBER

5e. TASK NUMBER

5f. WORK UNIT NUMBER

7. PERFORMING ORGANIZATION NAME(S) AND ADDRESS(ES) MIT Lincoln Laboratory, Lexington, MA 02420

8. PERFORMING ORGANIZATIONREPORT NUMBER

9. SPONSORING/MONITORING AGENCY NAME(S) AND ADDRESS(ES) 10. SPONSOR/MONITOR’S ACRONYM(S)

11. SPONSOR/MONITOR’S REPORT NUMBER(S)

12. DISTRIBUTION/AVAILABILITY STATEMENT Approved for public release, distribution unlimited

13. SUPPLEMENTARY NOTES See also ADM001694, HPEC-6-Vol 1 ESC-TR-2003-081; High Performance Embedded Computing(HPEC) Workshop (7th)., The original document contains color images.

14. ABSTRACT

15. SUBJECT TERMS

16. SECURITY CLASSIFICATION OF: 17. LIMITATION OF ABSTRACT

UU

18. NUMBEROF PAGES

34

19a. NAME OFRESPONSIBLE PERSON

a. REPORT unclassified

b. ABSTRACT unclassified

c. THIS PAGE unclassified

Standard Form 298 (Rev. 8-98) Prescribed by ANSI Std Z39-18

Page 3: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

HPEC-SI expects to achieve at least a 3x reduction inthe number code changes necessary to port an applica-tion across computing platforms. This improvement willprimarily be achieved through the use and enhancementof open software standards (MPI and VSIPL) that willinsulate applications from the details of the underlyinghardware. An equivalent reduction in code changes willalso be seen when porting from one size of platform toanother. This will be achieved by the development of aunified computation and computation standard (ParallelVSIPL) which will allow applications to be moved froma computer with N processors to a computer with M pro-cessors with minimal code changes.

HPEC-SI expects to achieve a 3x reduction in the totalnumber of lines of code necessary to implement an appli-cation. This productivity improvement will be primarilybe through the use of higher level object oriented lan-guages (e.g. C++) as well as a unified computation andcommunication library which will abstract away many ofcode intensive details of writing a parallel program.

HPEC-SI expects to achieve a 1.5x increase in perfor-mance over existing approaches on some computationand communication benchmarks. This is primarily dueto an increased level of abstraction which allows the in-creased use of “early binding” in the application, in thelibrary and in the compiler. [Early binding is the pro-cess of building data structures in advance that increaseperformance at runtime.]

4 Summary

The current achievements of HPEC-SI include the suc-cessful utilization of the Vector Signal and Image Pro-cessing Library (VSIPL) and the Message Passing In-terface to demonstrate a tactical synthetic aperture radar(SAR) code running without modifications and at highperformance on parallel embedded, server and clustersystems. HPEC-SI is also creating the first parallel objectoriented computation standard by adding these exten-sions to the VSIPL standard. The parallel VSIPL++ stan-dard will allow high performance parallel signal and im-age processing applications to take advantage of the in-creased productivity offered by object oriented programas well as the performance advantages found using ad-vanced expression template technology. The draft objectoriented specification and reference code are both avail-able on the HPEC-SI website and are being tested by a

variety of early adopters. Finally, HPEC-SI is evaluatingadvanced software technologies such as fault toleranceand the use of higher level languages to determine whichaspects are ready for future standardization. Combined,all of these efforts are successfully changing the state-of-the-practice in programming DoD HPEC SIP systems.Critical to this effort has been the availability of a widevariety of HPCMO systems (Mercury, Sky, SGI, Com-paq, IBM, Linux, andFPGA) that has allowed the testingand demonstration of advanced software technologies forDoD signal and image processing applications.

References

[1] Message Passing Interface (MPI), http://www.mpi-forum.org/

[2] Vector, Signal, Image Processing Libraryhttp://www.vsipl.org/

[3] High Performance Embedded Computing SoftwareInitiative http://www.hpec-si.org/

[4] E. Baranoski, High Performance EmbeddedComputing Software Initiative (HPEC-SI), DoDHPCMO Signal/Image Processing Forum (SIP2001), May 15, 2001, Biloxi, MS

[5] D. Campbell and M. Richards, Object Oriented Ex-tensions to the Vector, Signal, and Image Process-ing Library (VSIPL) standard, DoD HPCMO Sig-nal/Image Processing Forum (SIP 2002/GOMAC2002), Mar 13, 2002, Monterey, CA

[6] D. Campbell C++ and parallelism extensions tothe VSIPL standard, GOMACTECH 2003, Apr 4,2003, Tampa, FL

[7] C. Holland, Keynote Address, High PerformanceEmbedded Computing Workshop (HPEC 2001),Sep. 25, 2001, Lexington, MA

[8] C. Holland, The Convergence of HPC and HPEC,Panel at Supercomputing 2001, Nov. 13, Denver,CO

[9] J. Grosh, Invited Talk: A DoD Perspective on HighPerformance Computing, High Performance Em-bedded Computing Workshop (HPEC 2001), Nov.27, 2001, Lexington, MA

2

Page 4: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

[10] J. Kepner, Defining Future High Performance Em-bedded Computing Software, DoD HPCMO Sig-nal/Image Processing Forum (SIP 2001), May 15,2001, Biloxi, MS

[11] J. Kepner, High Performance Embedded Comput-ing Software Initiative (HPEC-SI), DoD HPCMOSignal/Image Processing Forum (SIP 2002/GO-MAC 2002), Mar 13, 2002, Monterey, CA

[12] J. Kepner, DoD Sensor Processing: Applicationsand Supporting Software Technology, Supercom-puting 2002, Baltimore, MD, Nov 2002.

[13] J. Kepner, High Performance Embedded Comput-ing Software Initiative (HPEC-SI), HPCMO User’sGroup Conference, Jun 10 2003, Bellevue, WA

[14] J. Kepner, High Performance Embedded Comput-ing Software Initiative (HPEC-SI), GOMACTECH2003, Apr 4, 2003, Tampa, FL

[15] M. Mitchell and J. Oldham, VSIPL++: IntuitiveProgramming Using C++ Templates HPEC 2002,Sep 2002, Lexington, MA

[16] M. Mitchell and J. Oldham, Parallel VSIPL usingVSIPL++, Supercomputing 2002, Baltimore, MD,Nov 2002.

[17] M. Mitchell and J. Oldham, VSIPL++: Intu-itive Programming Using C++ Templates GO-MACTECH 2003, Apr 4, 2003, Tampa, FL

[18] Maj Gen P. Nielsen, Keynote Address: Perspectiveon Embedded Computing HPEC 2002 Workshop,Lexington, MA, Sep 2002

[19] E. Rutledge and J. Kepner, PVL An Object Ori-ented Software Library for Parallel Signal Pro-cessing, Cluster 2001, October 9, 2001, NewportBeach, CA

[20] M. Richards et al, Development Status of the Vec-tor, Signal, and Image Processing Library (VSIPL),HPEC 2002 Workshop, Lexington, MA, Sep 2002

[21] T. Skjellum and G. Bourdreaux, Early Binding andC++ for VSIPL and VSIPL++, DoD HPCMO Sig-nal/Image Processing Forum (SIP 2002/GOMAC2002), Mar 13, 2002, Monterey, CA

[22] T. Skjellum and G. Bourdreaux, Early Bindingand C++ for VSIPL and VSIPL++, GOMACTECH2003, Apr 4, 2003, Tampa, FL

[23] H. Spaanenburg, Virtualization, DoD HPCMO Sig-nal/Image Processing Forum (SIP 2002/GOMAC2002), Mar 13, 2002, Monterey, CA

[24] B. Sroka, Standards-Based Real-Time EmbeddedHigh Performance Computing: Common ImageryProcessor, DoD HPCMO Signal/Image ProcessingForum (SIP 2001), May 15, 2001, Biloxi, MS

[25] B. Sroka and D. Szakovits, Standards-Based Real-Time Embedded High Performance Computing:Common Imagery Processor, High PerformanceEmbedded Computing Workshop (HPEC 2001),Nov. 29, 2001, Lexington, MA

[26] B. Sroka, Standards-Based Real-Time EmbeddedHigh Performance Computing: Common ImageryProcessor, DoD HPCMO Signal/Image ProcessingForum (SIP 2002/GOMAC 2002), Mar 13, 2002,Monterey, CA

[27] B. Sroka and D. Szakovits, Standards-Based Real-Time Embedded High Performance Computing:Common Imagery Processor, HPEC 2002, Sep2002, Lexington, MA

[28] B. Sroka, Standards-Based Real-Time EmbeddedHigh Performance Computing: Common ImageryProcessor, GOMACTECH 2003, Apr 4, 2003,Tampa, FL

3

Page 5: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-1HPEC-SI

MITRE AFRLMIT Lincoln Laboratorywww.hpec-si.org

High Performance Embedded ComputingSoftware Initiative (HPEC-SI)

Dr. Jeremy Kepner / Lincoln Laboratory

This work is sponsored by the Department of Defense under Air Force Contract F19628-00-C-0002. Opinions, interpretations, conclusions, and recommendations are those of the author and are not necessarily endorsed by the United States Government.

Page 6: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-2www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Outline

• Goals• Program Structure• Introduction

• Demonstration

• Development

• Applied Research

• Future Challenges

• Summary

Page 7: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-3www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Overview - High Performance Embedded Computing (HPEC) Initiative

Enhanced Tactical Radar Correlator(ETRAC)

ASARS-2

Shared memory serverEmbedded

multi-processor

Common Imagery Processor (CIP)

HPEC Software Initiative

Programs

Demonstration

Development

Applied Research

DARPA

Challenge: Transition advanced software technology and practices into major defense acquisition programs

Page 8: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-4www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Why Is DoD Concerned with Embedded Software?

$0.0

$1.0

$2.0

$3.0

FY98

Source: “HPEC Market Study” March 2001

Estimated DoD expenditures for embedded signal and image processing hardware and software ($B)

• COTS acquisition practices have shifted the burden from “point design” hardware to “point design” software

• Software costs for embedded systems could be reduced by one-third with improved programming models, methodologies, and standards

• COTS acquisition practices have shifted the burden from “point design” hardware to “point design” software

• Software costs for embedded systems could be reduced by one-third with improved programming models, methodologies, and standards

Page 9: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-5www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Issues with Current HPEC Development Inadequacy of Software Practices & Standards

NSSNAEGIS

Rivet Joint

Standard Missile

PredatorGlobal Hawk

U-2

JSTARS MSAT-Air

P-3/APS-137

FF--1616

MK-48 Torpedo

Today – Embedded Software Is: • Not portable• Not scalable • Difficult to develop• Expensive to maintain

Today – Embedded Software Is: • Not portable• Not scalable • Difficult to develop• Expensive to maintain

System Development/Acquisition Stages4 Years 4 Years 4 Years

Program MilestonesSystem Tech. DevelopmentSystem Field DemonstrationEngineering/ manufacturing DevelopmentInsertion to Military AssetSignal Processor Evolution 1st gen. 2nd gen. 3rd gen. 4th gen. 5th gen. 6th gen.

• High Performance Embedded Computing pervasive through DoD applications

– Airborne Radar Insertion program 85% software rewrite for each hardware platform

– Missile common processor Processor board costs < $100k Software development costs > $100M

– Torpedo upgrade Two software re-writes required after changes in hardware design

Page 10: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-6www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Evolution of Software Support Towards“Write Once, Run Anywhere/Anysize”

COTS development

DoD software development

• Application software has traditionally been tied to the hardware

• Support “Write Once, Run Anywhere/Anysize”

• Many acquisition programs are developing stove-piped middleware “standards”

• Open software standards can provide portability, performance, and productivity benefits

1990

ApplicationApplication

VendorSoftwareVendor SW

20052000

ApplicationApplication

Middleware

Middleware

EmbeddedStandards

VendorSoftware

VendorSoftware

Application Application ApplicationMiddleware

Page 11: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-7www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Quantitative Goals & Impact

Performance (1.5x)

Porta

bilit

y (3

x) Productivity (3x)

HPECSoftwareInitiative

Demonstrate

Develop

Prot

otyp

e

Object Oriented

Open

Sta

ndar

ds

Interoperable & Scalable

Program Goals• Develop and integrate software

technologies for embedded parallel systems to address portability, productivity, and performance

• Engage acquisition community to promote technology insertion

• Deliver quantifiable benefits

Program Goals• Develop and integrate software

technologies for embedded parallel systems to address portability, productivity, and performance

• Engage acquisition community to promote technology insertion

• Deliver quantifiable benefits

Portability: reduction in lines-of-code to change port/scale to new system

Productivity: reduction in overall lines-of-code

Performance: computation and communication benchmarks

Page 12: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-8www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Organization

DemonstrationDr. Keith Bromley SPAWARDr. Richard Games MITREDr. Jeremy Kepner, MIT/LL Mr. Brian Sroka MITREMr. Ron Williams MITRE

...

Government Lead

Dr. Rich Linderman AFRL

Technical Advisory BoardDr. Rich Linderman AFRLDr. Richard Games MITREMr. John Grosh OSDMr. Bob Graybill DARPA/ITODr. Keith Bromley SPAWARDr. Mark Richards GTRIDr. Jeremy Kepner MIT/LL

Executive CommitteeDr. Charles Holland PADUSD(S+T)…

DevelopmentDr. James Lebak MIT/LLDr. Mark Richards GTRIMr. Dan Campbell GTRI Mr. Ken Cain MERCURY Mr. Randy Judd SPAWAR

...

Applied ResearchMr. Bob Bond MIT/LLMr. Ken Flowers MERCURYDr. Spaanenburg PENTUMMr. Dennis Cottel SPAWARCapt. Bergmann AFRLDr. Tony Skjellum MPISoft

...

Advanced ResearchMr. Bob Graybill DARPA

• Partnership with ODUSD(S&T), Government Labs, FFRDCs, Universities, Contractors, Vendors and DoD programs

• Over 100 participants from over 20 organizations

• Partnership with ODUSD(S&T), Government Labs, FFRDCs, Universities, Contractors, Vendors and DoD programs

• Over 100 participants from over 20 organizations

Page 13: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-9www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

HPEC-SI Capability Phases•First demo successfully completed•SeconddDemo Selected•VSIPL++ v0.8 spec completed•VSIPL++ v0.2 code available•Parallel VSIPL++ v0.1 spec completed•High performance C++ demonstrated

Time

Demonstrate insertions into fielded systems (CIP)• Demonstrate 3x portability

High-level code abstraction (AEGIS)• Reduce code size 3x

Unified embedded computation/ communication standard•Demonstrate scalability

Demonstration: Existing Standards

Development: Object-Oriented Standards

Applied Research: Unified Comp/Comm Lib

Demonstration: Object-Oriented Standards

Demonstration: Unified Comp/Comm Lib

Development: Unified Comp/Comm Lib

Func

tiona

lity

VSIPL++

prototypeParallelVSIPL++

VSIPLMPI

VSIPL++

ParallelVSIPL++

Phase 3Applied Research: Hybrid ArchitecturesPhase 2

Development: Fault tolerance

Applied Research: Fault tolerance

prototypePhase 1

Page 14: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-10www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Outline

• Common Imagery Processor• AEGIS BMD (planned)

• Introduction

• Demonstration

• Development

• Applied Research

• Future Challenges

• Summary

Page 15: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-11www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Common Imagery Processor - Demonstration Overview -

Common Imagery Processor (CIP) is a cross-service component

38.5”

ETRAC

JSIPS and CARSJSIPS-N and TIS

TEG and TES

CIP*

Sample list of CIP modes• U-2 (ASARS-2, SYERS)• F/A-18 ATARS (EO/IR/APG-73)• LO HAE UAV (EO, SAR)• System Manager

* CIP picture courtesy of Northrop Grumman Corporation

Page 16: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-12www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Common Imagery Processor - Demonstration Overview -

• Demonstrate standards-based platform-independent CIP processing (ASARS-2)

• Assess performance of current COTS portability standards (MPI, VSIPL)

• Validate SW development productivity of emerging Data Reorganization Interface

• MITRE and Northrop Grumman

• Demonstrate standards-based platform-independent CIP processing (ASARS-2)

• Assess performance of current COTS portability standards (MPI, VSIPL)

• Validate SW development productivity of emerging Data Reorganization Interface

• MITRE and Northrop Grumman

Shared-Memory Servers

APG 73SAR IF

EmbeddedMulticomputers

Common Imagery Processor

Single code baseoptimized for all high

performance architectures provides future flexibility

Commodity ClustersMassively Parallel Processors

Page 17: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-13www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Software Ports

Embedded Multicomputers• CSPI - 500MHz PPC7410 (vendor loan)• Mercury - 500MHz PPC7410 (vendor loan)• Sky - 333MHz PPC7400 (vendor loan)• Sky - 500MHz PPC7410 (vendor loan)

Mainstream Servers• HP/COMPAQ ES40LP - 833-MHz Alpha ev6 (CIP hardware)• HP/COMPAQ ES40 - 500-MHz Alpha ev6 (CIP hardware)• SGI Origin 2000 - 250MHz R10k (CIP hardware)• SGI Origin 3800 - 400MHz R12k (ARL MSRC)• IBM 1.3GHz Power 4 (ARL MSRC)• Generic LINUX Cluster

Page 18: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-14www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Portability: SLOC Comparison

VSIPL DRI VSIPLSequential Shared Memory VSIPL

0

5000

10000

15000

20000

25000

30000

35000

MainSupport

KernelTotal

MainSupport

KernelTotal

MainSupport

KernelTotal

MainSupport

KernelTotal

SLOCs VSIPL SLOCs

~1% Increase ~5% Increase

Page 19: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-15www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Shared Memory / CIP Server versus Distributed Memory / Embedded Vendor

1.00E-01

1.00E+00

1.00E+01

1 2 4 8 16Number of Proc

Latency requirementShared memory

limit for this Alpha server

Application can now exploit many more processors, embedded processors (3x form factor advantage) and Linux clusters (3x cost advantage)

Page 20: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-16www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Form Factor Improvements

Current Configuration Possible Configuration

IOP IOP

IFP1

6UVME

IFP2

• IOP could support 2 G4 IFPs

• form factor reduction (x2)

• 6U VME can support 5 G4 IFPs

• processing capability increase (x2.5)

• IOP: 6U VME chassis (9 slots potentially available)

• IFP: HP/COMPAQ ES40LP

Page 21: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-17www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

HPEC-SI Goals1st Demo Achievements

AchievedGoal 3x

Portability

Achieved*Goal 3x

ProductivityHPEC

SoftwareInitiative

Demonstrate

Develop

Prot

otyp

e

Object Oriented

Open

Sta

ndar

ds

Interoperable & Scalable

Portability: zero code changes requiredProductivity: DRI code 6x smaller vs MPI (est*)Performance: 2x reduced cost or form factor

Portability: reduction in lines-of-code to change port/scale to new system

Productivity: reduction in overall lines-of-code

Performance: computation and communication benchmarks

Performance Goal 1.5xAchieved

Page 22: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-18www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Outline

• Object Oriented (VSIPL++)• Parallel (||VSIPL++)

• Introduction

• Demonstration

• Development

• Applied Research

• Future Challenges

• Summary

Page 23: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-19www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Emergence of Component Standards

P0 P1 P2 P3

Node Controller

Parallel Embedded Processor

Data Communication:MPI, MPI/RT, DRI

System Controller

ControlCommunication:

CORBA, HP-CORBA

OtherComputersConsoles Computation:

VSIPLVSIPL++, ||VSIPL++

DefinitionsVSIPL = Vector, Signal, and Image

Processing Library||VSIPL++ = Parallel Object Oriented VSIPLMPI = Message-passing interfaceMPI/RT = MPI real-timeDRI = Data Re-org InterfaceCORBA = Common Object Request Broker

ArchitectureHP-CORBA = High Performance CORBA

HPEC Initiative - Builds on completed research and existing

standards and libraries

Page 24: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-20www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

VSIPL++ Productivity Examples

BLAS zherk Routine

• BLAS = Basic Linear Algebra Subprograms• Hermitian matrix M: conjug(M) = Mt

• zherk performs a rank-k update of Hermitian matrix C:C ← α ∗ A ∗ conjug(A)t + β ∗ C

• VSIPL codeA = vsip_cmcreate_d(10,15,VSIP_ROW,MEM_NONE);C = vsip_cmcreate_d(10,10,VSIP_ROW,MEM_NONE);tmp = vsip_cmcreate_d(10,10,VSIP_ROW,MEM_NONE);vsip_cmprodh_d(A,A,tmp); /* A*conjug(A)t */vsip_rscmmul_d(alpha,tmp,tmp);/* α*A*conjug(A)t */vsip_rscmmul_d(beta,C,C); /* β*C */vsip_cmadd_d(tmp,C,C); /* α*A*conjug(A)t + β*C */vsip_cblockdestroy(vsip_cmdestroy_d(tmp));vsip_cblockdestroy(vsip_cmdestroy_d(C));vsip_cblockdestroy(vsip_cmdestroy_d(A));

• VSIPL++ code (also parallel)Matrix<complex<double> > A(10,15);Matrix<complex<double> > C(10,10);C = alpha * prodh(A,A) + beta * C;

Sonar Example• K-W Beamformer • Converted C VSIPL to

VSIPL++• 2.5x less SLOCs

Sonar Example• K-W Beamformer • Converted C VSIPL to

VSIPL++• 2.5x less SLOCs

Page 25: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-21www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

PVL PowerPC AltiVec Experiments

A=B+C*DA=B+C A=B+C*D+E*F

A=B+C*D+E/FSoftware Technology

Results• Hand coded loop achieves good

performance, but is problem specific and low level

• Optimized VSIPL performs well for simple expressions, worse for more complex expressions

• PETE style array operators perform almost as well as the hand-coded loop and are general, can be composed, and are high-level

AltiVec loop VSIPL (vendor optimized) PETE with AltiVec

• C• For loop• Direct use of AltiVec extensions• Assumes unit stride• Assumes vector alignment

• C• AltiVec aware VSIPro Core Lite

(www.mpi-softtech.com)• No multiply-add• Cannot assume unit stride• Cannot assume vector alignment

• C++• PETE operators• Indirect use of AltiVec extensions• Assumes unit stride• Assumes vector alignment

Page 26: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-22www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Parallel Pipeline Mapping

ParallelComputer

Mapping

BeamformXOUT = w *XIN

DetectXOUT = |XIN|>c

FilterXOUT = FIR(XIN )

Signal Processing Algorithm

• Data Parallel within stages• Task/Pipeline Parallel across stages • Data Parallel within stages• Task/Pipeline Parallel across stages

Page 27: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-23www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Scalable Approach

Single Processor Mapping#include <Vector.h>#include <AddPvl.h>

void addVectors(aMap, bMap, cMap) {Vector< Complex<Float> > a(‘a’, aMap, LENGTH);Vector< Complex<Float> > b(‘b’, bMap, LENGTH);Vector< Complex<Float> > c(‘c’, cMap, LENGTH);

b = 1;c = 2;a=b+c;

}

A = B + C

Multi Processor Mapping

A = B + C

• Single processor and multi-processor code are the same• Maps can be changed without changing software• High level code is compact

• Single processor and multi-processor code are the same• Maps can be changed without changing software• High level code is compact

Lincoln Parallel Vector Library (PVL)

Page 28: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-24www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Outline

• Fault Tolerance• Parallel Specification• Hybrid Architectures (see SBR)

• Introduction

• Demonstration

• Development

• Applied Research

• Future Challenges

• Summary

Page 29: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-25www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Dynamic Mapping for Fault ToleranceMap1

Spare

Failure

Parallel Processor

OutputTask

Map2

Nodes: 1,3

XOUTXIN Nodes: 0,2

Map0

Nodes: 0,1

InputTask

• Switching processors is accomplished by switching maps• No change to algorithm required• Developing requirements for ||VSIPL++

• Switching processors is accomplished by switching maps• No change to algorithm required• Developing requirements for ||VSIPL++

Page 30: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-26www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Parallel Specification

Parallel performanceClutter Calculation (Linux Cluster)

1

10

100

1 2 4 8 16

LinearpMatlab

Number of Processors

Spee

dup

% InitializepMATLAB_Init; Ncpus=com m _vars.comm_size;

% Map X to first half and Y to second half. mapX=map([1 Ncpus/2],{},[1:Ncpus/2])mapY=map([Ncpus/2 1],{},[Ncpus/2+1:Ncpus]);

% Create arrays.X = complex(rand(N,M,mapX),rand(N,M,mapX)); Y = complex(zeros(N,M,mapY);

% Initialize coefficentscoefs = ...weights = ...

% Parallel filter + corner turn.Y(:,:) = conv2(coefs,X); % Parallel matrix multiply.Y(:,:) = weights*Y;

% Finalize pMATLAB and exit.pMATLAB_Finalize; exit;

• Matlab is the main specification language for signal processing• pMatlab allows parallel specifciations using same mapping

constructs being developed for ||VSIPL++

• Matlab is the main specification language for signal processing• pMatlab allows parallel specifciations using same mapping

constructs being developed for ||VSIPL++

Page 31: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-27www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Outline

• Introduction

• Demonstration

• Development

• Applied Research

• Future Challenges

• Summary

Page 32: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-28www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Optimal Mapping of Complex Algorithms

Input

XINXIN

Low Pass Filter

XINXIN

W1W1

FIR1FIR1 XOUTXOUT

W2W2

FIR2FIR2

Beamform

XINXIN

W3W3

multmult XOUTXOUT

Matched Filter

XINXIN

W4W4

FFTFFTIFFTIFFT XOUTXOUT

Application

PowerPCCluster

IntelCluster

Different Optimal Maps

Workstation

EmbeddedMulti-computerEmbedded

BoardHardware

• Need to automate process of mapping algorithm to hardware• Need to automate process of mapping algorithm to hardware

Page 33: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-29www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

HPEC-SI Future Challenges

End of 5Year Plan

Time

Demonstration: Unified Comp/Comm Lib

Demonstration: Fault tolerance

Demonstration: Hybrid Architectures

Func

tiona

lity

FTVSIPL

HybridVSIPL

ParallelVSIPL++

Fault TolerantVSIPL

HybridVSIPL

Portability acrossarchitectures• RISC/FPGA Transparency

Phase 5Applied Research:

Higher Languages (Java?)Phase 4Development: Self-optimization

Applied Research: PCA/Self-optimization

prototypePhase 3

Applied Research: Hybrid Architectures

Development: Hybrid Architecturesprototype

Development: Fault tolerance

DemonstrateFault Tolerance• Increased reliability

Unified Comp/Comm Standard• Demonstrate scalability

Page 34: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-30www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Summary

• HPEC-SI Program on track toward changing software practice in DoD HPEC Signal and Image Processing

– Outside funding obtained for DoD program specific activities (on top of core HPEC-SI effort)

– 1st Demo completed; 2nd selected– Worlds first parallel, object oriented standard– Applied research into task/pipeline parallelism; fault tolerance;

parallel specification

• Keys to success– Program Office Support: 5 Year Time horizon better match to

DoD program development– Quantitative goals for portability, productivity and performance– Engineering community support

Page 35: High Performance Embedded Computing Software Initiative ...development and applied research. Each of these activ-ities is overseen by a Working Group. The demonstra-tions team Prime

Slide-31www.hpec-si.org

MITRE AFRLMIT Lincoln Laboratory

Web Links

High Performance Embedded Computing Workshophttp://www.ll.mit.edu/HPEC

High Performance Embedded Computing Software Initiativehttp://www.hpec-si.org/

Vector, Signal, and Image Processing Libraryhttp://www.vsipl.org/

MPI Software Technologies, Inc.http://www.mpi-softtech.com/Data Reorganization Initiative

http://www.data-re.org/CodeSourcery, LLC

http://www.codesourcery.com/MatlabMPI

http://www.ll.mit.edu/MatlabMPI