1 / 22

Liquid Architecture

Liquid Architecture. Microarchitecture Optimization for Embedded Systems. D. Schuehler, B. Brodie, R. Chamberlain, R. Cytron, S. Friedman, J. Fritts, P. Jones, P. Krishnamurthy, J. Lockwood, S. Padmanabhan, and H. Zhang Dept. of Computer Science and Engineering

Download Presentation

Liquid Architecture

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. Liquid Architecture Microarchitecture Optimization for Embedded Systems D. Schuehler, B. Brodie, R. Chamberlain, R. Cytron, S. Friedman, J. Fritts, P. Jones, P. Krishnamurthy, J. Lockwood, S. Padmanabhan, and H. Zhang Dept. of Computer Science and Engineering Washington University in St. Louis Supported by NSF ITR-0313203

  2. Liquid Architecture • Configurable architecture that can adapt to needs of particular application • E.g., within an FPGA • Soft-core processors • E.g., as an embedded processor • Tensilica supports configuration at fab time • Stretch support configuration at run time • Today’s discussion is on performance analysis and configuration choice

  3. ` FPX Event Bus ` FPGA LEONSPARC-compatibleprocessor Memory Controller ExternalMemory StatisticsModule I-CacheD-Cache AHB NetworkInterface Control Packet Processor LED UART APB Boot Rom Adapter Layered Internet Protocol Wrappers Block Diagram

  4. Microarchitecture Configurability • Instruction set • Memory subsystem • Cache size (I and D) • Associativity • Cache line size • Co-processor(s) • Instruction pipeline • Full HDL source is available

  5. Design Flow Internet Write and compile embedded SPARC application with GCC • Identify configuration for candidatearchitecture Execute program on FPX Platform and measure run-time performance Reconfigure FPX hardware via Internet and upload system software.

  6. Choose methods to profile from the user interface Cycle-accurate profiling Method Time / Cycles .text main addQuery findMatch computeKey computeBase computeStep fillQuery Rnd

  7. Method Address Range .text main Lo addQuery 0x4000027C 0x400003EF Hi findMatch computeKey computeBase computeStep fillQuery Rnd

  8. Method Event Bus PC CLK .text Statistics Module main 0x4000035A Lo addQuery 0x4000027C 0x400003EF Hi findMatch computeKey computeBase computeStep fillQuery Rnd

  9. Function Event Bus PC CLK .text Statistics Module Lo main 0x4000027C 0x4000035A 0x400003EF ≤ ≤ Hi addQuery Counter findMatch INCR computeKey computeBase computeStep fillQuery Rnd

  10. Function Event Bus PC CLK .text Statistics Module Lo main 0x4000027C 0x4000035A 0x400003EF ≤ ≤ Hi addQuery Counter findMatch INCR computeKey computeBase Lo 0x400005D8 0x4000035A 0x4000061F ≤ ≤ Hi computeStep fillQuery Counter INCR Rnd

  11. Event Bus PC CLK Statistics Module Lo 0x4000027C 0x4000035A 0x400003EF ≤ ≤ Hi Counter INCR To User Lo 0x400005D8 0x4000035A 0x4000061F ≤ ≤ Hi Counter INCR

  12. Where is time spent? BLASTN biosequence search application

  13. Cache Hits / Misses Read Write Function Time / Cycles .text main addQuery findMatch Expand to measure cache hits/misses computeKey computeBase computeStep fillQuery Rnd

  14. Measure Several Configurations

  15. Impact of D-cache Configuration BLASTN biosequence search application

  16. Impact of I-cache Configuration BLASTN biosequence search application

  17. Pipeline Stalls Branch Predict Function Time / Cycles CacheHits / Misses Read Write .text main addQuery findMatch computeKey computeBase computeStep fillQuery Rnd

  18. Time for Single Run Almost 2 orders of magnitude faster than simulation

  19. Implications of Slow Simulation • Focus has historically been on measuring the performance of a single thread of a single application • Real apps are often executed in a multitasking environment • Impacts cache behavior • Ignores OS (system call) performance • Liquid architecture system enables direct measurement, including OS

  20. OS Boot Sequence

  21. Summary • Run-time reconfigurable processors will be available sooner rather than later • Determining desired configuration is a difficult design task • Large search space • Depends on accurate performance data • Liquid architecture system enables direct measurement of performance properties

  22. Current and Future Work • Evaluation of several arch. design ideas • Automated search of the design space • Characterizing performance analysis methods • Analytic models • Simulation models • Direct execution models • Usable as is for evaluating soft-core procs • Like to extend to higher-speed procs

More Related