Edit this page
12.09.2017

Polyhedral optimization of neural networks

We are pleased to announce the release of R-Stream·TF, an extension of R-Stream to TensorFlow computation graphs.

R-Stream·TF transforms computations performed in a neural network graph into C programs suited to the polyhedral representation and uses R-Stream, a polyhedral compiler, to parallelize and optimize the computations performed in the graph. R-Stream·TF can exploit the optimizations available with R-Stream to generate a highly optimized version of the computation graph, specifically mapped to the targeted architecture.

All the details are available in the paper: https://www.reservoir.com/publication/polyhedral-optimization-tensorflow-computation-graphs/.

Benoit Pradelle
27.02.2017

Polly Labs participates at Google Summer of Code

Google has selected Polly Labs as one of their Summer of Code 2017’s mentoring organizations. Polly Labs is committed to promote software and research around polyhedral compilation. We now invite students who are interested in participating to apply.

If you are interested in the topic of polyhedral compilation, you may take this as a chance to get involved in the community and open source software development, and even get paid for it. Polly Labs not only supports the development of LLVM Polly, but software, community and research around polyhedral compilation in general, such as such as the Integer Set Library. You can choose to work on one of our ideas or suggest your own project.

If you are a professor, we would be glad if you could propose this opportunity to your students.

Google opens student application on 20th March and closes on 3rd April. We prefer if interested students contact us in advance to discuss what project they are interested in.

We are also still looking for GSoC project ideas and people who a willing to mentor. If you are maintaining an open source project in the domain of polyhedral compilation, feel free to contact us as well.

More information on our blog post and our GSoC 2017. The latter explains how students can apply and a list of suggestions for projects.

We will see us soon contributing to great open source software!

Michael Kruse
8.01.2017

IMPACT 2017 - Program and Call for Participation

We call for participation for IMPACT’17 at HiPEAC’17 on Jan 23rd in Stockholm, Sweden.

With a keynote from Paul Kelly, six full papers, as well as two short papers – and most importantly – an exciting audience, a new incarnation of IMPACT is coming up.

Keynote

  • Delivering and generalising domain-specific program
    optimisations
    Paul Kelly (Imperial College London)

Polyhedral Modeling and Code Generation

  • Semi-Automatic Generation of Adaptive Codes
    Maxime Schmitt, César Sabater, Cédric Bastoul

  • Splitting Polyhedra to Generate More Efficient Code
    Harenome Razanajato, Vincent Loechner, and Cédric Bastoul

  • A general compilation algorithm to parallelize and optimize counted loops with dynamic data-dependent bounds
    Jie Zhao, Albert Cohen

Compilation Systems and Architecture

  • APOLLO: Automatic speculative POLyhedral Loop Optimizer
    Juan Manuel Martinez Caamano, Aravind Sukumaran-Rajam, Artiom Baloian, Manuel Selva and Philippe Clauss

  • Data Reuse Analysis for Automated Synthesis of Custom Instructions in Sliding Window Applications
    Georgios Zacharopoulos, Giovanni Ansaloni and Laura Pozzi

  • More Data Locality for Static Control Programs on NUMA Architectures Adilla Susungi, Albert Cohen and Claude Tadonki

Short-papers and Panel Discussion

  • Short-Talk: Bounded Task Schedules for Task-based Run-times
    Yuhan Peng, Martin Kong and Vivek Sarkar (Rice University)

  • Short-Talk: Memory-Aware Tiling using Conflict Lattices
    Adrian Tate, David Adjiashvili and Utz-Uwe Haus. (Cray EMEA Research Lab, IFOR, D-MATH, ETH Zurich)

Tobias Grosser
2.09.2016

APOLLO released - runtime speculative polyhedral loop optimizer

We are glad to announce the first release of APOLLO, the runtime speculative polyhedral loop optimizer and parallelizer. APOLLO is based on several innovative strategies, making polyhedral loop analyses and transformations applicable to loops that can not be handled using compile-time optimizers, e.g. while loops, with memory references through pointers or indirections, etc.

While the target loops are running, APOLLO automatically detects phases that are polyhedral-compliant (i.e. linear), or quasi-compliant (i.e. nonlinear) but modeled using “tubes”, and then applies speculatively polyhedral code transformations that extract parallelism and optimize data locality. The applied transformations are selected thanks to a runtime usage of the polyhedral compiler Pluto. The optimized transformed codes are generated on-the-fly by using building blocks called “code bones”, and by invoking the polyhedral code generator CLooG and the LLVM JIT compiler.

APOLLO is very easy to use. It is made of a static compiler based on Clang-LLVM to prepare the code, and a runtime system orchestrating the program execution. It has been released under the BSD 3-Clause Open Source License.

The installation package and more details with examples can be found on APOLLO’s website: http://apollo.gforge.inria.fr

We look forward to your feedbacks!

The APOLLO crew: Juan Manuel Martinez Caamano, Aravind Sukumaran-Rajam, Artiom Baloian, Willy Wolff, Philippe Clauss

Philippe Clauss
30.08.2016

IMPACT 2017 announced

IMPACT 2017, the 7th International Workshop on Polyhedral Compilation, will be taking place January 23 - 25, 2017 in Stockholm colocated with the HiPEAC conference.

The following is the official call for papers:

This is a CALL FOR PAPERS for

    IMPACT 2017

7th International Workshop on 
Polyhedral Compilation Techniques

http://impact.gforge.inria.fr/impact2017/

held in conjunction with HiPEAC 2017 (Jan 23-25, 2017)
Stockholm, Sweden.

======================================
IMPORTANT DATES:
Abstract submission:    October 21, 2016 (AoE)
Paper submission:    October 28, 2016 (AoE)
Author notification: December 02, 2016
Final version due:   December 16, 2016
Workshop date:       TBD
======================================

OVERVIEW:

Polyhedral techniques have gained attention due to the rise of
multi-core processors and other architectures that require parallelism
and more complex schedules for data locality. At the heart of the
polyhedral model is an abstraction of programs that enables powerful
analysis and scheduling of applications. Recent developments in the
polyhedral model research area includes automatic parallelization
targeting various platforms, program verification, and hardware
synthesis. IMPACT is a unique workshop aimed to bring together
researchers and practitioners interested in polyhedral techniques to
exchange ideas. This year's IMPACT will be held in conjunction with
HiPEAC as a one-day workshop including technical paper presentations,
panel discussions, and possibly a keynote.

We welcome both theoretical and experimental papers on all aspects of
polyhedral compilation and optimization. We also welcome submissions
describing preliminary results, crazy new ideas, position papers,
experience reports, and available tools, with an aim to stimulate
discussions, collaborations, and advances in the field. The following
illustrate potential IMPACT papers:

	- Discussion of a preliminary idea with an attempt to place 
	  it in context but no experimental results.

	- Experimental results comparing two or more existing ideas.

	- Presentation of an existing idea in a different way including 
	  illustrations of how the idea applies in current codes. 
	  Attribution should be done as well as possible.

Topics of interest include, but are not limited to:
- program optimization (automatic parallelization, tiling, etc.)
- code generation
- data/communication management on GPUs, accelerators and
  distributed systems
- hardware/high-level synthesis
- static analysis
- program verification
- model checking
- theoretical foundations of the polyhedral model
- extensions of the polyhedral model
- scalability and robustness of polyhedral compilation techniques
- autotuning
- application case studies
- tool demonstration

SUBMISSION:

Submissions should not exceed 8 pages (recommended 6 pages), excluding
references, formatted as per ACM proceedings format. Please use the
following template when preparing your manuscript:
 http://www.acm.org/sigs/publications/proceedings-templates

Submissions should be in PDF format and printable on US Letter or A4
sized paper. Please submit through EasyChair at:
 https://easychair.org/conferences/?conf=impact17

Proceedings will be posted online. If the final version of an accepted
paper does not sufficiently address the comments of the reviewers, then
it may be accompanied by a note from the program committee. Publication
at IMPACT will not prevent later publication in conferences or journals
of the presented work. However, simultaneous submission to IMPACT and 
other workshop, conference, or journal is often prohibited by the policy 
of other venues. For instance, a paper with significant overlap with
IMPACT submission cannot be sent to PLDI 2017 or any other overlapping
SIGPLAN event.

We will also continue the poster teasers we started last year. Authors
of the rejected papers that still plan to attend HiPEAC will have an
opportunity to present their submission in the HiPEAC poster session. We
encourage poster presentations by providing a short (3 min.) slot in the
workshop to advertise the posters. If possible, posters related to
IMPACT will be gathered at the poster session close to each other.

COMMITTEES:

Organizers and Program Chairs:

Mary Hall, University of Utah, USA 
Tobias Grosser, ETH Zurich, Switzerland 

Program Committee:

Uday Bondhugula (IISc Bangalore, India)
Cedric Bastoul (University of Strasbourg, France)
Samuel Bayliss  (Xilinx, USA)
Albert Cohen (INRIA, France)
Philippe Clauss (University of Strasbourg, France)
Alain Darte (CNRS, France)
Paul Feautrier (ENS Lyon / INRIA, France)
Armin Groesslinger (University of Passau, Germany)
Alexandra Jimborean (Uppsala University, Sweden)
Paul Kelly (Imperial College London, UK)
Andreas Kloeckner (University of Illinois at Urbana-Champaign, USA)
Martin Kong (Rice University, USA)
Sanyam Mehta (Cray Inc., USA)
J. Ramanujam (Louisiana State University, USA)
P. Sadayappan (Ohio State University, USA)
Jun Shirako (Rice University, USA)
Michelle Strout (University of Arizona, USA)
Ramakrishna Upadrasta (IIT Hyderabad, USA)
Sven Verdoolaege (Polly Labs, Belgium)
David Wonnacott (Haverford College, USA)
Tomofumi Yuki   (INRIA, France)
Hongbin Zheng (Xilinx Inc., USA)

Tobias Grosser
7.03.2016

Spring school on numerical simulation and polyhedral code optimization

May 9-13, 2016

St Germain au Mont d’Or, near Lyon, France

http://mathsinfohpc.sciencesconf.org/

An inter-disciplinary spring school is organized near Lyon, France, from Monday 9 to Friday 13, May 2016. The school targets both students and researchers in high-performance computing interested in exploring the potential interactions between numerical simulation applications and compiler optimizations.

The school will focus on applications whose regularity, use of data structures such as arrays, and numerical intensity may make the automation or semi-automation of optimizations both feasible and useful, concentrating in particular on polyhedral analysis and optimizations for GPGPUs and multicores. The goal is to discuss, in the light of the expertise from the application side, how recent development of polyhedral techniques and tools can help (or not yet) improving the interaction between the users and the compilers.

The school will be organized as 7 half-days of courses (+ 1 half-day of break) covering topics such as:

  • architecture features and manual code optimizations
  • discretization methods, stencils
  • automatic (mostly polyhedral) code analysis and optimizations
  • locality and loop tiling
  • cost models, in particular roofline model
  • automatic tools for GPGPUs and multicores
  • numerical precision

with speakers from both the numerical simulation and compiler communities.

People willing to attend this spring school should first signal their interest before April 01 (but the sooner the better, places are limited). See explanations on the corresponding registration web page. Registration fees are kept very low (for academics, 150 euros for a single room, 200 euros for a double room) and will cover the whole week (food and lodging).

More details are provided on the web page of the school: http://mathsinfohpc.sciencesconf.org/

Note that this spring school is the second event of a larger thematic quarter on high performance computing (http://hpc-milyon.universite-lyon.fr/) organized in Lyon and around, with several events, from April to July 2016. The other events, which may also be of interest for you, are:

Best regards,

Violaine Louvet, Alain Darte

Alain Darte
1.03.2016

XFOR software tools released

All the software tools related to the XFOR loop programming structure are now available by following this link: http://xfor.gforge.inria.fr

The tools include:

  • the source-to-source compiler IBB, that translates any XFOR program into an equivalent FOR program;

  • the XFOR programming environment XFOR-Wizard, that automatically checks if data dependences are respected when editing an XFOR program from a referential FOR program;

  • the XFOR generator XFORGEN, that automatically generates an XFOR program from a loop specification in OpenScop format.

We wish you pleasant XFOR programming.

Philippe Clauss
26.01.2016

Presburger Formulas and Polyhedral Compilation

An initial version of the Presburger Formulas and Polyhedral Compilation tutorial has been made available.

Sven Verdoolaege
27.11.2014

PolyComp Tutorial at HiPEAC

At HiPEAC 2015, the PolyComp 2015 tutorial will discuss polyhedral compilation without polyhedra.

This tutorial follows the tradition of the Omega Project and use a slightly higher-level representation based on integer tuples bounded by quasi-affine constraints, called named Presburger sets. In particular, the following topics will be addressed

  • How to model various aspects of a piece of code using Presburger sets and relations.
  • Which basic operations are available on such sets and relations, without going into details on how these operations are implemented.

  • How to use these operations to mainly analyze but also transform programs.

  • Which tools are available for polyhedral compilation.

  • A small selection of some of the results that may be achieved through polyhedral compilation.

An earlier version of this tutorial was presented as the first half of a lecture at the polyhedral school, but some of the material will be updated and some extra material will be added.

Tobias Grosser
22.09.2014

IMPACT 2015 announced

IMPACT 2015 the 5th International Workshop on Polyhedral Compilation will be taking place January 19, 2015 in Amsterdam colocated with the HiPEAC conference.

The following is the official call for papers:

IMPACT 2015

5th International Workshop on 
Polyhedral Compilation Techniques

http://impact.gforge.inria.fr/impact2015/ [1]

Jan 19, 2015, in conjunction with HiPEAC 2015 (Jan 19-21, 2015)
Amsterdam, The Netherlands.

======================================
IMPORTANT DATES:
Abstract submission: October 17, 2014
Paper submission: October 24, 2014 (NO EXTENSION!)
Author notification: November 22, 2014
Final version due: December 8, 2014
Workshop date: January 19, 2015
======================================

OVERVIEW:

With ubiquitous multicore processors and the increasing role of hardware
accelerators, polyhedral compilation techniques have gained a lot of attention
in both academia and industry. Polyhedral compilation provides a homogeneous
framework to design effective optimizations for high performance computing,
addressing coarse-grain and fine-grain parallelism, distributed- and
shared-memory parallelism. IMPACT is a unique workshop focusing exclusively on
polyhedral compilation technologies, bringing together researchers and
practitioners for a high-quality one-day event including technical paper
presentations and panel discussions (and possibly a keynote talk).

We welcome both theoretical and experimental papers on all aspects of
polyhedral compilation and optimization. We also welcome submissions describing
preliminary results, crazy new ideas, position papers, experience reports, and
available tools, with an aim to stimulate discussions, collaborations, and
advances in the field.

Topics of interest include, but are not limited to:
- program optimization (automatic parallelization, tiling, etc.)
- code generation
- data/communication management on GPUs, accelerators and
 distributed systems
- hardware/high-level synthesis for affine programs
- static analysis
- program verification
- model checking
- theoretical foundations of the polyhedral model
- extensions of the polyhedral model
- scalability and robustness of polyhedral compilation techniques
- tool demonstration

SUBMISSION:

Submissions should not exceed 8 pages (recommended 6 pages) formatted as per
ACM proceedings format. Please use the following template when preparing your
manuscript: http://www.acm.org/sigs/publications/proceedings-templates

Submissions should be in PDF format and printable on US Letter or A4 sized
paper. Please send your submission by the deadline to:
impact-chairs@lists.gforge.inria.fr

Please indicate in your email if you wish to submit as a:
(1) regular paper
(2) position paper
(3) wild and crazy idea
(4) tool demonstration

Proceedings will be published online. If the final version of an accepted paper
does not sufficiently address the comments of the reviewers, then it may be
accompanied by a note from the program committee. Publication at IMPACT will
not prevent later publication in conferences or journals of the presented work.

COMMITTEES:

Organizers and Program Chairs:
Alain Darte (ENS Lyon, France)
Alexandra Jimborean (Uppsala University, Sweden)
Contact: impact-chairs@lists.gforge.inria.fr

Program Committee:
S. Bayliss (Xilinx Research Labs, Dublin, Ireland)
U. Bondhugula (IISc Bangalore, India) 
D. Chavarria-Miranda (Pacific Northwest National Lab, USA) 
P. Clauss (U. of Strasbourg, France) 
A. Cohen (INRIA, ENS Paris, France) 
B. Creusillet (Silkan, France) 
S. Derrien (IRISA, Rennes, France) 
P. Feautrier (ENS Lyon, France) 
A. Grösslinger (U. of Passau, Germany)
F. Irigoin (MINES ParisTech, France) 
P. H. J. Kelly (Imperial College London, UK)
V. Loechner (U. of Strasbourg, France)
B. Meister (Reservoir Labs, USA)
A. Miné (ENS Paris, France)
L.-N. Pouchet (UCLA, USA)
S. Rajopadhye (Colorado State U., USA)
P. Sadayappan (Ohio State U., USA) 
S. Verdoolaege (ENS Paris, France) 
D. G. Wonnacott (Haverford College, USA) 
J. Xue (UNSW, Australia) 
T. Yuki (Rennes/ENS Lyon, France) 

Links:
------
[1] http://impact.gforge.inria.fr/impact2015/

Tobias Grosser
20.03.2014

Two polyhedral papers at PLDI

Two polyhedral papers have been accepted and will be presented at the 2014 Conference on Programming Language Design and Implementation (PLDI) in Edinburgh, UK on June 9-11. The conference program lists the following papers.

  • A Framework for Enhancing Data Reuse via Associative Reordering, STOCK2014

  • Compiler-Assisted Detection of Transient Memory Errors, TAVARAGERI2014

Tobias Grosser
8.02.2014

Polyhedral.info has a new design!

The new design for polyhedral.info is finished. It is based on bootstrap and uses a bit of jquery. It should be usable on smartphones as well as the usual big screens.

I hope you enjoy it :-).

Andreas Simbuerger
8.02.2014

Four polyhedral papers at CGO

Four polyhedral papers have been accepted and will be presented at the 2014 International Symposium on Code Generation and Optimization (CGO) taking place in Orlando, Florida February 15-19. The conference program lists the following papers.

  • Hybrid Hexagonal/Classical Tiling for GPUs, GROSSER2014CGO

  • Fix the code. Don’t tweak the hardware: A new compiler approach to Voltage-Frequency scaling, JIMBOREAN2014CGO

  • Non-affine Extensions to Polyhedral Code Generation, VENKAT2014CGO

  • Adaptive Mapping and Parameter Selection Scheme to Improve Automatic Code Generation for GPUs, JUEGA2014CGO

Update: Added a forth paper

Tobias Grosser
21.01.2014

islplot project started

The first version of islplot was released. islplot is a python library that allows to create 2D and 3D illustrations of polyhedral sets and maps using matplotlib or THREE.js. You can get a first impression of it from the 2D examples or 3D examples (requires WebGL).

Tobias Grosser
21.01.2014

ISCC Online Demonstrator

iscc is the command line tool provided with barvinok that exhibit, among others, most of isl functionalities. The best way to use it is obviously to download it here and compile it.

If you are in a rush you can try the official barvinok online interface or the version at compsys-tools.ens-lyon.fr which provides in addition the isl-indent format option for a better readability of the isl output.

Update: Added link to official barvinok online interface.

Alexandre Isoard