{"title":"On the Mitigation of MultiCore-Induced Behavioral Deviations of an Autonomous Ground Vehicle","authors":"J. Sprinkle, B. Eames","doi":"10.1109/ECBS.2011.29","DOIUrl":null,"url":null,"abstract":"Complex systems such as autonomous vehicles frequently utilize a distributed network of computers for sensing, control, and supervisory tasks. A common way to abstract the deployment of the computational nodes that implement the system's behavior is through the utilization of middleware, which treats each atomic processing element as a component. Multiple components may execute on a single node, and nodes are typically heterogeneous in their processing power. For component implementations that use an event-driven model of computation, however, significant behavioral deviations may occur when a single-core computational node is replaced with a multicore node, especially if that computational node is running more than one component. This paper discusses the observed behavioral deviations through a series of simulations with identical initial conditions, performed on various single core and multicore processing platforms. In addition to the empirical demonstration, the paper provides a technique to mitigate the behavioral deviations by inserting a time-triggered buffer between a key set of components, enforcing a loosely time-triggered execution even though the system is still defined through event-triggered components. This preserves existing legacy code, but provides a time-triggered execution.","PeriodicalId":151932,"journal":{"name":"2011 18th IEEE International Conference and Workshops on Engineering of Computer-Based Systems","volume":"88 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2011-04-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2011 18th IEEE International Conference and Workshops on Engineering of Computer-Based Systems","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ECBS.2011.29","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
Complex systems such as autonomous vehicles frequently utilize a distributed network of computers for sensing, control, and supervisory tasks. A common way to abstract the deployment of the computational nodes that implement the system's behavior is through the utilization of middleware, which treats each atomic processing element as a component. Multiple components may execute on a single node, and nodes are typically heterogeneous in their processing power. For component implementations that use an event-driven model of computation, however, significant behavioral deviations may occur when a single-core computational node is replaced with a multicore node, especially if that computational node is running more than one component. This paper discusses the observed behavioral deviations through a series of simulations with identical initial conditions, performed on various single core and multicore processing platforms. In addition to the empirical demonstration, the paper provides a technique to mitigate the behavioral deviations by inserting a time-triggered buffer between a key set of components, enforcing a loosely time-triggered execution even though the system is still defined through event-triggered components. This preserves existing legacy code, but provides a time-triggered execution.