14
FOCAP Tool Framework for Optimizing Computer Architecture Performance Associate Professor: Adrian FLOREA, PhD Students: Andrei Klein Florin Badea Victor Advanced Computer Architecture & Processing Systems Research Lab - http://acaps.ulbsibiu.ro/index.php/en/ InfoMatrix 2013 Programming Section

Focap

Embed Size (px)

DESCRIPTION

This powerpoints presention presents our new developed FOCAP tool (Framework for optimizing the Computer Architecture Performance) in order to gain a better understanding and familiarity of the students with new advanced learning methods and tools in the Microarchitecture Simulation and Optimization. At this stage, FOCAP allows a mono-objective automatic design space exploration (DSE) of a superscalar processor by varying several architectural parameters. Such DSE tools are very useful, since it is impossible to simulate all the configurations of a highly parameterized microarchitecture. Therefore, heuristic methods, local search algorithms and advanced machine learning methods are good candidates to find near-optimal configurations by evaluating a reduced number of configurations from the huge design space. Our application falls in the European trend of Framework projects that aim expanding research towards the advanced education field using modern learning technologies. The FOCAP tool facilitates the comprehending of theoretical questions, thus allowing students to feel more confident when studying microarchitecture optimization and DSE-related issues.

Citation preview

Page 1: Focap

FOCAP ToolFramework for Optimizing Computer Architecture

Performance

Associate Professor: Adrian FLOREA, PhD

Students: Andrei Klein Florin

Badea Victor

Advanced Computer Architecture & Processing Systems Research Lab -http://acaps.ulbsibiu.ro/index.php/en/

InfoMatrix 2013Programming Section

Page 2: Focap

Understand the importance of each component of the processor

Understand the need for Automatic Design Space Exploration

See the impact on productivity vs. manual exploration

Good start in Research

Combining concepts from different Computer Science domains:microarchitecture simulation and optimization, networking,evolutionary computing, programming, reliability, database

Open Source code http://webspace.ulbsibiu.ro/adrian.florea/html/simulatoare/FOCAP_Tool.rar

Teaching Tool- in Computer Architecture -

Page 3: Focap

Optimization Algorithms inDesign Space Exploration

Enumerative

(exhaustive search)

Search and optimization

algorithms

Heuristic

Deterministic

Hill Climbing

Stochastic

Simulating Annealing

Genetic Algorithms

Page 4: Focap

FOCAP Software Design – User View

Page 5: Focap

FOCAP Client. The microarchitecture simulator

Page 6: Focap

Client – Server Architecture

Client

• Send client performance & nr of threads

• Wait for work from the server

• Process work

• Send results back to the server

Server

• Receive client performance & nr of threads

• Send request

• Store connection info for future use

• If request times out, send request elsewhere

Page 7: Focap

FOCAP Server. The Communication and DSE algorithm

Scalability

Page 8: Focap

FOCAP Server (continued)

Concurrency

Page 9: Focap

Client fault tolerant

Runtime client connection capability

Timers

Checkpointing

Database storage of simulated configurations

FOCAP Server (continued)

Reliability

Page 10: Focap

C

Server

Client

MySQL

Server (Data storage)

C#

Interface (Java and Objective C coming soon)

Technologies Used

Page 11: Focap

Some Simulation Results

0

100000

200000

300000

400000

500000

600000

0 100 200 300 400 500 600

C

P

U

c

y

c

l

e

s

Simulated configurations

(a) Microarchitecture optimizationusing Hill-Climbing(b) Optimal configuration at each step

0

100000

200000

300000

400000

500000

600000

0 5 10 15 20 25

C

P

U

c

y

c

l

e

s

Number of Hill-Climbing iterations

(a)

(b)

Page 12: Focap

FOCAP is:

very good education tool in Computer Architecture

free availability for use, flexibility, extensibility and portability

Encourages the student to take a research path

Encourages Open Source Projects

Provides a good code implementation for a stable and reliable asynchronous communication system

Emphasizes the importance of a adequate architecture

Conclusions

Page 13: Focap

Extending the performance analysis in order to find optimum configuration from a multi-criteria point of view (processing performance, power consumption) Processor power consumption measurement (integration with CACTI).

Notification System

Bring the UI to the mobile world

Add support for Linux machines

And that’s not all… Further Work

Page 14: Focap

THANK YOU!

Questions ?