Yearly Archives: 2015

Efficient Communication Using Ring Buffers – Early Results

Efficient Communication Using Ring Buffers – Early Results

  • Maxwell Walter, Jesper Puge Nielsen, and Sven Karlsson. Efficient Communication Using Ring Buffers — Early Results. In Proceedings of the Swedish Workshop on Multicore Computing (MCC 2015), Copenhagen, DK, 2015.
    [BibTeX] [Abstract]

    Communication is a vital concern to modern multiprocessor and multi-core systems, as communication between threads and processes on different cores can quickly become a performance bottle-neck. In addition, most communication mechanisms require synchronization protocols that are complicated to get right, further degrading performance. We propose a communication mechanism, based on shared memory, with built-in synchronization protocols. We model our communication structures, which we call ring buffers, around the communication mechanisms observed between current hardware and software systems. While our ring buffers are not operating system specific, we have designed our multi-core research operating system, FenixOS, around them. This makes communication a fundamental system component and allows us to provide efficient communication between threads, processes, the kernel, and device drivers. In this paper we describe our preliminary work on our ring buffer structures. We also provide early results comparing our ring buffers against several other common communication mechanisms, as well as a Linux ring buffer implementation.

    @InProceedings{2015-11-WALTER,
    title = {{Efficient Communication Using Ring Buffers -- Early Results}},
    author = {Maxwell Walter and Jesper Puge Nielsen and Sven Karlsson},
    booktitle = {{Proceedings of the Swedish Workshop on Multicore Computing (MCC 2015)}},
    address = {Copenhagen, DK},
    date = {2015-11-25/2015-11-26},
    year = {2015},
    abstract = {Communication is a vital concern to modern multiprocessor and multi-core systems, as communication between threads and processes on different cores can quickly become a performance bottle-neck. In addition, most communication mechanisms require synchronization protocols that are complicated to get right, further degrading performance. We propose a communication mechanism, based on shared memory, with built-in synchronization protocols. We model our communication structures, which we call ring buffers, around the communication mechanisms observed between current hardware and software systems.
    While our ring buffers are not operating system specific, we have designed our multi-core research operating system, FenixOS, around them. This makes communication a fundamental system component and allows us to provide efficient communication between threads, processes, the kernel, and device drivers. In this paper we describe our preliminary work on our ring buffer structures. We also provide early results comparing our ring buffers against several other common communication mechanisms, as well as a Linux ring buffer implementation.}
    }

Posted in Dissemination | Leave a comment
Designing a Lock-free Virtual Memory Management System

Designing a Lock-free Virtual Memory Management System

  • Jesper Puge Nielsen, Maxwell Walter, and Sven Karlsson. Designing a Lock-free Virtual Memory Management System. In Proceedings of the Swedish Workshop on Multicore Computing (MCC 2015), Copenhagen, DK, 2015.
    [BibTeX] [Abstract]

    Operating system developers must turn to new techniques to maintain scalability as the number of cores controlled by the operating system grows. Traditional lock based system design has proven to be easy to implement, but their performance fails to scale with the number of cores. In this paper we present the design of a virtual memory management system for a multi-core operating system. The system is designed without the use of locks. Instead, atomic operations are used to synchronize between threads. We discuss the challenges of designing a lock-free virtual memory management system, and present the solutions we have chosen. These includes a flat virtual address space design supporting lock-free concurrent modifications, and a new algorithm for sharing physical page frames between processes, without using locks to synchronize new physical page frame mappings and concurrent reclamation of physical page frames. We have implemented our design for the AMD64 architecture and evaluated it by comparing it to a lock based implementation.

    @InProceedings{2015-11-NIELSEN,
    title = {{Designing a Lock-free Virtual Memory Management System}},
    author = {Jesper Puge Nielsen and Maxwell Walter and Sven Karlsson},
    booktitle = {{Proceedings of the Swedish Workshop on Multicore Computing (MCC 2015)}},
    address = {Copenhagen, DK},
    date = {2015-11-25/2015-11-26},
    year = {2015},
    abstract = {Operating system developers must turn to new techniques to maintain scalability as the number of cores controlled by the operating system grows. Traditional lock based system design has proven to be easy to implement, but their performance fails to scale with the number of cores.
    In this paper we present the design of a virtual memory management system for a multi-core operating system. The system is designed without the use of locks. Instead, atomic operations are used to synchronize between threads. We discuss the challenges of designing a lock-free virtual memory management system, and present the solutions we have chosen. These includes a flat virtual address space design supporting lock-free concurrent modifications, and a new algorithm for sharing physical page frames between processes, without using locks to synchronize new physical page frame mappings and concurrent reclamation of physical page frames. We have implemented our design for the AMD64 architecture and evaluated it by comparing it to a lock based implementation.}
    }

Posted in Dissemination | Leave a comment
Project meeting in Slovenia

Project meeting in Slovenia

The next project meeting will be held in Slovenia as follows:

  • Monday, April 18, 2016, plenary meeting at the Jožef Stefan Institute, Ljubljana
  • Tuesday, April 19, 2016, visit of the demonstrator in Kolektor, Idrija
Posted in News, Project-meetings | Leave a comment
Smart Video Data

Smart Video Data

  • Andrea Cavallaro. Smart Video Data. Keynote lecture at European Data Forum, 2015.
    [BibTeX] [Abstract]

    Video capturing devices are ubiquitous. Cameras with microphones are increasingly worn by people, mounted on dashboards and micro-drones; installed in hallways, streets and stores. In this talk I will cover techniques that automatically extract actionable information from videos and camera networks to learn patterns of behaviour, to detect anomalies and to help predict intentions. I will focus on recent applications that are offering extraordinary opportunities to improve our businesses, safety and quality of life; discuss the associated scientific challenges and privacy implications.

    @Misc{2015-11-CAVALLARO,
    author = {Andrea Cavallaro},
    title = {{Smart Video Data}},
    howpublished = {Keynote lecture at European Data Forum},
    date = {2015-11-16},
    year = {2015},
    address = {Luxembourg},
    abstract = {Video capturing devices are ubiquitous. Cameras with microphones are increasingly worn by people, mounted on dashboards and micro-drones; installed in hallways, streets and stores. In this talk I will cover techniques that automatically extract actionable information from videos and camera networks to learn patterns of behaviour, to detect anomalies and to help predict intentions. I will focus on recent applications that are offering extraordinary opportunities to improve our businesses, safety and quality of life; discuss the associated scientific challenges and privacy implications.}
    }

Posted in Dissemination | Leave a comment
Experimental demonstration of extended depth-of-field f/1.2 visible High Definition camera with jointly optimized phase mask and real-time digital processing

Experimental demonstration of extended depth-of-field f/1.2 visible High Definition camera with jointly optimized phase mask and real-time digital processing

  • Marie-Anne Burcklen, Frederic Diaz, François Leprêtre, Joel Rollin, Anne Delboulbé, Mane-Si Laure Lee, Brigitte Loiseaux, Allan Koudoli, Simon Denel, Philippe Millet, Francois Duhem, Fabrice Lemonnier, Hervé Sauer, and Francois Goudail. Experimental demonstration of extended depth-of-field f/1.2 visible High Definition camera with jointly optimized phase mask and real-time digital processing. Journal of the european optical society – rapid publications, 10:1-6, 2015. doi:10.2971/jeos.2015.15046
    [BibTeX] [Abstract]

    Increasing the depth of field (DOF) of compact visible high resolution cameras while maintaining high imaging performance in the DOF range is crucial for such applications as night vision goggles or industrial inspection. In this paper, we present thppe end-to-end design and experimental validation of an extended depth-of-field visible High Definition camera with a very small f-number, combining a six-ring pyramidal phase mask in the aperture stop of the lens with a digital deconvolution. The phase mask and the deconvolution algorithm are jointly optimized during the design step so as to maximize the quality of the deconvolved image over the DOF range. The deconvolution processing is implemented in real-time on a Field-Programmable Gate Array and we show that it requires very low power consumption. By mean of MTF measurements and imaging experiments we experimentally characterize the performance of both cameras with and without phase mask and thereby demonstrate a significant increase in depth of field of a factor 2.5, as it was expected in the design step.

    @Article{2015-10-BURCKLEN,
    author = {Marie-Anne Burcklen and Frederic Diaz and Fran\c{c}ois Lepr\^{e}tre and Joel Rollin and Anne Delboulb\'e and Mane-Si Laure Lee and Brigitte Loiseaux and Allan Koudoli and Simon Denel and Philippe Millet and Francois Duhem and Fabrice Lemonnier and Herv\'e Sauer and Francois Goudail},
    title = {{Experimental demonstration of extended depth-of-field f/1.2 visible High Definition camera with jointly optimized phase mask and real-time digital processing}},
    journal = {Journal of the European Optical Society - Rapid publications},
    date = {2015-10-21},
    year = {2015},
    volume = {10},
    pages = {1-6},
    doi = {10.2971/jeos.2015.15046},
    publisher = {EOS},
    abstract = {Increasing the depth of field (DOF) of compact visible high resolution cameras while maintaining high imaging performance in the DOF range is crucial for such applications as night vision goggles or industrial inspection. In this paper, we present thppe end-to-end design and experimental validation of an extended depth-of-field visible High Definition camera with a very small f-number, combining a six-ring pyramidal phase mask in the aperture stop of the lens with a digital deconvolution. The phase mask and the deconvolution algorithm are jointly optimized during the design step so as to maximize the quality of the deconvolved image over the DOF range. The deconvolution processing is implemented in real-time on a Field-Programmable Gate Array and we show that it requires very low power consumption. By mean of MTF measurements and imaging experiments we experimentally characterize the performance of both cameras with and without phase mask and thereby demonstrate a significant increase in depth of field of a factor 2.5, as it was expected in the design step.}
    }

Posted in Dissemination | Leave a comment
Determining surface roughness of semifinished products using computer vision and machine learning

Determining surface roughness of semifinished products using computer vision and machine learning

  • Valentin Koblar, Martin Pečar, Klemen Gantar, Tea Tušar, and Bogdan Filipič. Determining surface roughness of semifinished products using computer vision and machine learning. In Proceedings of the 18th International Multiconference Information Society (IS 2015), volume A, pages 51-54, 2015.
    [BibTeX] [Abstract] [Download PDF]

    In the production of components for various industries, including automotive, monitoring of surface roughness is one of the key quality control procedures since achieving appropriate surface quality is necessary for reliable functioning of the manufactured components. This study deals with the task of determining the surface roughness of semifinished products and proposes a computer-vision-based method for this purpose. To automate the design of the method, machine learning is used to induce suitable predictive models from the captured product images, and evolutionary computation to tune the computer vision algorithm parameters. The resulting method allows for accurate online determination of roughness quality classes and shows a potential for online prediction of roughness values.

    @InProceedings{2015-10-KOBLAR,
    title = {{Determining surface roughness of semifinished products using computer vision and machine learning}},
    author = {Valentin Koblar and Martin Pe\v{c}ar and Klemen Gantar and Tea Tu\v{s}ar and Bogdan Filipi\v{c}},
    booktitle = {{Proceedings of the 18th International Multiconference Information Society (IS 2015)}},
    volume = {A},
    pages = {51-54},
    date = {2015-10},
    url = {http://www.copcams.eu/wp-content/uploads/2015/10/Koblar_etal_IS2015_Vol.A_51-54.pdf},
    abstract = {In the production of components for various industries, including automotive, monitoring of surface roughness is one of the key quality control procedures since achieving appropriate surface quality is necessary for reliable functioning of the manufactured components. This study deals with the task of determining the surface roughness of semifinished products and proposes a computer-vision-based method for this purpose. To automate the design of the method, machine learning is used to induce suitable predictive models from the captured product images, and evolutionary computation to tune the computer vision algorithm parameters. The resulting method allows for accurate online determination of roughness quality classes and shows a potential for online prediction of roughness values.},
    year = {2015}
    }

Posted in Dissemination | Leave a comment
OpenCL Implementation of Mean Shift Algorithm with Performance Comparisons on Discrete and Embedded

OpenCL Implementation of Mean Shift Algorithm with Performance Comparisons on Discrete and Embedded

  • Özge Ünel and Toygar Akgün. OpenCL Implementation of Mean Shift Algorithm with Performance Comparisons on Discrete and Embedded . Advanced Concepts for Intelligent Vision Systems (ACIVS 2015), 2015.
    [BibTeX]
    @Misc{2015-10-UNEL,
    author = {\"{O}zge \"{U}nel and Toygar Akg\"{u}n},
    title = {{OpenCL Implementation of Mean Shift Algorithm with Performance Comparisons on Discrete and Embedded }},
    howpublished = {Advanced Concepts for Intelligent Vision Systems (ACIVS 2015)},
    address = {Catania, Italy},
    date = {2015-10-26/2015-10-29},
    year = {2015}
    }

Posted in Dissemination | Leave a comment
Smart Image Sensor for Advanced Use and New Applications

Smart Image Sensor for Advanced Use and New Applications

  • Michael Tchagaspanian. Smart Image Sensor for Advanced Use and New Applications. Advanced Concepts for Intelligent Vision Systems (ACIVS 2015), 2015.
    [BibTeX] [Abstract]

    Multimedia applications such as video compression, image processing, face recognition, run now on embedded platforms. The huge computing power needed is provided by the evolution of the transistor density and by using specialized accelerators. These accelerators are supported by multimedia instructions set. Using these complex instructions can be a nightmare for the engineer because there are many ways to program it, quality of the compiler support can be random depending on the couple compiler/platform and worse, performances can be data dependent. Using libraries can be an option if such libraries exist and provide enough performances. In this talk, I’ll illustrate the difficulty to generate binary code for this application domain by practical example of code generation. Then I’ll show a tool deGoal which is developed in house to resolve these problems.

    @Misc{2015-10-TCHAGASPANIAN,
    author = {Michael Tchagaspanian},
    title = {{Smart Image Sensor for Advanced Use and New Applications}},
    howpublished = {Advanced Concepts for Intelligent Vision Systems (ACIVS 2015)},
    address = {Catania, Italy},
    date = {2015-10-26/2015-10-29},
    year = {2015},
    abstract = {Multimedia applications such as video compression, image processing, face recognition, run now on embedded platforms. The huge computing power needed is provided by the evolution of the transistor density and by using specialized accelerators. These accelerators are supported by multimedia instructions set.
    Using these complex instructions can be a nightmare for the engineer because there are many ways to program it, quality of the compiler support can be random depending on the couple compiler/platform and worse, performances can be data dependent. Using libraries can be an option if such libraries exist and provide enough performances.
    In this talk, I'll illustrate the difficulty to generate binary code for this application domain by practical example of code generation. Then I'll show a tool deGoal which is developed in house to resolve these problems. }
    }

Posted in Dissemination | Leave a comment
An Adaptive Framework for Imaging Systems

An Adaptive Framework for Imaging Systems

  • Andreas Erik Hindborg, Lars Frydendal Bonnichsen, Nicklas Bo Jensen, Laust Brock-Nannestad, Christian W. Probst, and Sven Karlsson. An Adaptive Framework for Imaging Systems. Advanced Concepts for Intelligent Vision Systems (ACIVS 2015), 2015.
    [BibTeX] [Abstract]

    Computer vision and video processing systems handle large amounts of data with varying spatial and temporal resolution and multiple imaging modalities. The current best practice is to design video processing systems with an overcapacity, which avoids underperforming in the general case, but wastes resources. In this work we present an adaptive framework for imaging systems that aims at minimizing waste of resources. Depending on properties of the processed images, the system dynamically adapts both the implementation of the processing system and properties of the underlying hardware.

    @Misc{2015-10-HINDBORG,
    author = {Andreas Erik Hindborg and Lars Frydendal Bonnichsen and Nicklas Bo Jensen and Laust Brock-Nannestad and Christian W. Probst and Sven Karlsson},
    title = {{An Adaptive Framework for Imaging Systems}},
    howpublished = {Advanced Concepts for Intelligent Vision Systems (ACIVS 2015)},
    address = {Catania, Italy},
    date = {2015-10-26/2015-10-29},
    year = {2015},
    abstract = {Computer vision and video processing systems handle large amounts of data with varying spatial and temporal resolution and multiple imaging modalities. The current best practice is to design video processing systems with an overcapacity, which avoids underperforming in the general case, but wastes resources. In this work we present an adaptive framework for imaging systems that aims at minimizing waste of resources. Depending on properties of the processed images, the system dynamically adapts both the implementation of the processing system and properties of the underlying hardware. }
    }

Posted in Dissemination | Leave a comment
Binary Code Generation for Multimedia Application on Embedded Platforms

Binary Code Generation for Multimedia Application on Embedded Platforms

  • Henri-Pierre Charles. Binary Code Generation for Multimedia Application on Embedded Platforms. Advanced Concepts for Intelligent Vision Systems (ACIVS 2015), 2015.
    [BibTeX] [Abstract]

    Multimedia applications such as video compression, image processing, face recognition, run now on embedded platforms. The huge computing power needed is provided by the evolution of the transistor density and by using specialized accelerators. Theses accelerators are supported by multimedia instructions set. Using theses complex instructions can be a nightmare for the engineer because there is many way to program it, quality of the compiler support can be random depending on the couple compiler/platform and worse, performances can be data dependent. Using libraries can be an option if such library exist and provide enough performances. In this talk I’ll illustrate the difficulty to generate binary code for this application domain by practical example of code generation. Then I’ll show a tool deGoal which is developed in house to resolve these problems.

    @Misc{2015-10-CHARLES,
    author = {Henri-Pierre Charles},
    title = {{Binary Code Generation for Multimedia Application on Embedded Platforms}},
    howpublished = {Advanced Concepts for Intelligent Vision Systems (ACIVS 2015)},
    address = {Catania, Italy},
    date = {2015-10-26/2015-10-29},
    year = {2015},
    abstract = {Multimedia applications such as video compression, image processing, face recognition, run now on embedded platforms. The huge computing power needed is provided by the evolution of the transistor density and by using specialized accelerators. Theses accelerators are supported by multimedia instructions set.
    Using theses complex instructions can be a nightmare for the engineer because there is many way to program it, quality of the compiler support can be random depending on the couple compiler/platform and worse, performances can be data dependent. Using libraries can be an option if such library exist and provide enough performances.
    In this talk I'll illustrate the difficulty to generate binary code for this application domain by practical example of code generation. Then I'll show a tool deGoal which is developed in house to resolve these problems. }
    }

Posted in Dissemination | Leave a comment