31,517 research outputs found
On the Complexity of Conditional DAG Scheduling in Multiprocessor Systems
As parallel processing became ubiquitous in modern computing systems, parallel task models have been proposed to describe the structure of parallel applications. The workflow scheduling problem has been studied extensively over past years, focusing on multiprocessor systems and distributed environments (e.g. grids, clusters). In workflow scheduling, applications are modeled as directed acyclic graphs (DAGs). DAGs have also been introduced in the real-time scheduling community to model the execution of multi-threaded programs on a multi-core architecture. The DAG model assumes, in most cases, a fixed DAG structure capturing only straight-line code. Only recently, more general models have been proposed. In particular, the conditional DAG model allows the presence of control structures such as conditional (if-then-else) constructs. While first algorithmic results have been presented for the conditional DAG model, the complexity of schedulability analysis remains wide open. We perform a thorough analysis on the worst-case makespan (latest completion time) of a conditional DAG task under list scheduling (a.k.a. fixed-priority scheduling). We show several hardness results concerning the complexity of the optimization problem on multiple processors, even if the conditional DAG has a well-nested structure. For general conditional DAG tasks, the problem is intractable even on a single processor. Complementing these negative results, we show that certain practice-relevant DAG structures are very well tractable
On the Complexity of Conditional DAG Scheduling in Multiprocessor Systems
As parallel processing became ubiquitous in modern computing systems, parallel task models have been proposed to describe the structure of parallel applications. The workflow scheduling problem has been studied extensively over past years, focusing on multiprocessor systems and distributed environments (e.g. grids, clusters). In workflow scheduling, applications are modeled as directed acyclic graphs (DAGs). DAGs have also been introduced in the real-time scheduling community to model the execution of multi-threaded programs on a multi-core architecture. The DAG model assumes, in most cases, a fixed DAG structure capturing only straight-line code. Only recently, more general models have been proposed. In particular, the conditional DAG model allows the presence of control structures such as conditional (if-then-else) constructs. While first algorithmic results have been presented for the conditional DAG model, the complexity of schedulability analysis remains wide open. We perform a thorough analysis on the worst-case makespan (latest completion time) of a conditional DAG task under list scheduling (a.k.a. fixed-priority scheduling). We show several hardness results concerning the complexity of the optimization problem on multiple processors, even if the conditional DAG has a well-nested structure. For general conditional DAG tasks, the problem is intractable even on a single processor. Complementing these negative results, we show that certain practice-relevant DAG structures are very well tractable
Dynamic Consistency of Conditional Simple Temporal Networks via Mean Payoff Games: a Singly-Exponential Time DC-Checking
Conditional Simple Temporal Network (CSTN) is a constraint-based
graph-formalism for conditional temporal planning. It offers a more flexible
formalism than the equivalent CSTP model of Tsamardinos, Vidal and Pollack,
from which it was derived mainly as a sound formalization. Three notions of
consistency arise for CSTNs and CSTPs: weak, strong, and dynamic. Dynamic
consistency is the most interesting notion, but it is also the most challenging
and it was conjectured to be hard to assess. Tsamardinos, Vidal and Pollack
gave a doubly-exponential time algorithm for deciding whether a CSTN is
dynamically-consistent and to produce, in the positive case, a dynamic
execution strategy of exponential size. In the present work we offer a proof
that deciding whether a CSTN is dynamically-consistent is coNP-hard and provide
the first singly-exponential time algorithm for this problem, also producing a
dynamic execution strategy whenever the input CSTN is dynamically-consistent.
The algorithm is based on a novel connection with Mean Payoff Games, a family
of two-player combinatorial games on graphs well known for having applications
in model-checking and formal verification. The presentation of such connection
is mediated by the Hyper Temporal Network model, a tractable generalization of
Simple Temporal Networks whose consistency checking is equivalent to
determining Mean Payoff Games. In order to analyze the algorithm we introduce a
refined notion of dynamic-consistency, named \epsilon-dynamic-consistency, and
present a sharp lower bounding analysis on the critical value of the reaction
time \hat{\varepsilon} where the CSTN transits from being, to not being,
dynamically-consistent. The proof technique introduced in this analysis of
\hat{\varepsilon} is applicable more in general when dealing with linear
difference constraints which include strict inequalities
A C-DAG task model for scheduling complex real-time tasks on heterogeneous platforms: preemption matters
Recent commercial hardware platforms for embedded real-time systems feature
heterogeneous processing units and computing accelerators on the same
System-on-Chip. When designing complex real-time application for such
architectures, the designer needs to make a number of difficult choices: on
which processor should a certain task be implemented? Should a component be
implemented in parallel or sequentially? These choices may have a great impact
on feasibility, as the difference in the processor internal architectures
impact on the tasks' execution time and preemption cost. To help the designer
explore the wide space of design choices and tune the scheduling parameters, in
this paper we propose a novel real-time application model, called C-DAG,
specifically conceived for heterogeneous platforms. A C-DAG allows to specify
alternative implementations of the same component of an application for
different processing engines to be selected off-line, as well as conditional
branches to model if-then-else statements to be selected at run-time. We also
propose a schedulability analysis for the C-DAG model and a heuristic
allocation algorithm so that all deadlines are respected. Our analysis takes
into account the cost of preempting a task, which can be non-negligible on
certain processors. We demonstrate the effectiveness of our approach on a large
set of synthetic experiments by comparing with state of the art algorithms in
the literature
Iterative Multiuser Detection and Decoding with Spatially Coupled Interleaving
Spatially coupled (SC) interleaving is proposed to improve the performance of
iterative multiuser detection and decoding (MUDD) for quasi-static fading
multiple-input multiple-output systems. The linear minimum mean-squared error
(LMMSE) demodulator is used to reduce the complexity and to avoid error
propagation. Furthermore, sliding window MUDD is proposed to circumvent an
increase of the decoding latency due to SC interleaving. Theoretical and
numerical analyses show that SC interleaving can improve the performance of the
iterative LMMSE MUDD for regular low-density parity-check codes.Comment: Long version of a paper submitted to IEEE Wireless Commun. Let
PERTS: A Prototyping Environment for Real-Time Systems
PERTS is a prototyping environment for real-time systems. It is being built incrementally and will contain basic building blocks of operating systems for time-critical applications, tools, and performance models for the analysis, evaluation and measurement of real-time systems and a simulation/emulation environment. It is designed to support the use and evaluation of new design approaches, experimentations with alternative system building blocks, and the analysis and performance profiling of prototype real-time systems
Recommended from our members
A performance comparison of several superscalar processsor [sic] models with a VLIW processor
Superscalar and VLIW processors can both execute multiple instructions each cycle. Each employs a different instruction scheduling method to achieve multiple instruction execution. Superscalar processors schedule instructions dynamically, and VLIW processors execute statically scheduled instructions. This paper quantitatively compares various superscalar processor architectures with a Very Long Instruction Word architecture developed at the University of California, Irvine. An architectural overview and performance analysis of the superscalar processor models and VIPER, a VLIW processor designed to take advantage of the parallelizing capabilities of Percolation Scheduling, are presented. The motivation for this comparison is to study the capability of a dynamically scheduled processor to obtain the same performance achieved by a statically scheduled processor, and examine the hardware resources required by each
Design of multimedia processor based on metric computation
Media-processing applications, such as signal processing, 2D and 3D graphics
rendering, and image compression, are the dominant workloads in many embedded
systems today. The real-time constraints of those media applications have
taxing demands on today's processor performances with low cost, low power and
reduced design delay. To satisfy those challenges, a fast and efficient
strategy consists in upgrading a low cost general purpose processor core. This
approach is based on the personalization of a general RISC processor core
according the target multimedia application requirements. Thus, if the extra
cost is justified, the general purpose processor GPP core can be enforced with
instruction level coprocessors, coarse grain dedicated hardware, ad hoc
memories or new GPP cores. In this way the final design solution is tailored to
the application requirements. The proposed approach is based on three main
steps: the first one is the analysis of the targeted application using
efficient metrics. The second step is the selection of the appropriate
architecture template according to the first step results and recommendations.
The third step is the architecture generation. This approach is experimented
using various image and video algorithms showing its feasibility
Scheduling language and algorithm development study. Volume 1: Study summary and overview
A high level computer programming language and a program library were developed to be used in writing programs for scheduling complex systems such as the space transportation system. The objectives and requirements of the study are summarized and unique features of the specified language and program library are described and related to the why of the objectives and requirements
- …