Abstract
Embedded and high performance computing (HPC) systems face many common challenges. One of them is the synchronization of the memory accesses in shared data. Concurrent queues have been extensively studied in the HPC domain and they are used in a wide variety of HPC applications. In this work, we evaluate a set of concurrent queue implementations in an embedded platform, in terms of execution time and power consumption. Our results show that by taking advantage of the embedded platform specifications, we achieve up to 28.2 % lower execution time and 6.8 % less power dissipation in comparison with the conventional lock-based queue implementation. We show that HPC applications utilizing concurrent queues can be efficiently implemented in embedded systems and that synchronization algorithms from the HPC domain can lead to optimal resource utilization of embedded platforms.
Similar content being viewed by others
References
Sandy Bridge (2013). http://ark.intel.com/products/64610/Intel-Xeon-Processor-E5-2450L-20M-Cache-100-GTs-Intel-QPI. Accessed 8 Apr 2013
AMD Kaveri (2013). http://www.amd.com/en-us/products/processors/desktop/a-series-apu. Accessed 1 Jun 2013
Yang Y, Xiang P, Mantor M, Zhou H (2012) CPU-assisted GPGPU on fused CPU–GPU architectures. In: Proceedings of the HPCA, pp 103–114
Bell G (2008) Bell’s law for the birth and death of computer classes. Commun ACM 51(1):86–94
Wolf W (2007) High-performance embedded computing: architectures, applications and methodologies. Morgan Kaufmann, San Francisco
Rajovic N et al (2013) Tibidabo: making the case for an ARM-based HPC system. Future generation computer systems. Elsevier, Amsterdam
Shalf J, Dosanjh S, Morrison J (2011) Exascale computing technology challenges. In: Proceedings of the VECPAR’10, pp 1–25
Adiga NR et al (2002) An overview of the BlueGene/L supercomputer. In: Proceedings of the ACM/IEEE supercomputing conference, p 60
Petrovic D, Ropars T, Schiper A (2014) Leveraging hardware message passing for efficient thread synchronization. In: Proceedings of the symposium on principles and practice of parallel programming, pp 143–154
Lozi JP, David F, Thomas G, Lawall J, Muller G (2012) Remote core locking: migrating critical-section execution to improve the performance of multithreaded applications. In: Proceedings of the USENIX annual technical conference
Moloney D (2011) 1TOPS/W software programmable media processor. HotChips HC23, Stanford
Guenter B, Jain N, Williams C (2011) Managing cost, performance, and reliability tradeoffs for energy-aware server provisioning. In: Proceedings of the INFOCOM, pp 1332–1340
Hendler D, Incze I, Shavit N, Tzafrir M (2010) Flat combining and the synchronization-parallelism tradeoff. In: Proceedings of the annual ACM symposium on parallel algorithms and architectures, pp 355–364
Gramoli V, Guerraoui R, Trigonakis V (2012) TM2C: a software transactional memory for many-cores. In: Proceedings of the ACM European conference on computer systems
Abellan JL, Fernandez J, Acacio ME (2011) GLocks: efficient support for highly-contended locks in many-core CMPs. In: Proceedings of the IEEE international parallel and distributed processing symposium
Tsigas P, Zhang Y (2001) A simple, fast and scalable non-blocking concurrent FIFO queue for shared memory multiprocessor systems. In: Proceedings of the annual ACM symposium on parallel algorithms and architectures, pp 134–143
Michael MM, Scott ML (1996) Simple, fast, and practical non-blocking and blocking concurrent queue algorithms. In: Proceedings of the PODC, pp 267–275
Nvidia Tegra K1 mobile processor (2014). http://www.nvidia.com/object/tegra-k1-processor.html. Accessed 6 Jan 2014
nCore supercomputer (2013). http://www.ncorehpc.com/browndwarf. Accessed 17 Jan 2013
Project Tango (2014). https://www.google.com/atap/projecttango. Accessed 21 Feb 2014
Acknowledgments
This work was supported by the EC through the FP7 IST Project 611183, EXCESS (Execution Models for Energy-Efficient Computing Systems).
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Papadopoulos, L., Walulya, I., Renaud-Goud, P. et al. Performance and power consumption evaluation of concurrent queue implementations in embedded systems. Comput Sci Res Dev 30, 165–175 (2015). https://doi.org/10.1007/s00450-014-0261-0
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00450-014-0261-0