Published September 17, 2016 | Version v1
Journal article Open

A Systematic Methodology for Optimization of Applications Utilizing Concurrent Data Structures

Description

Modern multicore embedded systems often execute applications that rely heavily on concurrent data structures. The selection of efficient concurrent data structure implementations for a specific application is usually a complex and time consuming task, because each design decision often affects the performance and the energy consumption of the embedded system in various and occasionally unpredictable ways. The complexity is normally addressed by developers by adopting ad-hoc design solutions, which are often suboptimal and yield poor results. To face this problem, we propose a semi-automated methodology for the optimization of applications that utilize concurrent data structures that is based on design space exploration. The proposed approach is evaluated by using both microbenchmarks and real-world applications that are executed on multicore embedded systems with different architectural specifications. Our results show that we can identify various trade-offs between different data structure implementations that can be used to optimize applications that rely on concurrent data structures. 

Files

tc2016.pdf

Files (2.9 MB)

Name Size Download all
md5:4f05f8cf997aa1dd5b20955d60bfbb3e
2.9 MB Preview Download

Additional details

Funding

European Commission
AEGLE – AEGLE (Ancient Greek: Αἴγλη) – An analytics framework for integrated and personalized healthcare services in Europe 644906