Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2380356.2380382acmconferencesArticle/Chapter ViewAbstractPublication PagesesweekConference Proceedingsconference-collections
research-article

Shared hardware data structures for hard real-time systems

Published: 07 October 2012 Publication History

Abstract

Hardware support can reduce the time spent operating on data structures by exploiting circuit-level parallelism. Such hardware data structures (HWDSs) can reduce the latency and jitter of data structure operations, which can benefit real-time systems by reducing worst-case execution times (WCETs). For example, a hardware priority queue (HWPQ) can enqueue and dequeue prioritized items in constant time with low variance; the best software implementations are in logarithmic-time asymptotic complexity for at least one of the enqueue or dequeue operations. The main problems with HWDSs are the limited size of hardware and the complexity of sharing it. In this paper we show that software support can help circumvent the size and sharing limitations of hardware so that applications can benefit from a HWDS. We evaluate our work by showing how the choice of software or hardware affects schedulability of task sets that use multiple priority queues of varying sizes. We model task behavior on two applications that are important in real-time and embedded domains: the grey-weighted distance transform for topology mapping and Dijkstra's algorithm for GPS navigation. Our results indicate that HWDSs can reduce the WCET of applications even when a HWDS is shared by multiple data structures or when data structure sizes exceed HWDS size constraints.

References

[1]
RTEMS: Real-Time executive for multiprocessor systems. http://www.rtems.com/, 2011.
[2]
9th DIMACS implementation challenge: Shortest paths. http://www.dis.uniroma1.it/challenge9/download.shtml, 2012.
[3]
N. Audsley, A. Burns, M. Richardson, K. Tindell, and A. Wellings. Applying new scheduling theory to static priority pre-emptive scheduling. Software Engineering Journal, 8(5):284--292, Sept. 1993.
[4]
R. Bhagwan and B. Lin. Fast and scalable priority queue architecture for high-speed network switches. In INFOCOM 2000. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies. Proceedings. IEEE, volume 2, pages 538--547 vol. 2, 2000.
[5]
G. Bloom, G. Parmer, B. Narahari, and R. Simha. Real-Time scheduling with hardware data structures. In Work-in-Progress Session. IEEE Real-Time Systems Symposium, Dec. 2010.
[6]
W. Burleson, J. Ko, D. Niehaus, K. Ramamritham, J. A. Stankovic, G. Wallace, and C. Weems. The spring scheduling coprocessor: a scheduling accelerator. IEEE Trans. Very Large Scale Integr. Syst., 7(1):38--47, 1999.
[7]
R. Chandra and O. Sinnen. Improving application performance with hardware data structures. Tech. Report Faculty of Engineering, no. 678, University of Auckland, May 2010.
[8]
C. Ferdinand and R. Wilhelm. On predicting data cache behavior for Real-Time systems. In Proceedings of the ACM SIGPLAN Workshop on Languages, Compilers, and Tools for Embedded Systems, LCTES '98, pages 16--30, London, UK, UK, 1998. Springer-Verlag.
[9]
D. W. Jones. An empirical comparison of priority-queue and event-set implementations. Commun. ACM, 29(4):300--311, Apr. 1986. ACM ID: 5686.
[10]
B. K. Kim and K. Shin. Scalable hardware earliest-deadline-first scheduler for ATM switching networks. In Real-Time Systems Symposium, IEEE International, page 210, Los Alamitos, CA, USA, 1997. IEEE Computer Society.
[11]
P. Kohout, B. Ganesh, and B. Jacob. Hardware support for real-time operating systems. In Proceedings of the 1st IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis, pages 45--51, Newport Beach, CA, USA, 2003. ACM.
[12]
P. Kuacharoen, M. A. Shalan, and V. J. M. III. A configurable hardware scheduler for Real-Time systems. In Proceedings of the International Conference on Engineering of Reconfigurable Systems and Algorithms, pages 96--101, 2003.
[13]
C. Kumar, S. Vyas, J. Shidal, R. Cytron, C. Gill, J. Zambreno, and P. Jones. Improving system predictability and performance via hardware accelerated data structures. In Dynamic Data Driven Application Systems (DDDAS), 2012.
[14]
S. Kumar, C. J. Hughes, and A. Nguyen. Carbon: architectural support for fine-grained parallelism on chip multiprocessors. In Proceedings of the 34th annual international symposium on Computer architecture, pages 162--173, San Diego, California, USA, 2007. ACM.
[15]
A. LaMarca and R. Ladner. The influence of caches on the performance of heaps. J. Exp. Algorithmics, 1, Jan. 1996. ACM ID: 235145.
[16]
C. L. Luengo Hendriks. Revisiting priority queues for image analysis. Pattern Recogn., 43(9):3003--3012, Sept. 2010. ACM ID: 1808374.
[17]
M. M. K. Martin, D. J. Sorin, B. M. Beckmann, M. R. Marty, M. Xu, A. R. Alameldeen, K. E. Moore, M. D. Hill, and D. A. Wood. Multifacet's general execution-driven multiprocessor simulator (GEMS) toolset. ACM SIGARCH Computer Architecture News, 33:92--99, Nov. 2005. ACM ID: 1105747.
[18]
N. Mhatre. A Comparative Performance Analysis of Real-Time Priority Queues. Master's thesis, The Florida State University, 2001.
[19]
S. Moon, K. Shin, and J. Rexford. Scalable hardware priority queue architectures for high-speed packet switches. In Real-Time Technology and Applications Symposium, 1997. Proceedings., Third IEEE, pages 203--212, 1997.
[20]
F. Mueller. Timing analysis for instruction caches. Real-Time Syst., 18(2/3):217--247, May 2000.
[21]
I. Puaut and C. Pais. Scratchpad memories vs locked caches in hard real-time systems: a quantitative comparison. In Proceedings of the conference on Design, automation and test in Europe, DATE '07, pages 1484--1489, San Jose, CA, USA, 2007. EDA Consortium.
[22]
S. Saez, J. Vila, A. Crespo, and A. Garcia. A hardware scheduler for complex real-time systems. In Industrial Electronics, 1999. ISIE '99. Proceedings of the IEEE International Symposium on, volume 1, pages 43--48 vol. 1, 1999.
[23]
D. Sanchez, R. M. Yoo, and C. Kozyrakis. Flexible architectural support for fine-grain scheduling. In Proceedings of the fifteenth edition of ASPLOS on Architectural support for programming languages and operating systems, pages 311--322, Pittsburgh, Pennsylvania, USA, 2010. ACM.
[24]
X. Vera, B. Lisper, and J. Xue. Data caches in multitasking hard real-time systems. In Real-Time Systems Symposium, 2003. RTSS 2003. 24th IEEE, pages 154--165, 2003.
[25]
Q. Wan, H. Wu, and J. Xue. WCET-aware data selection and allocation for scratchpad memory. In Proceedings of the 13th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, Tools and Theory for Embedded Systems, LCTES '12, pages 41--50, New York, NY, USA, 2012. ACM.
[26]
J. Whitham and N. Audsley. Investigating average versus Worst-Case timing behavior of data caches and data scratchpads. In Real-Time Systems (ECRTS), 2010 22nd Euromicro Conference on, pages 165--174, July 2010.
[27]
J. Whitham and N. Audsley. Studying the applicability of the scratchpad memory management unit. In Real-Time and Embedded Technology and Applications Symposium (RTAS), 2010 16th IEEE, pages 205--214, Apr. 2010.
[28]
M. V. Wilkes. The memory gap and the future of high performance memories. SIGARCH Comput. Archit. News, 29(1):2--7, Mar. 2001. ACM ID: 373576.
[29]
H. Wu, J. Xue, and S. Parameswaran. Optimal WCET-aware code selection for scratchpad memory. In Proceedings of the tenth ACM international conference on Embedded software, EMSOFT '10, pages 59--68, New York, NY, USA, 2010. ACM.
[30]
W. A. Wulf and S. A. McKee. Hitting the memory wall: implications of the obvious. ACM SIGARCH Computer Architecture News, 23:20--24, Mar. 1995. ACM ID: 216588.

Cited By

View all
  • (2023)BMW Tree: Large-scale, High-throughput and Modular PIFO Implementation using Balanced Multi-Way Sorting TreeProceedings of the ACM SIGCOMM 2023 Conference10.1145/3603269.3604862(208-219)Online publication date: 10-Sep-2023
  • (2022)Scheduling Periodic Real-Time Tasks with Inter-Task Synchronisation2022 11th Mediterranean Conference on Embedded Computing (MECO)10.1109/MECO55406.2022.9797213(1-4)Online publication date: 7-Jun-2022
  • (2020)HRHS: A High-Performance Real-Time Hardware SchedulerIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2019.295213631:4(897-908)Online publication date: 1-Apr-2020
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
EMSOFT '12: Proceedings of the tenth ACM international conference on Embedded software
October 2012
266 pages
ISBN:9781450314251
DOI:10.1145/2380356
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 07 October 2012

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. hardware data structures
  2. priority queue
  3. schedulability

Qualifiers

  • Research-article

Conference

ESWEEK'12
ESWEEK'12: Eighth Embedded System Week
October 7 - 12, 2012
Tampere, Finland

Acceptance Rates

Overall Acceptance Rate 60 of 203 submissions, 30%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)1
Reflects downloads up to 03 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2023)BMW Tree: Large-scale, High-throughput and Modular PIFO Implementation using Balanced Multi-Way Sorting TreeProceedings of the ACM SIGCOMM 2023 Conference10.1145/3603269.3604862(208-219)Online publication date: 10-Sep-2023
  • (2022)Scheduling Periodic Real-Time Tasks with Inter-Task Synchronisation2022 11th Mediterranean Conference on Embedded Computing (MECO)10.1109/MECO55406.2022.9797213(1-4)Online publication date: 7-Jun-2022
  • (2020)HRHS: A High-Performance Real-Time Hardware SchedulerIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2019.295213631:4(897-908)Online publication date: 1-Apr-2020
  • (2020)RED-based Scheduler on Chip for Mixed-Criticality Real-Time Systems2020 9th Mediterranean Conference on Embedded Computing (MECO)10.1109/MECO49872.2020.9134328(1-4)Online publication date: Jun-2020
  • (2019)A Novel On-Chip Task Scheduler for Mixed-Criticality Real-Time SystemsJournal of Circuits, Systems and Computers10.1142/S021812661940005XOnline publication date: 26-Mar-2019
  • (2019)HPQS: A Fast, High-Capacity, Hybrid Priority Queuing System for High-Speed Networking DevicesIEEE Access10.1109/ACCESS.2019.29391547(130672-130684)Online publication date: 2019
  • (2018)A Fast, Single-Instruction–Multiple-Data, Scalable Priority QueueIEEE Transactions on Very Large Scale Integration (VLSI) Systems10.1109/TVLSI.2018.283804426:10(1939-1952)Online publication date: Oct-2018
  • (2018)HPQ: A High Capacity Hybrid Priority Queue Architecture for High-Speed Network Switches2018 16th IEEE International New Circuits and Systems Conference (NEWCAS)10.1109/NEWCAS.2018.8585434(229-233)Online publication date: Jun-2018
  • (2018)A novel hardware-accelerated real-time task scheduler based on robust earliest deadline algorithm2018 13th International Conference on Design & Technology of Integrated Systems In Nanoscale Era (DTIS)10.1109/DTIS.2018.8368551(1-2)Online publication date: Apr-2018
  • (2016)Improving high-level synthesis with decoupled data structure optimizationProceedings of the 53rd Annual Design Automation Conference10.1145/2897937.2898030(1-6)Online publication date: 5-Jun-2016
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media