1 / 29

João M. P. Cardoso

Reconfigurable Computing: CHALLENGES. Pedro C. Diniz. João M. P. Cardoso. Portugal. The High Level Conference on Nanotechnologies, Braga, Portugal, 20 November 2007. Outline. Reconfigurable Computing Challenges Role of Reconfigurable Technologies in Future Execution Environments

Download Presentation

João M. P. Cardoso

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Reconfigurable Computing: CHALLENGES Pedro C. Diniz João M. P. Cardoso Portugal The High Level Conference on Nanotechnologies, Braga, Portugal, 20 November 2007

  2. Outline • Reconfigurable Computing • Challenges • Role of Reconfigurable Technologies in Future Execution Environments • Overall Actions

  3. Reconfigurable (Custom) Computing • Hardware resources can be “configured” to a specific architecture • Specialized Functional Elements and Processing Elements • Interconnect between “Nodes” Custom to Data flow in the application • Configurable on-chip memories (size, data-width, indexing) • Execution Models (Pipelined, Multithreading, VLIW) all possible in the same reconfigurable fabric

  4. Customized F(a,b,c,d) Customized memories Customized interconnects Reconfigurable (customizable) Fabrics

  5. Reconfigurable (customizable) Fabrics

  6. Reconfigurable (Custom) Computing • Orders of magnitude of speed-up over traditional computing systems • When? Customization is the key: • High operation- and task-level parallelism • Increased by storage organization (data replication/distribution over multiple on-chip memories) • Non-Standard Numeric Formats (fixed-point, etc.) • Custom Routing

  7. Are Architectures Merging?Multi-(Many)-core vs. Reconfigurable • Regularity of Reconfigurable Fabrics (e.g., FPGAs) allow them to ride Moore Law • Unbelievable large number of devices • Hard-macro cores can be plugged-in Multicore Manycore Reconfigurable Fabrics

  8. S-RAM D-RAM S-RAM D-RAM CPU CPU S-RAM D-RAM S-RAM D-RAM CPU CPU Reconfigurable Computing: Execution Models • Data travel on paths statically or dynamically defined • Many on-chip Memories Configurable memory Configurable logic

  9. Many on-chip Memories Each Array May be accessed in Parallel Custom Pipelining On-chip configurable memories can be adapted to communication needs Replication Increases Data Availability By writing to memories in Tandem using a customized bus S-RAM D-RAM S-RAM D-RAM CPU CPU L1 A_1 S-RAM D-RAM S-RAM D-RAM CPU CPU L2 L3 A_3 A_2 Reconfigurable Computing: Managing Data Availability

  10. Reconfigurable (Custom) Computing • Benefits: • Reconfiguration is ideal for fast prototyping and early evaluation of realistic performance • Performance • Tolerate Defects • Costs: • Added complexity of execution models makes programming very hard (we have not yet solved the parallel programming problem yet, sort of…)

  11. Reconfigurable Computing Many companies: Cray, SGI, SRC, ARC, PACT, PicoChip, Tilera, etc. Based on source: Bezdek, J.C, Fuzzy models - what are they, and why, IEEE Trans. on Fuzzy Systems, 1993. Reconfigurable Computing has already achieved this point!

  12. Reconfigurable Computing • The Sony PSP Example • Reconfigurable Architecture: Virtual Mobile Engine (VME): audio • 24-bit data width • 166 MHz • Single-cycle context switch http://www.hotchips.org/archives/hc16/3_Tue/8_HC16_Sess8_Pres1_bw.pdf

  13. Reconfigurable Computing • The Sony PSP Example • Reconfigurable Architecture: Virtual Mobile Engine (VME): audio • 24-bit data width • 166 MHz • Single-cycle context switch http://www.hotchips.org/archives/hc16/3_Tue/8_HC16_Sess8_Pres1_bw.pdf

  14. Challenges

  15. Programming • Years of efforts on parallelizing compilers yielded meager returns on the potential for concurrent execution • Movement in industry for new concurrent programming paradigms and languages (upc, X-10, Fortress, etc.) Showstopper: Programming is excruciatingly painful… How to make devices like FPGAs easily programmable is a hard research problem, still. Application Code Reconfigurable Architectures and Execution Models Compilation, Synthesis and Optimization

  16. Programming • Future reconfigurable architectures will exacerbate all the programming problems • Issues: • How can programming languages help the compiler? • How can architectures help the compiler and tools? Application Code Reconfigurable Architectures and Execution Models Compilation, Synthesis and Optimization

  17. What is needed? The Looming Software Crisis due to the MULTICORE Menace Saman Amarasinghe, MIT

  18. What is needed?

  19. What is needed? Advances in Computer Architecture Success of Reconfigurable Computing Advances in Tools Advances in Programming Languages Advances in Compilers

  20. Role of Reconfigurable Technologies in Future Execution Environments

  21. Vacuum-tubes, relays Integrated Circuit Nanotechnology Reliable computing machines Unreliable computing machines, crummy components Unreliable computing machines John von-Neumann, Claude Shannon Redundancy to deal with failures Fault-tolerance Defect-tolerance Self-diagnosis Tolerate imperfection Deal with imperfection Assume no imperfection Based on Robinett et al., “Computing with a Trillion Crummy Components,” COMMUNICATIONS OF ACM, Sept. 2007 Technology 1950’s 2015’s? 1960’s Technology Key

  22. 1,000,000,000 Itanium 2 Itanium 100,000,000 P4 P3 10,000,000 P2 Pentium 486 1,000,000 386 286 100,000 8086 10,000 Technology • Uniprocessor Performance (SPECint) From Hennessy and Patterson, Computer Architecture: A Quantitative Approach, 4th edition, 2006 Based on a slide by Saman Amarasinghe, MIT All major manufacturers moving to multicore architectures Number of Transistors Nanotechnology may impose a step to Reconfigurable Computing! Understandable first step

  23. Technology • Success of memories • Scalable, highly regular structures • New cells not working do not compromise chip, reduce size • Reconfigurable computing architectures • Matrix oriented • Similar scalable, regular structures • Cells not working do not compromise chip, reduces number of available resources

  24. Nanotechnology and Reconfigurable Computing: a perfect match? • Future computer substrates of nanotechnology-based devices • likely have structure similar to current reconfigurable architectures • Implication: • Most solutions to reconfigurable computing are likely to be applicable to nanotechnology • Issues exacerbated by unreliability • Tools should reconfigure architectural layer based on defects/faults Nanoarray proposed by Andre DeHon, 2002

  25. Future Nanofabrics: Exploiting Reconfigurability? • Changing Application Requirements • Input Application can have widely varying requirements • First handling some touch-pad interaction, next doing video processing • Real-time versus off-line needs. • Unreliable Computing substrates • Defects/Faults • Comments • No killer-app still for reconfigurability, despite 10+ years of searching • Emerging substrates might prove to be a key ground for reconfiguration as either: • Cost of detection and correction of faults is simply too high • The environment is inherently unreliable

  26. Future Nanofabrics: Programming for Reconfigurability? • No Clear Good Approach Today • Programming Languages and Environments: Too Rigid • Change and Failures are never a first class citizen • Shall we expose some (but not all!) aspects of recovery to the programmer? • Some times failures might not be critical • Need to offer a system with graceful performance degradation

  27. Nanotechnology and Reconfigurable Computing • We have been here before! (a déjà vu)

  28. Overall Actions • We are at an unique opportunity in time • New comers in the game do not need to go through all the steps of the ladder • Opportunity for EU to take the leadership • Key investments (joint efforts on) • Advances in Computer Architecture • Advances in Programming Languages • Advances in Compilers • Advances in Tools

  29. Thank You! • João M. P. Cardoso • jmpc@acm.org • http://prosys.inesc-id.pt/~jmpc

More Related