CS curricula update proposed: by adding Reconfigurable Computing Reiner Hartenstein TU...

Post on 22-Dec-2015

221 views 0 download

Tags:

Transcript of CS curricula update proposed: by adding Reconfigurable Computing Reiner Hartenstein TU...

CS curricula update

proposed: by addingReconfigurable Computing

Reiner Hartenstein

TU Kaiserslautern

EAB meeting, Philadelphia,1 Nov 2005

© 2005, reiner@hartenstein.de http://hartenstein.de2

TU Kaiserslautern

Computing Curricula 2004 (1)

#R

eco

nfigura

ble

Com

putin

gEm

bedded

Syste

ms

© 2005, reiner@hartenstein.de http://hartenstein.de3

TU Kaiserslautern

Computing Curricula 2004 (2)

#

© 2005, reiner@hartenstein.de http://hartenstein.de4

TU Kaiserslautern

Computing

Curricula 2004 (3)

2.2.1.

© 2005, reiner@hartenstein.de http://hartenstein.de5

TU Kaiserslautern

Computing

Curricula 2004 (4)

EE CE CS SE

© 2005, reiner@hartenstein.de http://hartenstein.de6

TU Kaiserslautern

Computing

Curricula 2004 (5)

EE CE CS SE

SOFTWARE

HARDWARE

© 2005, reiner@hartenstein.de http://hartenstein.de7

TU Kaiserslautern

Computing

Curricula 2004 (6)

EE CE CS SE

SOFTWARE

HARDWARE CONFIGWARE

MORPHWARE

© 2005, reiner@hartenstein.de http://hartenstein.de8

TU KaiserslauternWhat means Morphware, Configware ?

EE CE CS SE

CONFIGWARE

MORPHWARE

© 2005, reiner@hartenstein.de http://hartenstein.de9

TU Kaiserslautern

Paradigm Shifts: Nick Tredennick‘s view

(1)

algorithms variable

resources fixed

instruction-stream-based computing:

µprocessorµprocessor

Software

instruction-stream

algorithms variableonly a single programming source needed

The Mainframe Age

Software Engineering

© 2005, reiner@hartenstein.de http://hartenstein.de10

TU Kaiserslautern

algorithms variable

resources variable

data-stream-based reconfigurable computing:

reconfigurableaccelerators

reconfigurableaccelerators

Paradigm Shifts: Nick Tredennick‘s view

(2)

Configware

resources variable

Flowware

data-stream

algorithms variable

Reconfigurable Computing

Configware Engineering

2 programming source needed

© 2005, reiner@hartenstein.de http://hartenstein.de11

TU Kaiserslautern

Paradigm Shifts: Nick Tredennick‘s view

(3)

algorithms variable

resources fixed

instruction-stream-based computing:

algorithms variable

resources variable

data-stream-based reconfigurable computing:

The Morphware Agedata-streaminstruction-stream

Configware

resources variable

FlowwareSoftware

3 sources acceleratorsacceleratorsµprocessorµprocessor

programmable

algorithms variable algorithms variable

© 2005, reiner@hartenstein.de http://hartenstein.de12

TU KaiserslauternCompilation: Software vs.

Configware

source program

softwarecompiler

software code

Software Engineeri

ng

Software Engineeri

ng

configware code

mapper

configwarecompiler

scheduler

flowware code

source „program“

Configware

Engineering

Configware

Engineering

placement &

routing

data

C, FORTRANMATHLAB

© 2005, reiner@hartenstein.de http://hartenstein.de13

TU Kaiserslautern

Co-Compilation

softwarecompiler

software code

Software / Configware Co-Compiler

Software / Configware Co-Compiler

configware code

mapper

configwarecompiler

scheduler

flowware code

data

C, FORTRAN, MATHLAB

© 2005, reiner@hartenstein.de http://hartenstein.de14

TU Kaiserslautern

Code Destinations

Program Counter

(structural)

Data Counter(s)

softwarecompiler

software code

Software / Configware Co-Compiler

Software / Configware Co-Compiler

configware code

mapper

configwarecompiler

scheduler

flowware code

data

C, FORTRAN, MATHLAB

© 2005, reiner@hartenstein.de http://hartenstein.de15

TU Kaiserslautern

Program Counter

(structural)

Data Counter(s)

softwarecompiler

software code

Software / Configware Co-Compiler

Software / Configware Co-Compiler

configware code

mapper

configwarecompiler

scheduler

flowware code

data

C, FORTRAN, MATHLAB

Inte

r face

© 2005, reiner@hartenstein.de http://hartenstein.de16

TU KaiserslauternHardwired anti machine

(for instance: systolic array)

Program Counter

software code

Data Counter(s)

flowwarecompiler

scheduler

flowware code

data

Inte

r face

© 2005, reiner@hartenstein.de http://hartenstein.de17

TU Kaiserslautern>> Outline <<

•Pervasiveness & Strategic Dimension

•Proposing an update of CS curricula

•Conclusion

•Details of the curricula update proposal

• Illustrating the dual paradigm model

Appe

ndice

s

© 2005, reiner@hartenstein.de http://hartenstein.de18

TU Kaiserslautern

Reconfigurable Computing (RC)

and FPGA in the media

#####

Design Starts until 2010: from 80,000 to 110,000 [Dataquest]

June 2005

fastest growing segment of the semiconductor market: 4 billion US-$ [Dataquest]

© 2005, reiner@hartenstein.de http://hartenstein.de19

TU Kaiserslautern

going into every application area

© 2005, reiner@hartenstein.de http://hartenstein.de20

TU Kaiserslautern

one-clicksearch

http://hartenstein.de/pervasiveness.html

© 2005, reiner@hartenstein.de http://hartenstein.de21

TU Kaiserslauternintensive conference activities

found by Google:

(October 2005)

for a detailed list of RC-related conferences see my enclosed proposal for a new magazine

© 2005, reiner@hartenstein.de http://hartenstein.de22

TU Kaiserslauternexample conference series

http://www.ece.lsu.edu/vaidy/raw06/

© 2005, reiner@hartenstein.de http://hartenstein.de23

TU KaiserslauternFPGAs for Reconfigurable Computing (RC)

compared to µProcessors (intel, ...): speed-up by factors up to x100 and more

Running and airconditioning: reducing the electricity bill up to millions of $ per year

FPGAs reduce power dissipation: MOPS / milliWatts by a factor of x10

*) Field-Programmable Gate Array

even supercomputing goes FPGA* (sgi, Cray, …)

© 2005, reiner@hartenstein.de http://hartenstein.de24

TU Kaiserslautern

Exponential Growth & Strategic Dimension

Reconfigurable Computing (RC) became mainstream years ago, not only in Embedded SystemsEconomic importance has grown exponentially.Strategic dimension has been appreciated.

Education is an essential factor to solve the current complexity crisis and creating a qualified workforce

© 2005, reiner@hartenstein.de http://hartenstein.de25

TU Kaiserslautern

Morphware Age

Our students are not even aware, that we all now live in the Morphware Age, not in the Mainframe AgeChanging this will make CS much more fascinating

© 2005, reiner@hartenstein.de http://hartenstein.de26

TU Kaiserslautern

####10/24/05; Vol. 24 No. 31 --- Ask the Professor: Reconfigurable Computing - By Joab Jackson -- GCN Staff The computer science academic community has investigated the use of field-programmable gate arrays for quite some time. To get beyond the product hype, we interviewed associate professor Kris Gaj of George Mason University’s Department of Electrical and Computer Engineering, who has long been involved in reconfigurable computing. GCN: We’ve heard claims of anything from a 40- to 20,000-fold increase in performance speeds over standard commodity chips. What kind of improvement can users expect from a well-engineered program? Gaj: Our group has developed multiple applications for a few reconfigurable computers, from SRC, SGI and Cray. We have seen speed-ups compared to a single traditional microprocessor (Pentium 4) anywhere from none to over 1,000 [times]. The speed-up really depends on a particular task, and how well this task can be divided into smaller operations that can execute in parallel. [The claim of a] 20,000-times speed-up is probably an exaggeration, unless you use a lot of FPGAs, but such machines would really cost a fortune. GCN: Where is that performance improvement coming from? Gaj: A microprocessor executes instructions sequentially, one by one. A single instruction does only a small part of the job, so it takes a long time to complete the entire sequence of such instructions constituting the program. Additionally, a microprocessor cannot be reconfigured, so a lot of resources may need to be allocated for functions that will never be used by a particular program. An FPGA may execute multiple operations in parallel. Since it is reconfigurable, you do not need to waste any resources, such as circuit area, for implementing operations that are not used by a given program. The contents of an FPGA may also change on the fly, i.e., during the program execution, so you do not need to have all resources tied up at the beginning of computations. GCN: Do you predict companies like Cray and SGI can bring FPGA computing to a broader audience of users? Gaj: I would not expect an FPGA in every PC at home anytime soon. For a couple of years, the primary use of reconfigurable computers will be for scientific computations, such as weather simulations, space exploration, human genome project and simulation of nuclear reactions. These machines should be treated as an alternative for traditional supercomputers, and may eventually outperform and replace some or most of them. For bringing FPGAs to a broader audience, the prices must drop by at least an order of magnitude, and tools must be developed that make the programming of these machines much easier than it is right now. Additionally, in many cases, traditional microprocessors would be completely sufficient for [a] majority of personal and business applications.

http://www.gcn.com/24_31/tech-report/37341-1.html

© 2005, reiner@hartenstein.de http://hartenstein.de27

TU Kaiserslautern>> Proposing an update of CS curricula

<<

•Pervasiveness & Strategic Dimension

•Proposing an update of CS curricula

•Conclusion

•Details of the curricula update proposal

• Illustrating the dual paradigm model

Appe

ndice

s

© 2005, reiner@hartenstein.de http://hartenstein.de28

TU KaiserslauternImportance of embedded

FPGAs

almost 90% of all software is implemented for embedded systems

embedded software doubles every 10 months

FPGAs are inevitable for embedded systems

© 2005, reiner@hartenstein.de http://hartenstein.de29

TU KaiserslauternConfigware and CS curricula

to-day, typical CS graduates are not qualified for this job markethardware / configware / software partitioning problems cannot be handled

… the de facto basic model is a dual-paradigm system, however, not von-Neumann-only… the florishing configware industry is the younger brother of the software industry

© 2005, reiner@hartenstein.de http://hartenstein.de30

TU Kaiserslauterndifficult RC education

fragmentation into many application areas: teaching their own tricks – no common modelunstructured view onto creators‘ architectures, advertized by catchy terms („we are creative“)

no common terminology: maybe, managers do not understand what you are talking aboutconfusing mind set, no computing viewpoint: not seen as a common fundamental paradigm

no clear hierachical view by abstraction levels

© 2005, reiner@hartenstein.de http://hartenstein.de31

TU KaiserslauternCS urgently needed for the

therapy

teach already freshmen by dual-paradigm modelintegrative undergraduate lab courses neededteach code refactoring & algorithmic clevernessCS is the only right point of view to fix all this

© 2005, reiner@hartenstein.de http://hartenstein.de32

TU KaiserslauternStop declining enrollment

making CS more fascinating: innovation by RC

providing RC and embedded system qualifications to our students by common models – not tricks

CS is the only right place to provide all this

reversing our membership development trend ?

© 2005, reiner@hartenstein.de http://hartenstein.de33

TU Kaiserslauternfor course implementation

technology 20 years old, invented 1984 (Xilinx)

software–to-configware migration: all enabling methodologies available, some published in the 70ies or 80ies

© 2005, reiner@hartenstein.de http://hartenstein.de34

TU Kaiserslauternnew workshop series

deadline for submissions: November 27, 2005

http://helios.informatik.uni-kl.de/RCeducation/

© 2005, reiner@hartenstein.de http://hartenstein.de35

TU Kaiserslautern

other curriculum recommendations

Real-Time Systems (Sweden)

Recommendations for Designing New ICT Curricula

WESE - Workshop on Embedded Systems Education

WESE

Chess - Center for Hybrid and Embedded Software Systems

(courses in embedded systems)

(EU) Graduate Curriculum on Embedded Software and Systems

Advanced Real Time Systems

© 2005, reiner@hartenstein.de http://hartenstein.de36

TU KaiserslauternReconfigurable

Computing ?

in these recommendations RC is

not an issue so far:action needed by CS

© 2005, reiner@hartenstein.de http://hartenstein.de37

TU Kaiserslautern>> Conclusion <<

•Pervasiveness & Strategic Dimension

•Proposing an update of CS curricula

•Conclusion

•Details of the curricula update proposal

• Illustrating the dual paradigm model

Appe

ndice

s

© 2005, reiner@hartenstein.de http://hartenstein.de38

TU KaiserslauternConclusions (1)

We need curricula to cope with the clash of cultures by merging all different backgrounds in a systematic wayCS curricula for unifying the foundations

We need innovative lectures and lab courses integrating reconfigurable computing into progressive CS curricula.

We need to counter the current education trend toward specialization

© 2005, reiner@hartenstein.de http://hartenstein.de39

TU KaiserslauternConclusions (2)

CS curricula should adopt the dichotomy of software engineering and configware engineering

Application domain‘s point of views cannot replace the urgently needed CS-based efforts ……..

CS undergraduate curricula must switch from von-Neuman-only to the dual paradigm model

Only CS is qualified to be conductor of RC-related curriculum recommendations and implementation

© 2005, reiner@hartenstein.de http://hartenstein.de40

TU Kaiserslautern

thank you

© 2005, reiner@hartenstein.de http://hartenstein.de41

TU Kaiserslautern

END

© 2005, reiner@hartenstein.de http://hartenstein.de42

TU Kaiserslautern

--