You are on page 1of 3

Compiler Construction Lab

BSCS [5A]

Submitted by:
Muhammad Ateeb 03-134211-022
Ahsan 03-134211-004
Naif Ali 03-134202-073

To:
Mam Nida Hafeez
Research Title
Compiler optimization-space exploration
Description
Compiler optimization-space exploration is the process of identifying
the most optimal set of optimizations to apply to a piece of code using a
compiler. This involves exploring the various possible combinations of
optimization techniques to find the most efficient machine code.
Feedback-directed and multi-objective optimization are two approaches
used to guide the optimization process. The use of machine learning
techniques, such as neural networks and reinforcement learning, has
enabled more efficient exploration of the optimization space. Compiler
optimization-space exploration has diverse and impactful applications in
scientific simulations, mobile device software, and data center
applications. The goal is to create faster, more efficient software with
minimal manual effort.

Problem Statement
The problem statement for compiler optimization-space exploration is
the challenge of finding the optimal sequence of compiler optimizations
that will produce the best performance or energy efficiency for a given
program. This problem is complicated by the large and complex search
space of possible optimizations, as well as the need to balance
performance and energy consumption trade-offs.

Objectives
The objective of compiler optimization-space exploration is to develop
automated techniques for searching the optimization space of a program
and identifying the best sequence of optimizations to apply. This
objective involves developing algorithms, models, and tools that can
efficiently explore the optimization space, accurately predict the
performance and energy characteristics of different optimization
sequences, and provide guidance to software developers and system
architects on how to optimize their programs. The ultimate goal of this
research is to enable the creation of more efficient and effective software
systems that can meet the increasing performance and energy demands
of modern computing applications.

You might also like