This paper presents the design and implementation of PolyMage, a domain-specific language and compiler for image processing pipelines. An image processing pipeline can be viewed as a graph of interconnected stages which process images successively. Each stage typically performs one of point-wise, stencil, reduction or data-dependent operations on image pixels. Individual stages in a pipeline typically exhibit abundant data parallelism that can be exploited with relative ease. However, the stages also require high memory bandwidth preventing effective utilization of parallelism available on modern architectures. For applications that demand high performance, the traditional options are to use optimized libraries like OpenCV or to optimize ma...
Developing an image processing or computer vision application typically involves the sequencing of a...
As the adoption of parallel and heterogeneous systems increases, programming such systems also becom...
Image processing is an area with many computationally demanding algorithms. When implementing an alg...
Effective models for fusion of loop nests continue to remain a challenge in both general-purpose and...
Even though computer graphics applications are widely used, they remain challenging to implement and...
This paper introduces TIRAMISU, a polyhedral framework designed to generate high performance code fo...
\u3cp\u3eEfficient code generation for image processing applications continues to pose a challenge i...
National audienceImage Processing, Mathematical Morphology Base Operators, The MPPA-256 Chip, Exampl...
On modern architectures, a missed optimization can translate into performance degradations reaching ...
International audienceWe present an API-based compilation strategy to optimize image applications, d...
Many image processing tasks are naturally expressed as a pipeline of small computational kernels kno...
Geometric Multigrid (GMG) methods are widely used in numerical analysis to accelerate the convergenc...
Image processing applications typically involve data-oriented kernels with limited control divergenc...
Many parallel algorithms and library routines are available for performing computer vision and image...
The polyhedral model for loop parallelization has proved to be an effective tool for ad-vanced optim...
Developing an image processing or computer vision application typically involves the sequencing of a...
As the adoption of parallel and heterogeneous systems increases, programming such systems also becom...
Image processing is an area with many computationally demanding algorithms. When implementing an alg...
Effective models for fusion of loop nests continue to remain a challenge in both general-purpose and...
Even though computer graphics applications are widely used, they remain challenging to implement and...
This paper introduces TIRAMISU, a polyhedral framework designed to generate high performance code fo...
\u3cp\u3eEfficient code generation for image processing applications continues to pose a challenge i...
National audienceImage Processing, Mathematical Morphology Base Operators, The MPPA-256 Chip, Exampl...
On modern architectures, a missed optimization can translate into performance degradations reaching ...
International audienceWe present an API-based compilation strategy to optimize image applications, d...
Many image processing tasks are naturally expressed as a pipeline of small computational kernels kno...
Geometric Multigrid (GMG) methods are widely used in numerical analysis to accelerate the convergenc...
Image processing applications typically involve data-oriented kernels with limited control divergenc...
Many parallel algorithms and library routines are available for performing computer vision and image...
The polyhedral model for loop parallelization has proved to be an effective tool for ad-vanced optim...
Developing an image processing or computer vision application typically involves the sequencing of a...
As the adoption of parallel and heterogeneous systems increases, programming such systems also becom...
Image processing is an area with many computationally demanding algorithms. When implementing an alg...