Abstract
Multicore processors are becoming standard called as COTS (Commercial Off The Shelf) processors but can not be fully used in the context of critical real time systems. OpenMP is one of the most used programming models to build parallel programs able to exploit such multicore processors. A lot of work try to tackle the issue of the determinism of parallel programming models. The critical real time system face an unpredictability wall of parallel programs. This paper presents Deterministic OpenMP, a new runtime for OpenMP programs, and the Little Big Processor (LBP) manycore processor design. Their aim is to help to solve the non determinism problem at the programming level but also at the execution level. When run on LBP, a Deterministic OpenMP code produces cycle by cycle deterministic computations. LBP and Deterministic OpenMP are particularly suited to safely accelerate real time embedded applications through their parallel execution.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
pc+4 points on the p_lwcv instruction just following the p_jalr one.
- 2.
The FPGA implementation uses a small FPGA which limits the processor to 8 cores.
- 3.
The routers are not yet implemented on the FPGA but simulated for the reported experiment.
References
Dagum, L., Menon, R.: OpenMP: an industry standard API for shared-memory programming. IEEE Comput. Sci. Eng. 5, 46–55 (1998)
OpenMP Architecture Review Board. OpenMP Application Program Interface Version 5.0 (2018). https://www.openmp.org/wp-content/uploads/OpenMP-API-Specification-5.0.pdf
Padua, D.: Encyclopedia of Parallel Computing, pp. 1592–1593. Springer, Boston (2011). ISBN 978-0-387-09766-4. https://doi.org/10.1007/978-0-387-09766-4_447
Lee, E.: The problem with threads. Computer 39(5), 33–42 (2006). ISSN 0018–9162
Pinho, L.M., et al.: High-Performance and Time-Predictable Embedded Computing. River Publishers, Wharton (2018).ISBN 8793609698
Shiina, S., Iwasaki, S., Taura, K., Balaji, P.: Lightweight preemptive user-level threads. In: Proceedings of the 26th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2021, Virtual Event Republic of Korea, 17 February 2021, pp. 374–388. ACM (2021). ISBN 978-1-4503-8294-6. https://doi.org/10.1145/3437801.3441610. https://dl.acm.doi.org/10.1145/3437801.3441610
Iwasaki, S., Amer, A., Taura, K., Balaji, P.: Analyzing the performance trade-off in implementing user-level threads. IEEE Trans. Parallel Distrib. Syst. 31, 1859–1877 (2020). https://doi.org/10.1109/TPDS.2020.2976057
Aviram, A., Ford, B.: Deterministic OpenMP for race-free parallelism. In: Proceedings of the 3rd USENIX Conference on Hot Topic in Parallelism, HotPar 2011, p. 4. USENIX Association, Berkeley (2011)
Lee, E.A.: What is real time computing? A personal view. IEEE Design Test 35, 64–72 (2018). https://doi.org/10.1109/MDAT.2017.2766560
Waterman, A., Asanović, K. (eds.): The RISC-V Instruction Set Manual, Volume I: User-Level ISA. Document version20191213 (2019)
LBP Project Review Board. LBP Project (2020). https://gite.lirmm.fr/lbp-group/lbp-projects/-/wikis/Little-Big-Processor-project
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this paper
Cite this paper
Goossens, B., Louetsi, K., Parello, D. (2021). Deterministic OpenMP and the LBP Parallelizing Manycore Processor. In: Malyshkin, V. (eds) Parallel Computing Technologies. PaCT 2021. Lecture Notes in Computer Science(), vol 12942. Springer, Cham. https://doi.org/10.1007/978-3-030-86359-3_3
Download citation
DOI: https://doi.org/10.1007/978-3-030-86359-3_3
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-86358-6
Online ISBN: 978-3-030-86359-3
eBook Packages: Computer ScienceComputer Science (R0)