“Marc did an excellent job as Project Leader for the Media Gateway server. He really knows what he talks about with detailed and in dept knowledge about his project. Marc is a person you can rely on and I would recommend him anytime.”
Experience & Education
Publications
-
A Flexible Library for Dependable Master-Worker Parallel Programs
IEEE
We describe a robust library for parallel and dependable master-worker programs (raftnet). From a software client’s viewpoint, flexibility, hardware independence and ease of use are the main features offered by this library, while its users may take advantage of a framework that optimises the available redundant resources so as to reach at the same time dependability, high performance and load balancing. A wide variety of applications can be targeted
without major rewritings of the existing…We describe a robust library for parallel and dependable master-worker programs (raftnet). From a software client’s viewpoint, flexibility, hardware independence and ease of use are the main features offered by this library, while its users may take advantage of a framework that optimises the available redundant resources so as to reach at the same time dependability, high performance and load balancing. A wide variety of applications can be targeted
without major rewritings of the existing sequential code.
This paper describes the implementation of this library and provides evidence to our claims describing two case studies
from vision and multimedia applications.
Other authorsSee publication -
Automated Dynamic Memory Data Type Implementation Exploration and Optimization
IEEE
The behavior of many algorithms is heavily determined by the input data. Furthermore, this often means that multiple and completely different execution paths can be followed, also internal data usage and handling is frequently quite different. Therefore, static compile time memory allocation is not efficient, especially on embedded systems where memory is a scarce resource, and dynamic mem-
ory management is the only feasible alternative. Including applications with dynamic memory in…The behavior of many algorithms is heavily determined by the input data. Furthermore, this often means that multiple and completely different execution paths can be followed, also internal data usage and handling is frequently quite different. Therefore, static compile time memory allocation is not efficient, especially on embedded systems where memory is a scarce resource, and dynamic mem-
ory management is the only feasible alternative. Including applications with dynamic memory in embedded systems
introduces new challenges as compared to traditional signal processing applications. In this session, an automated framework is presented to optimize embedded applications with extensive use of dynamic memory management. The proposed methodology automates the exploration and identification of optimal data type implementations based on power estimates, memory accesses and normalized memory usage.
Other authorsSee publication -
Intermediate Variable Elimination in a Global Context for a 3D Multimedia Application
IEEE
The 3D multimedia applications have been experiencing recently a tremendous growth in number and complexity. Such applications mainly consist of complex algorithms that process extensive amounts of data to create 3D images and results. For quick access, data need to be stored in small and expensive memories near the processor. Due to the increasing memory-processor gap in speed and the characteristics of multimedia applications (with highly power- and space consuming data sets), software…
The 3D multimedia applications have been experiencing recently a tremendous growth in number and complexity. Such applications mainly consist of complex algorithms that process extensive amounts of data to create 3D images and results. For quick access, data need to be stored in small and expensive memories near the processor. Due to the increasing memory-processor gap in speed and the characteristics of multimedia applications (with highly power- and space consuming data sets), software transformations are required to decrease memory requirements. In this paper, we propose a method to reduce the indirections of data types in real 3D multimedia applications. It is based on software transformations of the original algorithm to minimize the intermediate assignments and, as such, the required data types.
To assess the performance of our method, we apply it to a relatively new 3D image reconstruction application. As a result, for this multimedia application, our method reduces 50× the amount of memory accesses, 30× the normalized memory footprint and 67× the energy consumption compared to a manually well-optimized version of the algorithm. Finally, compared to the original application, the overall performance improves by 40% on a PC.
Other authorsSee publication -
Methodology for Refinement and Optimisation of Dynamic Memory Management for Embedded Systems in Multimedia Applications
IEEE
In multimedia applications, run-time memory management support has to allow real-time memory de/allocation, retrieving and processing of data. Thus, its implementation must be designed to combine high speed, low power, large data storage capacity and a high memory bandwidth. In this paper, we assess the performance of our new system-level exploration methodology to optimize the memory management of typical multimedia applications in an extensively used 3D reconstruction image system [1, 2]…
In multimedia applications, run-time memory management support has to allow real-time memory de/allocation, retrieving and processing of data. Thus, its implementation must be designed to combine high speed, low power, large data storage capacity and a high memory bandwidth. In this paper, we assess the performance of our new system-level exploration methodology to optimize the memory management of typical multimedia applications in an extensively used 3D reconstruction image system [1, 2]. This methodology is based on an analysis of the number of memory accesses, normalized memory use 1 and energy estimations for
the system studied. This results in an improvement of normalized memory footprint up to 44.2% and the estimated energy dissipation up to 22.6% over conventional static memory implementations in an optimized version of the driver application. Finally, our final version is able to scale perfectly the memory consumed in the system for a wide range of input parameters whereas the statically optimized version is unable to do this.
Other authorsSee publication -
Power Estimation Approach of Dynamic Data Storage on a Hardware Software Boundary Level
IEEE
In current multimedia applications like 3D graphical processing or games, the run-time memory management support has to allow real-time memory de/allocation, retrieving and data processing. The implementations of these algorithms for embedded platforms require high speed, low power and large data storage capacity. Due to the large hardware/software co-design space, high-level implementation cost estimates are required to avoid expensive design modifications late in the implementation. In this…
In current multimedia applications like 3D graphical processing or games, the run-time memory management support has to allow real-time memory de/allocation, retrieving and data processing. The implementations of these algorithms for embedded platforms require high speed, low power and large data storage capacity. Due to the large hardware/software co-design space, high-level implementation cost estimates are required to avoid expensive design modifications late in the implementation. In this paper, we present an approach designed to do that. Based on memory accesses, normalised memory usage1 and power estimates, the algorithm code is refined. Furthermore, optimal implementations for the dynamic data types involved can be selected with a considerable power contribution reduction.
Other authorsSee publication -
Bridging the educational gap in embedded systems curricula: Developing an e-commerce audio streaming system
IEEE
See publicationIn this paper, a design seminar on embedded systems is described for fourth year students in the Multimedia and signal processing option at our electrical engineering department. The aim of the seminar is to ease up the adaptation of the universitary curriculum to what is expected by industry of a high level engineer. The main purpose of the seminar is to provide the students with a real life problem, covering different expertise areas and multiple hardware platforms, programming techniques and…
In this paper, a design seminar on embedded systems is described for fourth year students in the Multimedia and signal processing option at our electrical engineering department. The aim of the seminar is to ease up the adaptation of the universitary curriculum to what is expected by industry of a high level engineer. The main purpose of the seminar is to provide the students with a real life problem, covering different expertise areas and multiple hardware platforms, programming techniques and development tools in order to develop a commercially viable application with
off-the-shelf tools, hardware and software. The interdisciplinary character of this seminar is an excellent opportunity to see how the different topics taught in different courses interact in a real life system.
-
Education of Embedded Systems: Design of a set-top box for streaming audio applications on C6711 and MSP430 devices
Texas Instruments
In this paper, a design seminar on embedded systems is described for fourth year students in the Multimedia and signal processing option at our electrical engineering department. The goal of this seminar is to confront the student with the design a real life example in order to ease up the adaptation of the universitary curriculum to what is expected by industry of a high level engineer. The project covers multiple expertise areas, programming techniques and languages, development tools and…
In this paper, a design seminar on embedded systems is described for fourth year students in the Multimedia and signal processing option at our electrical engineering department. The goal of this seminar is to confront the student with the design a real life example in order to ease up the adaptation of the universitary curriculum to what is expected by industry of a high level engineer. The project covers multiple expertise areas, programming techniques and languages, development tools and hardware platforms in order to develop a prototype of a set-top box with off-the-shelf tools, hardware and software. The interdisciplinary
character of this seminar combines multiple topics taught in courses in the application.
Other authorsSee publication -
Efficient Datatype Identification in Image Processing Applications with Dynamic Memory Behaviour
IEEE
An application can be sped up by removing or relieving bottlenecks. These bottlenecks can consist of implicit or explicit unneeded data dependencies, but equally important is the identification of appropriate implementations of data types that store and handle the data that is needed during the application run. This presentation covers data type refinement in image processing applications with dynamic memory behaviour, e.g. on corner detection and matching algorithms. The size of the data that…
An application can be sped up by removing or relieving bottlenecks. These bottlenecks can consist of implicit or explicit unneeded data dependencies, but equally important is the identification of appropriate implementations of data types that store and handle the data that is needed during the application run. This presentation covers data type refinement in image processing applications with dynamic memory behaviour, e.g. on corner detection and matching algorithms. The size of the data that is generated and processed during an application run is unknown at compile time and partially dependent on external factors (types of images, parameters of the preceding algorithms, ...). As such, it is difficult to make a reasonable estimate of the required memory footprint and performance at compile time.
This presentation proposes a new method where the dynamic memory behaviour is profiled, the code is analysed and data types that form possible bottlenecks are tagged. For each of these types, possible concrete data structure implementations are explored driven by a cost function that reflects estimated memory footprint, memory access and required functionality.
Other authorsSee publication -
Implementation of a robust 3D image reconstruction algorithm on a TMS320C67x
Texas Instruments
See publication3D-image reconstruction is both an interesting as well as a challenging topic to work on. On one hand, there is an ever increasing interest in the use of these techniques in different kinds of application fields. On the other hand, most of the available techniques are limited by their extensive and as such expensive setup or the ability to capture and reconstruct only small artifacts.
The algorithm developed by Pollefeys et al.[1] solved these issues by starting from 2D images made with a…3D-image reconstruction is both an interesting as well as a challenging topic to work on. On one hand, there is an ever increasing interest in the use of these techniques in different kinds of application fields. On the other hand, most of the available techniques are limited by their extensive and as such expensive setup or the ability to capture and reconstruct only small artifacts.
The algorithm developed by Pollefeys et al.[1] solved these issues by starting from 2D images made with a standard hand-held camera. Due to the heavy computational requirements of the algorithm, the most powerful floating point DSP available was chosen. When the project started, this was the Texas Instruments TMS329C67x, which was soon to become in production. This paper will focus on the implementation of one of the first steps in the 3D-image reconstruction algorithm.
-
Interactive Strategies and Analysis Method for Dynamic Data Type Transformation and Refinement In Multimedia Applications
K.U.Leuven
See publicationEven though the implementation of the dynamic data types is very important, an application cannot be efficient if it stores too much data for too long a time. In order to avoid this, we propose to apply a number of techniques that are used to optimise static data types much earlier in the design optimisation. We want to refine the number of dynamic data types before we refine the implementation of the (remaining) data types. Only if the number of dynamic data-types is reduced to a minimum, can…
Even though the implementation of the dynamic data types is very important, an application cannot be efficient if it stores too much data for too long a time. In order to avoid this, we propose to apply a number of techniques that are used to optimise static data types much earlier in the design optimisation. We want to refine the number of dynamic data types before we refine the implementation of the (remaining) data types. Only if the number of dynamic data-types is reduced to a minimum, can the application be efficient.
Finally, we link these dynamic data-type focussed issues with the subsequent step in the global optimisation flow and provide a seamless integration with the design and refinement of dynamic memory allocators, a system component that keeps track of the used physical memory.
Organizations
-
IEEE
-
Recommendations received
7 people have recommended Marc
Join now to viewOther similar profiles
Explore collaborative articles
We’re unlocking community knowledge in a new way. Experts add insights directly into each article, started with the help of AI.
Explore MoreOthers named Marc Leeman
12 others named Marc Leeman are on LinkedIn
See others named Marc Leeman