Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where John M. Calandrino is active.

Publication


Featured researches published by John M. Calandrino.


real-time systems symposium | 2006

LITMUS^RT : A Testbed for Empirically Comparing Real-Time Multiprocessor Schedulers

John M. Calandrino; Hennadiy Leontyev; Aaron Block; Umamaheswari C. Devi; James H. Anderson

We present a real-time, Linux-based testbed called LITMUS, which we have developed for empirically evaluating multiprocessor real-time scheduling algorithms. We also present the results from such an evaluation, in which partitioned earliest-deadline-first (EDF) scheduling, preemptive and nonpreemptive global EDF scheduling, and two variants of the global PD2 Pfair algorithm were considered. The tested algorithms were compared based on both raw performance and schedulability (with real overheads considered) assuming either hard- or soft-real-time constraints. To our knowledge, this paper is the first attempt by anyone to compare partitioned and global real-time scheduling approaches using empirical data


real time technology and applications symposium | 2006

Real-Time Scheduling on Multicore Platforms

James H. Anderson; John M. Calandrino; Umamaheswari C. Devi

Multicore architectures, which have multiple processing units on a single chip, are widely viewed as a way to achieve higher processor performance, given that thermal and power problems impose limits on the performance of single-core designs. Accordingly, several chip manufacturers have already released, or will soon release, chips with dual cores, and it is predicted that chips with up to 32 cores will be available within a decade. To effectively use the available processing resources on multicore platforms, software designs should avoid co-executing applications or threads that can worsen the performance of shared caches, if not thrash them. While cache-aware scheduling techniques for such platforms have been proposed for throughput-oriented applications, to the best of our knowledge, no such work has targeted real-time applications. In this paper, we propose and evaluate a cache-aware Pfair-based scheduling scheme for real-time tasks on multicore platforms


euromicro conference on real-time systems | 2007

A Hybrid Real-Time Scheduling Approach for Large-Scale Multicore Platforms

John M. Calandrino; James H. Anderson; Dan P. Baumberger

We propose a hybrid approach for scheduling real-time tasks on large-scale multicore platforms with hierarchical shared caches. In this approach, a multicore platform is partitioned into clusters. Tasks are statically assigned to these clusters, and scheduled within each cluster using the preemptive global EDF scheduling algorithm. We show that this hybrid of partitioning and global scheduling performs better on large-scale platforms than either approach alone. We also determine the appropriate cluster size to achieve the best performance possible, given the characteristics of the task set to be supported.


real-time systems symposium | 2008

On the Scalability of Real-Time Scheduling Algorithms on Multicore Platforms: A Case Study

Björn B. Brandenburg; John M. Calandrino; James H. Anderson

Multicore platforms are predicted to become significantly larger in the coming years. Given that real-time workloads will inevitably be deployed on such platforms, the scalability of the scheduling algorithms used to support such workloads warrants investigation. In this paper, this issue is consideredand an empirical evaluation of several global and partitioned scheduling algorithms is presented. This evaluation was conducted using a Sun Niagara multicore platformwith 32 logical CPUs (eight cores, four hardware threads per core). In this study, each tested algorithm proved to be a viable choice for some subset of the workload categories considered.


real time technology and applications symposium | 2008

Real-Time Synchronization on Multiprocessors: To Block or Not to Block, to Suspend or Spin?

Björn B. Brandenburg; John M. Calandrino; Aaron Block; Hennadiy Leontyev; James H. Anderson

In the domain of multiprocessor real-time systems, there has been a wealth of recent work on scheduling, but relatively little work on the equally-important topic of synchronization. When synchronizing accesses to shared resources, four basic options exist: lock-free execution, wait-free execution, spin- based locking, and suspension-based locking. To our knowledge, no empirical multiprocessor-based evaluation of these basic techniques that focuses on real-time systems has ever been conducted before. In this paper, we present such an evaluation and report on our efforts to incorporate synchronization support in the testbed used in this effort.


euromicro conference on real-time systems | 2008

Cache-Aware Real-Time Scheduling on Multicore Platforms: Heuristics and a Case Study

John M. Calandrino; James H. Anderson

Multicore architectures, which have multiple processing units on a single chip, have been adopted by most chip manufacturers. Most such chips contain on-chip caches that are shared by some or all of the cores on the chip. To effectively use the available processing resources on such platforms,scheduling methods must be aware of these caches. In this paper, we explore various heuristics that attempt to improve cache performance when scheduling real-time workloads. Such heuristics are applicable when multiple multithreaded applications exist with large working sets. In addition, we present a case study that shows how our best-performing heuristics can improve the end-user performance of video encoding applications.


euromicro conference on real-time systems | 2009

On the Design and Implementation of a Cache-Aware Multicore Real-Time Scheduler

John M. Calandrino; James H. Anderson

Multicore architectures, which have multiple processing units on a single chip, have been adopted by most chip manufacturers. Most such chips contain on-chip caches that are shared by some or all of the cores on the chip. Prior work has presented methods for improving the performance of such caches when scheduling soft real-time workloads. Given these methods, two additional research issues arise: (1) how to automatically profile the cache behavior of real-time tasks within the scheduler; and (2) how to implement scheduling methods efficiently, so that scheduling overheads do not offset any cache-related performance gains. This paper addresses these two issues in an implementation of a cache-aware soft real-time scheduler within Linux, and shows that the use of this scheduler can result in performance improvements that directly result from a decrease in shared cache miss rates.


real time technology and applications symposium | 2007

Soft Real-Time Scheduling on Performance Asymmetric Multicore Platforms

John M. Calandrino; Dan P. Baumberger; Tong Li; Scott Hahn; James H. Anderson

This paper discusses an approach for supporting soft real-time periodic tasks in Linux on performance asymmetric multicore platforms (AMPs). Such architectures consist of a large number of processing units on one or several chips, where each processing unit is capable of executing the same instruction set at a different performance level. We discuss deficiencies of Linux in supporting periodic real-time tasks, particularly when cores are asymmetric, and how such deficiencies were overcome. We also investigate how to provide good performance for non-real-time tasks in the presence of a real-time workload. We show that this can be done by using deferrable servers to explicitly reserve a share of each core for non-real-time tasks. This allows non-real-time tasks to have priority over real-time tasks when doing so will not cause timing requirements to be violated, thus improving non-real-time response times. Experiments show that even small deferrable servers can have a dramatic impact on non-real-time task performance


real-time systems symposium | 2006

Parallel Real-Time Task Scheduling on Multicore Platforms

James H. Anderson; John M. Calandrino

We propose a scheduling method for real-time systems implemented on multicore platforms that encourages individual threads of multithreaded real-time tasks to be scheduled together. When such threads are cooperative and share a common working set, this method enables more effective use of on-chip shared caches


ACM Sigbed Review | 2006

Parallel task scheduling on multicore platforms

James H. Anderson; John M. Calandrino

We propose a scheduling method for real-time systems implemented on multicore platforms that encourages certain groups of tasks to be scheduled together while ensuring real-time constraints. This method can be applied to encourage tasks that share a common working set to be executed in parallel, which makes more effective use of shared caches.

Collaboration


Dive into the John M. Calandrino's collaboration.

Top Co-Authors

Avatar

James H. Anderson

University of North Carolina at Chapel Hill

View shared research outputs
Top Co-Authors

Avatar

Aaron Block

University of North Carolina at Chapel Hill

View shared research outputs
Top Co-Authors

Avatar

Björn B. Brandenburg

University of North Carolina at Chapel Hill

View shared research outputs
Top Co-Authors

Avatar

Hennadiy Leontyev

University of North Carolina at Chapel Hill

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Jessica C. Young

University of North Carolina at Chapel Hill

View shared research outputs
Researchain Logo
Decentralizing Knowledge