Run-Time Program Generation and Empirical Optimization
ABSTRACT
Yrd. Doç. Dr.
Tankut Barış Aktemur
Computer Science
DEPARTMENT
Computer Science
CONTACT
[email protected]
FUNDING SCHEME
TÜBİTAK 1001
START DATE
01.09.2010
DURATION
24 months
OZU BUDGET
62,544.00 TL
2010 National Grants
This project aims to explore the combination of run-time program generation (RTPG) and empirical optimization (EO) and
to develop a system that brings these two to obtain high performance code. Run-time program generation is the technique
of generating programs under programmer control. It takes advantage of information that becomes available only at runtime to produce a specialized version of a program. Empirical optimization, also known as auto-tuning, is the optimization
technique that finds the best version of a program by testing those versions on the target machine. RTPG and EO are
effective techniques; however, the high potential of their combination has been neglected so far. RTPG achieves speed-up
by specializing a program according to run-time inputs; however, it has poor performance portability because it does not
take into account the characteristics of the data and the target machine. Moreover, it has problems in dealing with real-sized
problems. EO finds the version of an algorithm that performs the best on the target machine according to the characteristics
of the data; however, all the candidate algorithms are fixed – no new version is generated based on run-time inputs. For
these reasons, RTPG and EO are complementary methods. If they are used together, speed-ups that have not been achieved
so far can be obtained.
15