Dionisio de Niz

Senior Member of the Technical Staff
Software Engineering Institute
Carnegie Mellon University.

Brief Bio

I finished my Ph.D. in ECE from Carnegie Mellon University under the supervision of Prof. Raj Rajkumar.

I was a professor at the ITESO university in Mexico for two year after completing my Ph.D. During this time I ran the Embedded and Real-Time Systems Collaborative Laboratory. In this lab we conducted research in collaboration with other universities (including CMU) and industry partners such as Intel. I also led an interest group to develop the Automotive Embedded Software Roadmap for the Jalisco state.

At the SEI I have been working in the modeling of embedded real-time systems with the Architecture Analysis and Design Language (AADL). I have been involved in the development of the reference implementation tool OSATE, development of new analysis algorithms and consulting with multiple clients in the application of AADL to solve problems in the development of embedded real-time systems.

On the research front, I have been focusing on new scheduling algorithms for real-time systems with new requirements (e.g. mixed-criticality) and new platforms (e.g. multicore processors). In addition I had been looking at new techniques to verify concurrency properties in runtime architectural models.

Research Interest

Predictable Scheduling for Multicore Processors for Real-Time Systems

While multiprocessor real-time systems is an old problem, multicore processors had brought a renew interest along with new dimensions to the problem. For instance, there is a need to tradeoff different levels of migration cost, different degrees of inter-core hardware sharing (e.g. memory bandwidth), etc. Our research is aimed at providing new knobs to perform these tradeoffs with additional application information.

Beyond real-time systems general-purpose systems are now faced with the fact that they need to parallelize their work in order to get the expected performance increment from additional cores in the new processors. However, partition the work into parallel pieces is a necessary but not sufficient condition. Equally important is the allocation of CPU cycles to these parallel pieces (tasks). In the extreme if we run all the tasks of the parallel pieces in the same core, such parallelism is completely wiped out. Hence, the task-to-core allocation and the scheduling of hardware resources between core (e.g. cache, memory bandwidth) are allocated can change completely the performance that is possible to obtain. We are working on new way to take advantage of application knowledge to use them as parameter in the scheduling algorithms at all levels of the computer system.

Mixed-Criticality Scheduling for Real-Time Systems

Functionally consolidation bring the problem of resources sharing between tasks of different criticality. When these different criticalities are combined with tasks with execution times that have large variations depending on the environment, we end up in a situation where overload are common and the scheduler needs to have a well-defined overload guarantees. For instance, the execution time of an obstacle avoidance (OA) task in an autonomous vehicle depends on the number of obstacles that the vehicle detects. As a result, when an excessive number of obstacles is detected, the scheduler should be able to provide more CPU cycles to the OA task stealing them from other less important tasks.

Predictable Dynamic Real-Time Systems

As systems scale, both centralized control and unique steady-state execution behavior blur. This changes the way we need to think about resource allocation in large real-time systems. On the one hand, decentralized control implies that resource allocation decisions needs to be negotiated among peers instead of mandated from a centralized authority. On the other hand, the dynamism of these systems forces us to, not only have multiple steady-state behaviors, but also develop new ways to ensure predictable transitions between behaviors and converges of the system toward the desirable steady states.

Highlights

  • ZSRM Accepted in RTSS 09