[llvm-dev] Zurich LLVM Social - February 11, 2016 - ETH

Tobias Grosser via llvm-dev llvm-dev at lists.llvm.org
Tue Feb 9 05:35:17 PST 2016

On 02/02/2016 11:56 AM, Tobias Grosser wrote:
> Dear all,
> we are organizing a "Zurich LLVM Social" on Thursday, February 11, 19:00
> at ETH and invite interested people to attend.
> # Registration (to facilitate planning):
> https://ethz.doodle.com/poll/x5chi26ea2fs7tgq

This is taking place Thursday.

Will will have two external visitors, Michael Kruse and Giorgio Zachero 
form Paris and Lugano, presenting their work. Talks will start 19:15.

1) Lattice QCD Optimization and Polytopic Representations
    of Distributed Memory in LLVM

Motivated by modern day physics, which in addition to experiments also 
tries to verify and deduce laws of nature by simulating the 
state-of-the-art physical models using large computers, we explore means 
of accelerating such simulations by improving the simulation programs 
they run. The primary focus is Lattice Quantum Chromodynamics (QCD), a 
branch of quantum field theory, running on IBM newest supercomputer, the 
Blue Gene/Q.

Molly is an LLVM compiler extension, complementary to Polly, which 
optimizes the distribution of data and work between the nodes of a 
cluster machine such as Blue Gene/Q. It is meant as a starting point for 
a framework that allows general data layout transformations, not only of 
distributed memory, but also of shared memory, caches, etc. Molly 
represents arrays using integer polyhedra and uses another already 
existing compiler extension Polly which represents statements and loops 
using polyhedra. When Molly knows how data is distributed  among the 
nodes and where statements are executed, it adds code that manages the 
data flow between the nodes.

Speaker: Michael Kruse

2) Targetting Application-Specific Instruction Set Processors with LLVM

LLVM provides many ways to perform Analysis and Transform passes on 
software applications. The process of identifying parts of computation 
(Custom Instructions) in software, can be automated and also become 
highly efficient by exploiting the analysis that can be provided by 
custom written LLVM analysis passes. The final goal is to implement 
these Custom Instructions in Hardware accelerators in embedded 
processors, such as Application-Specific Instruction Set Processors 
(ASIPs) that support hybrid HW-SW execution. As a result, an 
order-of-magnitude performance improvement has been demonstrated with 
respect to state-of-the-art methodologies.

Speaker: Giorgio Zacharo

Michael Kruse
Michael Kruse is a postdoctoral researcher at the École Normale
Supérieur and INRIA in Paris/France, working on polyhedral compilers.
His academic career began at the University of Paderborn/Germany to
study computer sciences and graduated with a Bachelor's thesis about
parser generators and a Master's thesis about register allocation.
Afterwards he moved to the University of Paris-South XI following a PhD 
program with the goal to accelerate Lattice QCD simulations. In
2014 he defended his PhD thesis "Lattice QCD Optimization and
Polytopic Representations of Polyhedral Memory" for which he started
the development of Molly. In the following Post-Doc he contributed to
the European projects CARP and COPCAMS, helping to develop the
toolchain for PENCIL, a domain-specific intermediate language intended
to compile sequential code for GPUs. As part of the Pollylabs
initiative, he also develops for the Polly project, the polyhedral
optimizer for LLVM.

Giorgio Zacharo
Georgios Zacharopoulos is a PhD student in the faculty of Informatics, 
at University of Lugano, Switzerland. He received his MSc degree in 
Computer Science from Uppsala University, Uppsala, Sweden in 2015. 
His current research includes compiler optimisations, focused on 
automating embedded processor customization. (e.g. Application-Specific 
Instruction Set Processors) More specifically, automatic Identification 
of Custom Instructions (CIs) in software applications for High Level 

Supervisor : Associate Professor, Laura Pozzi, Faculty of Informatics, 
University of Lugano

> # What is it:
> The Zurich LLVM Social is an informal meeting to discuss compilation and
> code generation issues with a focus on LLVM and related projects (clang,
> Polly, lldb, ...)
> Our primary focus is to provide a venue (and drinks & snacks) that
> enables free discussions between interested people without imposing
> an agenda/program.
> Related technical presentations held by participants are welcomed
> (please contact us).
> # Who is invited:
> Anybody interested in LLVM - No ETH affiliation required
> # When
> Date: 14/01/2016
> Time: 19:00
> The building closes at 19:00. If you are late, you need to call us
> to be let in (we send out the number before the meeting).
> Subsequent meetings will take place every 2nd Thursday of a month.
> # Where
> Systems Group Meeting Room - CAB E 72
> We suggest to enter the building through the right side-entry of the
> CAB building (marked in the map below), which leads almost directly to
> the room E72.
> Map: https://goo.gl/maps/rr4wZU5dPMs
> Floorplan:
> http://www.rauminfo.ethz.ch/Rauminfo/grundrissplan.gif?region=Z&areal=Z&gebaeude=CAB&geschoss=E&raumNr=72
> See you soon,
> Tobias Grosser

More information about the llvm-dev mailing list