A Tool for Teaching and Learning of Design
Space Exploration on Processor Architectures
Erick Rocha Amorim, Liana Duenha, Ricardo Santos
Federal University of Mato Grosso do Sul - Campo Grande-MS - Brazil
Intro & Motivation
• Design Space Exploration (DSE): widespread engineering activity, crucial to
the development of circuits and computing systems.
• The Association for Computing Machinery (ACM) curricular guidelines
includes DSE as a required topic for Computer Engineering (CE) and as a
elective topic for Computer Science (CS) undergraduate programs.
• DSE does not seem to be often addressed in undergraduate programs
curricula in Brazil.
• MultiExplorer is a DSE toolset introduced in 2015 with research purposes
on exploring solutions for heterogeneous computing systems.
Goals
• Understanding how the DSE topic is used in CS and CE programs in
Brazil.
• Enhance MultiExplorer's usability and evaluate it as a DSE
educational tool.
MultiExplorer Workflow
Methodology
The work can be organized in three steps:
• Curricula survey.
• MultiExplorer improvements.
• Case study.
Curricula Analysis Summary
Topic Search Terms Computer Computer Total
Engineering Science
Computer Architecture computer(s) architecture; computer(s) 22 53 75
and Organization organization.
Circuits circuit(s); integrated circuit(s). 22 42 64
Circuit Design integrated circuit(s) design;circuit(s) 9 4 13
design; design of integrated circuit(s);
design of circuit(s).
DSE DSE; design space exploration; design 0 1 1
automation; VLSI design automation.
Total 22 67 89
MultiExplorer
MultiExplorer should be improved to be used as a DSE learning tool for
undergrad students…
• setting up the tool's environment was a task that students often
had difficulty or weren't able to perform;
• the tool had no graphical user interface: only the terminal and text
files could be used for input and output (an issue for some
students).
MultiExplorer Enhancement
• Docker environment.
• Pre-compiled simulators.
• Scripts to automatize the installation and setup processes.
• Graphical user interface (GUI).
Case study
• Hands-on mini-course.
• Student evaluation.
• Tool evaluation (TAM).
Case Study
Mini-course (8h-10h) topics:
• Theoretical introduction;
• Introduction to the MultiExplorer tool;
• DSE-guided experiments;
• Open-Ended questions;
• Report;
• User’s experience survey.
Results
Students evaluation results. The grades (one to five) of the three open-ended
questions and the experimental reports are stacked bottom up.
Results
Results from the statements on perceived ease-of-use (q1-q4).
Subjects graded the statements from -2 (Totally disagree) to 2 (Totally Agree).
Results
Results from the statements on perceived usefulness (q5-q8) and the learning experience (q9).
Subjects graded the statements from -2 (Totally disagree) to 2 (Totally Agree).
Final Remarks
• Prospect is positive, but sample sizes were small.
• Further investigation on formal course and on a larger set of students
might clarify and explain better some issues.
• A survey to understand the reasons why this topic is not covered by most
of the undergrad programs in Brazil.
• MultiExplorer is an open-source project available on Github:
https://github.com/lscad-facom-ufms/multiexplorer.
Acknowledgments
This study was financed in part by the Federal University of Mato
Grosso do Sul (UFMS) (https://www.ufms.br) and the Coordenação de
Aperfeiçoamento de Pessoal de Nível Superior (CAPES) – Brasil –
Finance Code 001 (https://www.gov.br/capes/pt-br).
A Tool for Teaching and Learning of Design
Space Exploration on Processor Architectures
Thank you!
Erick Rocha Amorim, Liana Duenha, Ricardo Santos
Federal University of Mato Grosso do Sul - Campo Grande-MS - Brazil
MultiExplorer
MultiExplorer has been evolving through several research work:
• Dark-silicon estimate for MPSoCs based on power density;
• Automatic design space exploration module built on top of genetic
algorithms;
• Performance prediction for heterogeneous multicore platforms
using machine-learning and deep-learning models;
• Automatic design space exploration and performance;
• Design Space Exploration for Virtual-Machine heterogeneous
systems.
• Prediction performance models for GP-GPU heterogeneous
systems.