1. |
- Afshar, Sara, et al.
(author)
-
Intra-component Resource Sharing on a Virtual Multiprocessor Platform
- 2016
-
In: ACM SIGBED Review. - : Association for Computing Machinery (ACM). - 1551-3688. ; , s. 31-32
-
Conference paper (peer-reviewed)abstract
- Component-based software development facilitates the development process of large and complex software systems. By the advent of multiprocessors, the independently developed components can be integrated on a multi-core platform to achieve an efficient use of system hardware and a decrease in system power consumption and costs. In this paper, we consider a virtual multiprocessor platform where each component can be dynamically allocated to any set of processors of the platform with a maximum concurrency level. Global-EDF is used for intra-component scheduling. The existing analysis for such systems have assumed that tasks are independent. In this paper, we enable intra-component resource sharing for this platform. We investigate using a spin-based resource sharing protocol with the accompanying analysis that extends the existing analysis for independent tasks. We briefly illustrate and evaluate our initial results with an example.
|
|
2. |
- Afshar, Sara
(author)
-
Lock-Based Resource Sharing for Real-Time Multiprocessors
- 2017
-
Doctoral thesis (other academic/artistic)abstract
- Embedded systems are widely used in the industry and are typically resource constrained, i.e., resources such as processors, I/O devices, shared buffers or shared memory might be limited in the system. Hence, techniques that can enable an efficient usage of processor bandwidths in such systems are of great importance. Locked-based resource sharing protocols are proposed as a solution to overcome resource limitation by allowing the available resources in the system to be safely shared. In recent years, due to a dramatic enhancement in the functionality of systems, a shift from single-core processors to multi-core processors has become inevitable from an industrial perspective to tackle the raised challenges due to increased system complexity. However, the resource sharing protocols are not fully mature for multi-core processors. The two classical multi-core processor resource sharing protocols, spin-based and suspension-based protocols, although providing mutually exclusive access to resources, can introduce long blocking delays to tasks, which may be unacceptable for many industrial applications. In this thesis we enhance the performance of resource sharing protocols for partitioned scheduling, which is the de-facto scheduling standard for industrial real-time multi-core processor systems such as in AUTOSAR, in terms of timing and memory requirements. A new scheduling approach uses a resource efficient hybrid approach combining both partitioned and global scheduling where the partitioned scheduling is used to schedule the major number of tasks in the system. In such a scheduling approach applications with critical task sets use partitioned scheduling to achieve higher level of predictability. Then the unused bandwidth on each core that is remained from partitioning is used to schedule less critical task sets using global scheduling to achieve higher system utilization. These scheduling schema however lacks a proper resource sharing protocol since the existing protocols designed for partitioned and global scheduling cannot be directly applied due to the complex hybrid structure of these scheduling frameworks. In this thesis we propose a resource sharing solution for such a complex structure. Further, we provide the blocking bounds incurred to tasks under the proposed protocols and enhance the schedulability analysis, which is an essential requirement for real-time systems, with the provided blocking bounds.
|
|
3. |
- Afshar, Sara, et al.
(author)
-
Per Processor Spin-Lock Priority for Partitioned Multiprocessor Real-Time Systems
- 2017
-
In: Leibniz Transactions on Embedded Systems. - 2199-2002. ; :2
-
Journal article (other academic/artistic)abstract
- Two traditional approaches exist for a task that is blocked on a global resource; a task either performs a non-preemptive busy wait, i.e., spins, or suspends and releases the processor. Previously, we have shown that both approaches can be viewed as spinning either at the highest priority HP or at the lowest priority on the processor LP, respectively. Based on this view, previously we have generalized a task's blocking behavioral model, as spinning at any arbitrary priority level. In this paper, we focus on a particular class of spin-lock protocols from the introduced flexible spin-lock model where spinning is performed at a priority equal to or higher than the highest local ceiling of the global resources accessed on a processor referred to as CP spin-lock approach. In this paper, we assume that all tasks of a specific processor are spinning on the same priority level. Given this class and assumption, we show that there exists a spin-lock protocol in this range that dominates the classic spin-lock protocol which tasks spin on highest priority level (HP). However we show that this new approach is incomparable with the CP spin-lock approach. Moreover, we show that there may exist an intermediate spin-lock approach between the priority used by CP spin-lock approach and the new introduced spin-lock approach that can make a task set schedulable when those two cannot. We provide an extensive evaluation results comparing the HP, CP and the new proposed approach.
|
|
4. |
- Afshar, Sara, et al.
(author)
-
Resource Sharing among Prioritized Real-Time Applications on Multiprocessors
- 2015
-
In: ACM SIGBED Review - Special Issue on the 6th International Workshop on Compositional Theory and Technology for Real-Time Embedded Systems. - : Association for Computing Machinery (ACM). ; , s. 46-55
-
Conference paper (peer-reviewed)abstract
- In this paper, we propose a new protocol for handling resource sharing among prioritized real-time applications composed on a multiprocessor platform. We propose an optimal priority assignment algorithm which assigns unique priorities to the applications based on information in their interfaces. We have performed experimental evaluations to compare the proposed protocol (called MSOS-Priority) to the current state of the art locking protocols under multiprocessor partitioned scheduling, i.e., MPCP, MSRP, FMLP, MSOS, and OMLP. The valuations show that MSOS-Priority mostly performs significantly better than alternative approaches.
|
|
5. |
- Afshar, Sara, et al.
(author)
-
Resource sharing in a hybrid partitioned/global scheduling framework for multiprocessors
- 2015
-
In: IEEE International Conference on Emerging Technologies and Factory Automation, ETFA. - 9781467379298
-
Conference paper (peer-reviewed)abstract
- For resource-constrained embedded real-time systems, resource-efficient approaches are very important. Such an approach is presented in this paper, targeting systems where a critical application is partitioned on a multi-core platform and the remaining capacity on each core is provided to a noncritical application using resource reservation techniques. To exploit the potential parallelism of the non-critical application, global scheduling is used for its constituent tasks. Previously, we enabled intra-application resource sharing for such a framework, i.e. each application has its own dedicated set of resources. In this paper, we enable inter-application resource sharing, in particular between the critical application and the non-critical application. This effectively enables resource sharing in a hybrid partitioned/global scheduling framework on multiprocessors. For resource sharing, we use a spin-based synchronization protocol. We derive blocking bounds and extend existing schedulability analysis for such a system.
|
|
6. |
- Afshar, Sara, et al.
(author)
-
Resource Sharing Under Global Scheduling with Partial Processor Bandwidth
- 2015
-
In: 2015 10th IEEE International Symposium on Industrial Embedded Systems, SIES 2015 - Proceedings. - 9781467377119 ; , s. 195-206
-
Conference paper (peer-reviewed)abstract
- Resource efficient approaches are of great importance for resource constrained embedded systems. In this paper, we present an approach targeting systems where tasks of a critical application are partitioned on a multi-core platform and by using resource reservation techniques, the remaining bandwidth capacity on each core is utilized for one or a set of non-critical application(s). To provide a resource efficient solution and to exploit the potential parallelism of the extra applications on the multi-core processor, global scheduling is used to schedule the tasks of the non-critical applications. Recently a specific instantiation of such a system has been studied where tasks do not share resources other than the processor. In this paper, we enable semaphore-based resource sharing among tasks within critical and non-critical applications using a suspension-based synchronization protocol. Tasks of non-critical applications have partial access to the processor bandwidth. The paper provides the systems schedulability analysis where blocking due to resource sharing is bounded. Further, we perform experimental evaluations under balanced and unbalanced allocation of tasks of a critical application to cores.
|
|
7. |
- Afshar, Sara, et al.
(author)
-
Semi-partitioning under a Blocking-Aware Task Allocation
- 2015
-
In: Proceedings - Real-Time Systems Symposium. - 9781467395076 ; , s. 379-379
-
Conference paper (peer-reviewed)abstract
- Semi-partitioned scheduling is a resource efficient scheduling approach compared to the conventional multiprocessor scheduling approaches in terms of system utilization and migration overhead. Semi-partitioned scheduling can better utilize processor bandwidth compared to the partitioned scheduling while introducing less overhead compared to the global scheduling. Various techniques have been proposed to schedule tasks in a semi-partitioned environment, however, they have used blockingagnostic allocation mechanisms in presence of resource sharing protocols. Since, the allocation mechanism can highly affect the system schedulability, in this paper we provide a blocking-aware allocation mechanism for semi-partitioned scheduling framework under a suspension-based resource sharing protocol. We have applied new heuristics for sorting the tasks in the algorithm that shows improvements upon system schedulability. Finally, we present our preliminary results.
|
|
8. |
- Afshar, Sara Zargari, et al.
(author)
-
An optimal spin-lock priority assignment algorithm for real-time multi-core systems
- 2017
-
In: The 23th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications RTCSA'17.
-
Conference paper (peer-reviewed)abstract
- Support for exclusive access to shared (global) resources is instrumental in the context of embedded real-time multi-core systems, and mechanisms for achieving such access must be deterministic and efficient. There exist two traditional approaches for multiprocessors when a task requests a global resource that is locked by a task on a remote core: a spin-based approach, i.e. non-preemptive busy waiting for the resource to become available, and a suspension-based approach, i.e. the task relinquishes the processor. A suspension-based approach can be viewed as a spin-based approach where the lowest priority on a core is used during spinning, similar to a non-preemptive spin-based approach where the highest priority on a core is used. By taking such a view, we previously provided a general model for spinning, where any arbitrary priority can be used for spinning, i.e. from the lowest to the highest priority on a core. Targeting partitioned fixed-priority preemptive scheduled multiprocessors and spin-based approaches that use a fixed priority for spinning per core for all tasks, we aim at increasing the schedulability of multiprocessor systems by using the spin-lock priority per core as parameter. In this paper, we present (i) a generalization of the traditional worst-case response-time analysis for non-preemptive spin-based approaches addressing an arbitrary but fixed spin-lock priority per core, (ii) an optimal spin-lock priority assignment (OSPA) algorithm per core, i.e. an algorithm that will find a fixed spin-lock priority per core that will make the system schedulable, whenever such an assignment exists and, (iii) comparative evaluations of the OSPA algorithm with the spin-based and suspension-based approaches where OSPA showed up to 38% improvement compared to both approaches.
|
|
9. |
- Afshar, Sara Zargari, et al.
(author)
-
Investigating Alternatives for System Architectures to Enhance Discrete Manufacturing
- 2019
-
In: International Journal of Distributed Sensor Networks. - Sweden : SAGE Publications. - 1550-1329 .- 1550-1477. ; 15:8
-
Journal article (peer-reviewed)abstract
- This article investigates the possibility of advancing discrete manufacturing using system architectures that are developed for Collaborative Process Automation Systems. Collaborative Process Automation System is a technology that has the potential to achieve production excellence for process industry. However, not much attention has been paid on using the architectures based on Collaborative Process Automation Systems for discrete manufacturing domains. In this article, we propose a base architecture consisting of three layers, and we discuss various alternatives to make the communications among the layers. We consider legacy components in the proposal, in contrast to most of the related works. In order to show the practicality of the proposed alternatives, we present an example that has been implemented in an ongoing project at ABB Robotics in Sweden.
|
|
10. |
- Balasubramanian, S.M.N, et al.
(author)
-
A dual shared stack for FSLM in Erika enterprise
- 2017
-
In: The 23rd IEEE International Conference on Embedded and Real-Time Computing Systems and Applications - WiP Session RTCSA'17.
-
Conference paper (peer-reviewed)abstract
- Recently, the flexible spin-lock model (FSLM) has been introduced, unifying spin-based and suspension-based resource sharing protocols for real-time multi-core platforms. Unlike the multiprocessor stack resource policy (MSRP), FSLM doesn’t allow tasks on a core to share a single stack, however. In this paper, we present a hypothesis claiming that for a restricted range of spin-lock priorities, FSLM requires only two stacks. We briefly describe our implementation of a dual stack for FSLM in the Erika Enterprise RTOS as instantiated on an Altera Nios II platform using 4 soft-core processors.
|
|