1 CAPS Compilers Activities IRISA Campus Universitaire de Beaulieu 35042 Rennes.

Slides:



Advertisements
Similar presentations
Optimizing Compilers for Modern Architectures Syllabus Allen and Kennedy, Preface Optimizing Compilers for Modern Architectures.
Advertisements

Xtensa C and C++ Compiler Ding-Kai Chen
Software & Services Group, Developer Products Division Copyright© 2010, Intel Corporation. All rights reserved. *Other brands and names are the property.
8. Code Generation. Generate executable code for a target machine that is a faithful representation of the semantics of the source code Depends not only.
Original Development Team The Compiler and Architecture Research Group (formerly part of Hewlett-Packard Laboratories) Illinois Microarchitecture Project.
TM Pro64™: Performance Compilers For IA-64™ Jim Dehnert Principal Engineer 5 June 2000.
Representing programs Goals. Representing programs Primary goals –analysis is easy and effective just a few cases to handle directly link related things.
Cpeg421-08S/final-review1 Course Review Tom St. John.
CSRD, University of Illinois at Urbana-Champaign 1 A Complete Compilation System.
2015/6/21\course\cpeg F\Topic-1.ppt1 CPEG 421/621 - Fall 2010 Topics I Fundamentals.
1 Dr. Frederica Darema Senior Science and Technology Advisor NSF Future Parallel Computing Systems – what to remember from the past RAMP Workshop FCRC.
Zephyr By Shannon Poskus. What is Zephyr? Zephyr is one of two components of the National Compiler Infrastructure (NCI) project Co-funded by DARPA and.
LLVM Developed by University of Illinois at Urbana-Champaign CIS dept Cisc 471 Matthew Warner.
October 26, 2006 Parallel Image Processing Programming and Architecture IST PhD Lunch Seminar Wouter Caarls Quantitative Imaging Group.
Antoine Monsifrot François Bodin CAPS Team Computer Aided Hand Tuning June 2001.
(1.1) COEN 171 Programming Languages Winter 2000 Ron Danielson.
High level & Low level language High level programming languages are more structured, are closer to spoken language and are more intuitive than low level.
A Modular and Retargetable Framework for Tree-based WCET analysis Antoine Colin Isabelle Puaut IRISA - Solidor Rennes, France.
Overview of the Course Copyright 2003, Keith D. Cooper, Ken Kennedy & Linda Torczon, all rights reserved. Students enrolled in Comp 412 at Rice University.
1 History of compiler development 1953 IBM develops the 701 EDPM (Electronic Data Processing Machine), the first general purpose computer, built as a “defense.
Compiler BE Panel IDC HPC User Forum April 2009 Don Kretsch Director, Sun Developer Tools Sun Microsystems.
CAPS project-team Compilation et Architectures pour Processeurs Superscalaires et Spécialisés.
Programming Models & Runtime Systems Breakout Report MICS PI Meeting, June 27, 2002.
John Mellor-Crummey Robert Fowler Nathan Tallent Gabriel Marin Department of Computer Science, Rice University Los Alamos Computer Science Institute HPCToolkit.
1 COMP 3438 – Part II-Lecture 1: Overview of Compiler Design Dr. Zili Shao Department of Computing The Hong Kong Polytechnic Univ.
CAPS project-team Compilation et Architectures pour Processeurs Superscalaires et Spécialisés.
1 Optimizing compiler tools and building blocks project Alexander Drozdov, PhD Sergey Novikov, PhD.
Compilers for Embedded Systems Ram, Vasanth, and VJ Instructor : Dr. Edwin Sha Synthesis and Optimization of High-Performance Systems.
Chapter 1 Introduction. Chapter 1 - Introduction 2 The Goal of Chapter 1 Introduce different forms of language translators Give a high level overview.
1. 2 Preface In the time since the 1986 edition of this book, the world of compiler design has changed significantly 3.
CS 460/660 Compiler Construction. Class 01 2 Why Study Compilers? Compilers are important – –Responsible for many aspects of system performance Compilers.
Introduction to Compilers. Related Area Programming languages Machine architecture Language theory Algorithms Data structures Operating systems Software.
A few issues on the design of future multicores André Seznec IRISA/INRIA.
Compiler Construction (CS-636)
CAPS team Compiler and Architecture for superscalar and embedded processors.
Using Cache Models and Empirical Search in Automatic Tuning of Applications Apan Qasem Ken Kennedy John Mellor-Crummey Rice University Houston, TX Apan.
CAPS project-team Compilation et Architectures pour Processeurs Superscalaires et Spécialisés.
The Model of Compilation Natawut Nupairoj, Ph.D. Department of Computer Engineering Chulalongkorn University.
Euro-Par, 2006 ICS 2009 A Translation System for Enabling Data Mining Applications on GPUs Wenjing Ma Gagan Agrawal The Ohio State University ICS 2009.
Hybrid Multi-Core Architecture for Boosting Single-Threaded Performance Presented by: Peyman Nov 2007.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
High Performance Embedded Computing © 2007 Elsevier Lecture 10: Code Generation Embedded Computing Systems Michael Schulte Based on slides and textbook.
A Retargetable Preprocessor for Multimedia Instructions* (work in progress) INRIA F. Bodin, G. Pokam, J. Simonnet *partially supported by ST Microelectronics.
1 Asstt. Prof Navjot Kaur Computer Dept PRESENTED BY.
Overview of Compilation Prepared by Manuel E. Bermúdez, Ph.D. Associate Professor University of Florida Programming Language Principles Lecture 2.
Architectural Effects on DSP Algorithms and Optimizations Sajal Dogra Ritesh Rathore.
Presented by : A best website designer company. Chapter 1 Introduction Prof Chung. 1.
ECE 587 Hardware/Software Co- Design Lecture 23 LLVM and xPilot Professor Jia Wang Department of Electrical and Computer Engineering Illinois Institute.
©SoftMoore ConsultingSlide 1 Code Optimization. ©SoftMoore ConsultingSlide 2 Code Optimization Code generation techniques and transformations that result.
Infrastructures for Assembly Level Tools F. Bodin CAPS Team IRISA-INRIA.
Software and Communication Driver, for Multimedia analyzing tools on the CEVA-X Platform. June 2007 Arik Caspi Eyal Gabay.
COMP Compilers Lecture 1: Introduction
The architecture of the P416 compiler
Passing from design to implementation
Chapter 1 Introduction.
Chapter 1 Introduction.
课程名 编译原理 Compiling Techniques
CISC 7120X Programming Languages and Compilers
Many-core Software Development Platforms
Methodology of a Compiler that Compresses Code using Echo Instructions
Performance Optimization for Embedded Software
Compiler Back End Panel
Benjamin Goldberg Compiler Verification and Optimization
Compiler Back End Panel
CISC 7120X Programming Languages and Compilers
Compiler Construction
COINS‥ a COmpiler INfraStructure
HPC User Forum: Back-End Compiler Technology Panel
CAPS project-team Compilation et Architectures pour Processeurs Superscalaires et Spécialisés.
Intermediate Code Generating machine-independent intermediate form.
Presentation transcript:

1 CAPS Compilers Activities IRISA Campus Universitaire de Beaulieu Rennes

2 CAPS TEAM Architecture –André Seznec (Director of Research, CAPS group leader) –Pierre Michaud (Researcher) –Jacques Lenfant (Professor) –Thierry Lafage (PhD) –Jonathan Perret (PhD) –Romain Dolbeau (PhD) Compiler –F. Bodin (Professor) –Antoine Monsifrot (PhD) –Ronan Amicel (PhD) –Gilles Pokam (PhD) –Laurent Bertaux (PhD) –Laurent Morin (PhD) –Karine Heydemann (PhD)

3 Background Architecture –high performance (co-)processors –superscalar microprocessors –memory hierarchy –branch prediction mechanism,... Compiler –high performance computing –parallel computing –optimizations for VLIW –preprocessor infrastructures –code transformations

4 Compiler Activities Code optimizations for embedded applications –infrastructures –optimizing compiler strategies Global constraints –code sizes –low power (starting) Interactive tools –code tuning –case based reasoning –assembly code optimizations

5 Overview Interface Front-end Target Description(s) Code Generation Back-end Optimizer Instruction set Simulator tool 2 tool 1 tool 3 tool 4 feedback

6 Fortran Code Optimization Provides tools for code tuning –user oriented –case based reasoning –static code analysis and pattern matching –profiling Infrastructure used –Foresys: Fortran interactive front-end (from Simulog) –TSF: Scripting language for program transformation (developed by CAPS) Bibliography: “FITS - A Light-Weight Integrated Programming Environment”, B. Chapman, F. Bodin, L. Hill, J. Merlin, G. Viland, F. Wollenweber, Euro-Par'99

7 Assembly Code Optimization Provide methods and tools for analyzing code quality and for fine grain tuning –VLIW architectures –navigation in the assembly code –access to profiling and compiler data –link with the source code Infrastructure used –Salto

8 High Performance Instruction Set Simulation Provide new generation techniques for instruction set simulation –high performance, simulation of large code, debugging –flexible –retargetable, experiment new instruction sets Infrastructure –Salto C Source TriMedia Assembly code tmcc TriMedia Binary generator tmsim tmas gcc/ld C++ Source compile simulation Architecture description

9 Scheduling Infrastructure SALTO2 –provide new infrastructure better suited for code optimization –more abstract interface –more integration with code generation Architecture Description D ® M Architecture Model Intermediate representation Opt 1Opt 2Opt n P ® RI Text Input D ® Ass (Emit) Optimized Program interface to IR Interfaces External Infrastructure User interface G.U.I. Intermediate Code

10 Preprocessor Multimedia Instruction Provide tools to help rewriting code source for exploiting multimedia instructions A S T CCMIR SWARgen Unparser IR Graph rewriting SWARcc Pattern matching COSY Rules C Code Declaration The SWAR SYSTEM

11 Iterative Compilation Dealing with global constraints Better control of tradeoffs Bibliography: H-263 “Handling Global Constraints in Compiler Strategy”, Erven Rohou, François Bodin, Christine Eisenbeis and André Seznec, to appear in International Journal of Parallel Programming