12th International Symposium on
High-Level Parallel Programming and Applications
July 3-5, 2019, Linköping, Sweden
Thursday keynote, 4 july 2019, 09:15-10:15
Georgi Gaydadjiev, Maxeler Technologies:
High-level programming of data-centric reconfigurable dataflow systems
Streaming dataflow has been recognised as a promising paradigm for addressing
the data intensive parts of many applications. Silicon manufacturing technologies
will keep delivering growing numbers of transistors per unit silicon area
for at least few more generations and efficiently deploying these additional
resources into direct performance advantages is a real challenge.
The dataflow approach offers a valid solution by implicitly "hardening"
all basic operations inside a large computational structure,
tight control and data movements minimisation at all levels,
while at the same time allowing highest degree of customization
at very fine levels of granularity.
Massive, deeply pipelined dataflow accelerator structures
with at least thousands of pipeline stages can deliver unprecedented throughput
advantages even when operated at frequencies order of magnitude lower
than traditional technology.
However, the programmability of such custom computing structures remains challenging.
We will present a programming and execution model designed with streaming dataflow execution in mind. The basic assumption is that all operations happen in space on the reconfigurable silicon substrate and by default are performed in parallel. Our approach allows designers to partition, lay out and optimize their programs at all levels starting from high-level algorithmic transformations all the way down to individual customised bit manipulations. In addition, the execution model enforces highly efficient scheduling (or better called choreography) of all basic computational and data movement actions with the guarantee of no side effects. This approach is facilitated by a set of dedicated design tools and novel design methods. We will demonstrate how scientists and domain experts can program power efficient, reconfigurable custom computing systems with minimal knowledge of the low-level hardware details. Relevant code examples and results achieved by real systems will support our claims.
About the speaker: Prof. Dr. Georgi N. Gaydadjiev is director of Maxeler IoT-Labs BV in Delft and VP of Dataflow Software Engineering at Maxeler Ltd in London. He is also a professor at TU Delft and a honorary visiting professor at Imperial College London. Previously he held the Chair in Computer Systems Engineering at Chalmers in Sweden.
Friday keynote, 5 july 2019, 09:15-10:15
Jose Daniel Garcia Sanchez, University Carlos III of Madrid:
Generic Programming and Parallel Patterns
Abstract: Generic programming provides a way to abstract common programming patterns and algorithms, allowing application programmers to provide the domain specific details. For decades, this has been one of the key principles of the Standard Template Library (STL) in C++. The very same principle can be applied to parallel skeletons and patterns, where an additional configuration parameter is the execution model to be used. In this talk, I will consider different aspects of integrating generic programming and parallel programming, also providing an overview of the current status in the latest ISO C++ standard. I will also present an alternative approach based on the GrPPI library.
About the speaker:
Jose Daniel Garcia Sanchez is an Associate Professor in Computer Architecture
and Technology at the Department of Computer Science and Engineering
of University Carlos III of Madrid.
He holds a PhD in Informatics Engineering from University Carlos III
of Madrid and a Bachelor in Computer Science
from Madrid Technical University.
Before joining university he worked in projects for companies like
Telefonica, British Telecom, FCC, Siemens or ING Bank.
Since 2008 he is the Spanish representative in committee ISO/IEC JTC1/SC22/WG21 in charge of standardizing the C++ programming language. At the national level, he is the president of subcommittee CTN71/SC22 (programming languages, its environment and systems software interfaces) and CTN1/SC22/GT21 (C++ language). Since 2008 he has actively contributed in the wording of all international standards related to the C++ programming language.
He has co-authored more that 70 papers in international journals and conferences. Additionally, he has participated in 20 competitive funding projects and 15 research and technology transfer contracts with companies. His research activity is framed within the Computer Architecture, Communications and Systems research group, where he works in the research line of Programming Models for Application Improvement. His main goal is to make software developers' lives easier by improving balance between performance improvement and maintainability with a special focus to multi-core processors and parallel heterogeneous computing systems.
Page responsible: Christoph Kessler
Last updated: 2019-07-08