85 Optimization of Task Allocation and Priority Assignment in Hard Real-Time Distributed Systems QI ZHU, Intel Corp. HAIBO ZENG, General Motors R&D WEI ZHENG, University of California, Berkeley MARCO DI NATALE, Scuola Superiore S. Anna ALBERTO SANGIOVANNI-VINCENTELLI, University of California, Berkeley The complexity and physical distribution of modern active safety, chassis, and powertrain automotive ap- plications requires the use of distributed architectures. Complex functions designed as networks of function blocks exchanging signal information are deployed onto the physical HW and implemented in a SW architec- ture consisting of a set of tasks and messages. The typical configuration features priority-based scheduling of tasks and messages and imposes end-to-end deadlines. In this work, we present and compare formula- tions and procedures for the optimization of the task allocation, the signal to message mapping, and the assignment of priorities to tasks and messages in order to meet end-to-end deadline constraints and mini- mize latencies. Our formulations leverage worst-case response time analysis within a mixed integer linear optimization framework and are compared for performance against a simulated annealing implementation. The methods are applied for evaluation to an automotive case study of complexity comparable to industrial design problems. Categories and Subject Descriptors: C.3 [Special-Purpose and Application-Based Systems]: Real-time and embedded systems; G.1.6 [Optimization]: Integer programming General Terms: Design Additional Key Words and Phrases: Design optimization, real-time systems, schedulability, automotive sys- tems, architectures, optimization ACM Reference Format: Zhu, Q., Zeng, H., Zheng, W., Di Natale, M., and Sangiovanni-Vincentelli, A. 2012. Optimization of task allocation and priority assignment in hard real-time distributed systems. ACM Trans. Embedd. Comput. Syst. 11, 4, Article 85 (December 2012), 30 pages. DOI = 10.1145/2362336.2362352 http://doi.acm.org/10.1145/2362336.2362352 1. INTRODUCTION Function development in Electronics, Controls, and Software (ECS) vehicle architec- tures has traditionally been component or subsystem focused. In recent years, there has been a shift from the single Electronic Control Unit (ECU) approach towards an increased networking of control modules with an increased number of distributed time-critical functions and multiple tasks on each ECU. Q. Zhu is currently affiliated with the University of California, Riverside. Authors’ addresses: Q. Zhu (corresponding author), Department of Electrical Engineering, University of California, Riverside, Riverside, CA 92521; email: qzhu@ee.ucr.edu; H. Zeng, General Motors R&D, 422 Portage Ave., Palo Alto, CA 94306; W. Zheng and A. Sangiovanni-Vincentelli, Department of Electrical Engineering and Computer Sciences, University of California Berkeley, Berkeley, CA 94720; M. Di Natale, Scuola Superiore S. Anna, Via Moruzzi, 1, Pisa, Italy. Permission to make digital or hard copies of part or all 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 show this notice on the first page or initial screen of a display along with the full citation. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, to republish, to post on servers, to redistribute to lists, or to use any component of this work in other works requires prior specific permission and/or a fee. Permissions may be requested from Publications Dept., ACM, Inc., 2 Penn Plaza, Suite 701, New York, NY 10121-0701 USA, fax +1 (212) 869-0481, or permissions@acm.org. c 2012 ACM 1539-9087/2012/12-ART85 $15.00 DOI 10.1145/2362336.2362352 http://doi.acm.org/10.1145/2362336.2362352 ACM Transactions on Embedded Computing Systems, Vol. 11, No. 4, Article 85, Publication date: December 2012.