Figure 6 - uploaded by Hamid Reza Faragardi
Content may be subject to copyright.
A three-level shared-cache quad core architecture. 

A three-level shared-cache quad core architecture. 

Source publication
Article
Full-text available
The increasing functionality and complexity of automotive applications requires not only the use of more powerful hardware, e.g., multi-core processors, but also efficient methods and tools to support design decisions. Component-based software engineering proved to be a promising solution for managing software complexity and allowing for reuse. How...

Contexts in source publication

Context 1
... is difficult to characterize the latency values with precise numbers, but in general the L2 cache latency is almost two to three times larger than the L1 cache latency, the L3 cache la-tency is roughly ten times larger than the L1 cache latency, and the RAM latency is two orders of magnitude larger than the latency of the L1 cache [45]. Figure 6 represents a sample of such an architecture with 4 processing cores. When a pair of runnables are located in two different tasks, the Sender-Receiver mechanism is provided by the RTE to enable data transfer in between the runnables. ...
Context 2
... the ECU hardware specification we consider a quad-core processor in which the 965 first level cache is private for each core, the second level cache is shared among each pair of cores and the third level cache is shared among all cores, similar to Figure 6. ...

Citations

... That is, the sensor transactions can obtain t units of resources from each processor of the platform in the time interval [0, t]. This assumption, however, does not hold for CPS created by the component-based development methods [8][9][10]. In such systems, the sensor transactions are executed in one or more components. ...
Article
Full-text available
How to schedule the sensor transactions to maintain the temporal validity of real-time data is an important research issue for cyber-physical systems. Current studies on sensor transaction scheduling assume that the sensor transactions are executed on a platform with continuous resource supply. This assumption does not hold for component-based systems where each component’s transactions obtain a fraction of the resources that are usually supplied by the underlying platform in a non-continuous manner. In this paper, we study the problem of scheduling sensor transactions in component-based systems. The sensor transactions are assumed to be executed in one component of the system that is deployed on a multiprocessor platform. The resource supply of each processor follows the explicit-deadline periodic (EDP) resource model. A partitioned scheduling method named PS-FC is proposed at first. It uses a sufficient and necessary condition of EDF scheduling upon an EDP resource to check the feasibility of each transaction on a processor. Then two faster partitioned scheduling methods, named PS-CI and PS-Hybrid, are proposed. PS-CI does the feasibility checks for transactions based on the candidate intervals of transaction deadlines. PS-Hybrid is a combination of PS-FC and PS-CI. The effectiveness and efficiency of the methods are evaluated through extensive experiments.
... Nevertheless, this concept remains efficient in providing automotive offline diagnosis boards [60,91]. Notably, the use of multi-core automotive ECUs rather than single-core ones in the near future may restore the interest in the material diagnosis [92]. Indeed, the implementation of redundant diagnosis functions in different ECU-cores has succeeded CAN fault management [93]. ...
Article
Full-text available
The in-vehicular networked control system is among the most critical embedded processes. The controller area network (CAN) has prevailed intra-vehicle communication for decades. Meanwhile, requirements of future transportation systems are expected to emphasise the in-vehicle communication complexity, which endangers the reliability/safety of the intelligent navigation. At first, this study reviews the recent solutions proposed to overcome the CAN expanding complexity. Challenges that tomorrow's intelligent vehicles may raise for CAN reliability are investigated. The comprehensive coverage of current research efforts to remove the impact of these challenges is presented. Further, the in-vehicle system reliability of future automated vehicles is also related to the fault diagnosis performances. Hence, different classes of system-level diagnosis strategies are compared relatively to the requirements of automotive embedded networks. Furthermore, to thoroughly cover CAN reliability engineering issues, focus is given to the automotive validation techniques. The hardware in the loop, real-time analysis and computer-aided-design tools intervene in various phases along the in-vehicular network life cycle. Parameters that stand behind the efficiency and accuracy of these techniques in validating the new generation of vehicles are analysed. The authors finally draw some deductive predictions about the future directions related to the reliability of the intelligent transportation system in-vehicular communication.
... Then, a framework or process undergo by finite element software need to be grasp by the user. When user able to understand the concept of the software, they are more likely to obtain results more competent [6] thus, prevent less error in their analysis. A lot of analysis done with finite element software defer from the experimental results obtained, when compare together. ...
Article
Full-text available
Due to the rise of diverse finite element software, the needs to understand each of the software interface for optimization of the software usage is increasing among new users. Many researchers had roughly done their software explanation through a few simple methods such as clarifying the software user interface and framework to enhance user benefit with their software. They also provide conclusion for the explanation with a proper justification of an analysis or through interviewing user experiences. The three steps had been proven to be effective in term of giving recognition of software to new users with different background field. This paper will review the standard definition of a graphical user interface that many existing finite element software had completed and how it was exposed to the user. Also, how the software framework function for user to obtain a reliable data out of it and finally the validation of the enlighten framework and GUI for users ease in each model analysis.
... Similarly, the scalability issues of exact methods on software allocation is indicated in several works [11]. In contrast, heuristic methods device a working technique to solve practical problems, which are usually large-scale, non-linear, without guarantee of optimality [14,15]. A particular type of heuristic is metaheuristics which can be defined as "an iterative generation process which guides a subordinate heuristic by combining intelligently different concepts for exploring and exploiting the search space, learning strategies are used to structure information in order to find efficiently near-optimal solutions" [16]. ...
... Note that, if application does not use the shared bus, then Reliability B = 1. Equation (14) finds the nodes N A k that the application a k uses by traversing the partition x in linear time. ...
... The fitness value is used to compare feasible solutions, i.e., the higher the fitness the better it is (for minimization problem as in our case, a lower fitness value is better). In the context of metaheuristics, it is highly desirable to integrate the goal function and all constraints into one function that can be used as a fitness function [48,14]. Thus, it combines the objective function (i.e., the powerconsumption minimization) with the reliability and timing constraints into a single function (i.e., fitness function) by using penalty functions. ...
Preprint
Full-text available
It is desirable to optimize the power consumption of distributed safety-critical software that realizes fault tolerance and maximizes reliability as a result, to support the increasing complexity of software functionality in safety-critical embedded systems. Likewise, safety-critical applications that are required to meet end-to-end timing constraints may require additional computing resources. In this paper, we propose a scalable software-to-hardware allocation based on hybrid particle-swarm optimization with hill-climbing and differential algorithms to efficiently map software components to a network of heterogeneous computing nodes while meeting the timing and reliability constraints. The approach assumes fixed-priority preemptive scheduling, and delay analysis that value freshness of data, which is typical in control software applications. Our proposed solution is evaluated on a range of software applications, which are synthesized from a real-world automotive AUTOSAR benchmark. The evaluation makes comparative analysis of the different algorithms, and a solution based on integer-linear programming, which is an exact method. The results show that the hybrid with the hill-climbing algorithms return very close solutions to the exact method and outperformed the hybrid with the differential algorithm, though consumes more time. The hybrid with the stochastic hill-climbing algorithm scales better and its optimality can be deemed acceptable.
... With the rapid development of chip technology, complex multiprocessor platforms with advanced high performance are more and more widely applied in the safety-critical domains, including avionics [1], automotive [2,3], and industrial control [4], to accommodate the drastically increasing demand for computationally-intensive workloads. Although they can provide better average execution time among all tasks, extremely large worst case execution time (WCET) may be experienced by some tasks due to the complexity of architecture, leading to high over-provisioning to meet real-time requirements in the real-world implementation. ...
Article
Multiprocessor platforms bring the probabilistic characteristic to real-time systems because of the performance variations of complex chips. We present a harmonic partitioned scheduling scheme with workload awareness for periodic probabilistic real-time tasks on multiprocessors under the fixed-priority scheduling policy. A harmonic index is defined to quantify the harmonicity among probabilistic real-time tasks. The proposed scheme first sorts tasks with respect to the workload, then packs them to processors one by one aiming at minimizing the increase of harmonic index caused by the task deployment. Evaluation shows that our proposed scheme can significantly outperform the existing harmonic partitioned probabilistic real-time scheduling algorithms.
... It is a type of bin-packing problem, and therefore finding an optimal solution, in the general case, is NP-hard [4]. The methods to solve such problems can be exact [5], which means solutions are guaranteed to be optimal, or heuristic, which deliver near-optimal solutions [6] [7]. Exact methods such as Integer Linear Programming (ILP) [8] have been used widely in several resource optimization problems. ...
Conference Paper
Full-text available
This paper proposes an Integer Linear Programming optimization approach for the allocation of fault-tolerant embedded software applications that are developed using the AUTOSAR standard. The allocation takes into account the timing and reliability requirements of the multi-rate cause-effect chains in these applications and the heterogeneity of their execution platforms. The optimization objective is to minimize the total power consumption of the these applications that are distributed over more than one computing unit. The proposed approach is evaluated using a range of different software applications from the automotive domain, which are generated using the real-world automotive benchmark. The evaluation results indicate that the proposed allocation approach is effective and scalable while meeting the timing, reliability and power requirements in small- and medium-sized automotive software applications.
... In the context of combinatorial optimization problems, it is highly desirable to integrate the goal function and all constraints into one function that can be used as a fitness function [40][41][42].The benefit of using a single function including all penalty functions is to provide a metric to distinguish between two unfeasible solutions. For example, let assume solution A and solution B both violate some constraints of the problem. ...
... The proposed method is a powerful meta-heuristic evolutionary algorithm, originally proposed in [42], which is then extended in [9]. It is based on a parallel version of a Max-Min Ant System [45] being leveraged by a Simulated Annealing (SA) algorithm using a limited memory. ...
... It is based on a parallel version of a Max-Min Ant System [45] being leveraged by a Simulated Annealing (SA) algorithm using a limited memory. The experimental results for two other combinatorial optimization problems -including task allocation on multi-cores [42] and energy aware resource allocation in cloud computing environments [46] -demonstrated its strength to find high quality solutions (i.e., optimal or very close to optimal) in a reasonable computation time. Here, we also apply additional features on the algorithm to improve both efficiency and computational time. ...
Article
Full-text available
Recently, a growing trend has emerged toward using Internet of Things (IoT) in the context of industrial systems which is referred to as industrial IoT. To deal with time-critical requirements of industrial applications, it is necessary to consider reliability and timeliness during the design of an industrial IoT system. Through the separation of control and data plane, Software Defined Networking provides control units (controllers) coex-isting with sink nodes, efficiently coping with network dynamics during run-time. It is of paramount importance to select a proper number of these devices (i.e., SDN-controllers and sink nodes) and locate them wisely in a network to reduce deployment cost. In this paper, we optimize the type and location of sinks and controllers in the network, subject to reliability and timeliness as the prominent performance requirements in time-critical IoT systems through ensuring that each sensor node is covered by a certain number of sinks and controllers. We propose PACSA-MSCP, an algorithm hybridizing a parallel version of Max-Min ant system with simulated an-nealing for multiple sink/controller placement. We evaluate the proposed algorithm through extensive experiments. The performance is compared against several well-known methods, and it is shown that our approach outperforms those methods by lowering the total deployment cost up to 19%. Moreover, the deviation from optimal solution achieved by CPLEX is shown to be less than 2.7%.
Preprint
Full-text available
Marketplaces for distributing software products and services have been getting increasing popularity. GitHub, which is most known for its version control functionality through Git, launched its own marketplace in 2017. GitHub Marketplace hosts third party apps and actions to automate workflows in software teams. Currently, this marketplace hosts 440 Apps and 7,878 Actions across 32 different categories. Overall, 419 Third party developers released their apps on this platform which 111 distinct customers adopted. The popularity and accessibility of GitHub projects have made this platform and the projects hosted on it one of the most frequent subjects for experimentation in the software engineering research. A simple Google Scholar search shows that 24,100 Research papers have discussed GitHub within the Software Engineering field since 2017, but none have looked into the marketplace. The GitHub Marketplace provides a unique source of information on the tools used by the practitioners in the Open Source Software (OSS) ecosystem for automating their project's workflow. In this study, we (i) mine and provide a descriptive overview of the GitHub Marketplace, (ii) perform a systematic mapping of research studies in automation for open source software, and (iii) compare the state of the art with the state of the practice on the automation tools. We conclude the paper by discussing the potential of GitHub Marketplace for knowledge mobilization and collaboration within the field. This is the first study on the GitHub Marketplace in the field.
Thesis
Full-text available
This thesis addresses the topic of resource efficiency in the context of timingcritical components that are used in the realization of a Smart Factory. The concept of the smart factory is a recent paradigm to build future production systems in a way that is both smarter and more flexible. When it comes to realization of a smart factory, three principal elements play a significant role, namely Embedded Systems, Internet of Things (IoT) and Cloud Computing. In a smart factory, efficient use of computing and communication resources is a prerequisite not only to obtain a desirable performance for running industrial applications, but also to minimize the deployment cost of the system in terms of the size and number of resources that are required to run industrial applications with an acceptable level of performance. Most industrial applications that are involved in smart factories, e.g., automation and manufacturing applications, are subject to a set of strict timing constraints that must be met for the applications to operate properly. Such applications, including underlying hardware and software components that are used to run the application, constitute a real-time system. In real-time systems, the first and major concern of the system designer is to provide a solution where all timing constraints are met. To do so we need a time-predictable IoT/Cloud Computing framework to deal with the real-time constraints that are inherent in industrial applications running in a smart factory. Afterwards, with respect to the time predictable framework, the number of required computing and communication resources can and should be optimized such that the deployed system is cost efficient. In this thesis, to investigate and present solutions that provide and improve the resource efficiency of computing and communication resources in a smart factory, we conduct research following three themes: (i) multi-core embedded processors, which are the key element in terms of computing components embedded in the machinery of a smart factory, (ii) cloud computing data centers, as the supplier of a massive data storage and a large computational power, and (iii) IoT, for providing the interconnection of computing components embedded in the objects of a smart factory. Each of these themes are targeted separately to optimize resource efficiency. For each theme, we identify key challenges when it comes to achieving a resource-efficient design of the system. We then formulate the problem and propose solutions to optimize the resource efficiency of the system, while satisfying all timing constraints reflected in the model. We then propose a comprehensive resource allocation mechanism to optimize the resource efficiency in the whole system while considering the characteristics of each of these research themes. The experimental results indicate a clear improvement when it comes to timing-critical IoT / Cloud Computing resources in a smart factory. At the level of multi-core embedded devices, the total CPU usage of a quad-core processor is shown to be improved by 11.2%. At the level of Cloud Computing, the number of cloud servers that are required to execute a given set of real-time applications is shown to be reduced by 25.5%. In terms of network components that are used to collect sensor data, our proposed approach reduces the total deployment cost of the system by 24%. In summary, these results all contribute towards the realization of a future smart factory.