C is the lingua franca of programming and almost any device can be programmed using C. However, programming modern heterogeneous architectures such as multi-core CPUs and GPUs requires explicitly expressing parallelism as well as device-specific properties such as memory hierarchies. The resulting code is often hard to understand, debug, and modify for different architectures. We propose to lift C programs to a parametric dataflow representation that lends itself to static data-centric analysis and enables automatic high-performance code generation. We separate writing code from optimizing for different hardware: simple, portable C source code is used to generate efficient specialized versions with a click of a button. Our approach can iden...
The years of practice in optimizing applications point that the major issue is focus - identifying t...
International audienceThis chapter reviews dataflow programming as a whole and presents a classifica...
Dataflow analysis is a powerful tool used for program optimization, static analysis, and editor serv...
C is the lingua franca of programming and almost any device can be programmed using C. However, prog...
C is the lingua franca of programming and almost any device can be programmed using C. However, prog...
C and C++ are popular languages for writing performance critical applications, as they offer great p...
C is a programming language used everywhere and in a big part of scientific codes. With the increas...
To efficiently utilize the emerging heterogeneous multi-core architecture, it is essential to exploi...
AbstractIn this paper, we present a compiler extension for applications targeting high performance e...
Functional dataflow programming languages are designed to create parallel portable programs. The sou...
In this thesis, we present the design and implementation of a compiler optimization framework for th...
Multicore architectures are increasingly used in emhedded systems to achieve higher throughput with ...
International audienceMulticore architectures are increasingly used in embedded systems to achieve h...
The acceleration of compute-intensive applications on FPGA-based systems has become an increasingly ...
This paper describes how the use of software libraries, which is prevalent in high performance comp...
The years of practice in optimizing applications point that the major issue is focus - identifying t...
International audienceThis chapter reviews dataflow programming as a whole and presents a classifica...
Dataflow analysis is a powerful tool used for program optimization, static analysis, and editor serv...
C is the lingua franca of programming and almost any device can be programmed using C. However, prog...
C is the lingua franca of programming and almost any device can be programmed using C. However, prog...
C and C++ are popular languages for writing performance critical applications, as they offer great p...
C is a programming language used everywhere and in a big part of scientific codes. With the increas...
To efficiently utilize the emerging heterogeneous multi-core architecture, it is essential to exploi...
AbstractIn this paper, we present a compiler extension for applications targeting high performance e...
Functional dataflow programming languages are designed to create parallel portable programs. The sou...
In this thesis, we present the design and implementation of a compiler optimization framework for th...
Multicore architectures are increasingly used in emhedded systems to achieve higher throughput with ...
International audienceMulticore architectures are increasingly used in embedded systems to achieve h...
The acceleration of compute-intensive applications on FPGA-based systems has become an increasingly ...
This paper describes how the use of software libraries, which is prevalent in high performance comp...
The years of practice in optimizing applications point that the major issue is focus - identifying t...
International audienceThis chapter reviews dataflow programming as a whole and presents a classifica...
Dataflow analysis is a powerful tool used for program optimization, static analysis, and editor serv...