CHAPTER 4: SOFTWARE PART OF RTOS, THE SCHEDULER

Size: px
Start display at page:

Download "CHAPTER 4: SOFTWARE PART OF RTOS, THE SCHEDULER"

Transcription

1 CHAPTER 4: SOFTWARE PART OF RTOS, THE SCHEDULER To provide the transparency of the system the user space is implemented in software as Scheduler. Given the sketch of the architecture, a low overhead scheduler is needed that maps application tasks on the available resources in most efficient manner. Periodic scheduling of tasks for variable number of channels requires certain set of data, may also require program code and other parameters such as channel states from previous cycle. Furthermore, depending on the type of tasks it may undergo a series of processes on different essors. The timely completion of each of these sub-processes requires availability of appropriate program code, the relevant datum and states, and certain amount of processing resource. From the perspective of the overall system, these requirements equate to allocating system resources, including essors, memory, and the interconnections (buses, and peripherals) in a timely manner. In the designed Scheduler, the combined sub-processes are scheduled at one time slot, however, they are treated as individual tasks assigned on different essor to exploit coarse grain parallelism where a channel application is pipelined and mapped on multiple essors running sequentially. Application pipelining framework is based on the concept of components or task model similar to instruction pipelining in the essor. Here, sequential sets of operations are partitioned into separate tasks that could run sequentially on different set of essors performing operations on their own set of data and using their own program code as independent processes. In this framework, each task is characterized with its own attributes comprising of periodicity, deadline and a worst-case execution time. All these attributes are static, i.e. specified at design time

2 This framework enables user to break large application into smaller, modular sub-processes (tasks) and run any number of these tasks in whatever order required on different essors for different processes/channels. It further allows reusability of the component program which can be used in the same application for different channels or in different application with similar tasks. Media applications are the natural candidate of such framework where application can be partitioned into independent processes and mapped on different set of essors to run sequentially. Figure 2 presents a pictorial view of an application partitioned into sets of tasks sequentially executing on six essors as pipelined application. Time essor 1 essor 2 essor 3 essor 4 essor 5 essor 6 essn TaskA essn TaskA essn+1 TaskE TaskG TaskG TaskG essn+3 TaskA essn+3 TaskA essn+4 TaskA essn+4 TaskA essn TaskA essn TaskA essn TaskB essn+1 TaskF essn+1 TaskF TaskH TaskH TaskH essn+3 TaskF essn+3 TaskF essn+4 TaskB essn TaskB essn TaskC essn TaskC essn+1 TaskC essn+1 TaskC TaskJ TaskJ TaskJ essn+3 TaskN essn+4 TaskN essn TaskC essn TaskC essn TaskD essn TaskD essn+1 TaskD essn+1 TaskD TaskM TaskM TaskM essn+3 TaskX essn+4 TakP essn TaskD essn TaskD essn TaskR essn+1 TaskU essn+1 TaskU een+2 TaskY essn+3 TaskY essn+3 TaskY essn+3 TaskR esn+4 TaskU essn+4 TaskU essn TaskU essn TaskU Figure 2: Software Framework Example of Application Pipeline on Six essors essn TaskS essn+1 TaskW essn+1 TaskW TaskZ TaskZ TaskZ essn+3 TaskS essn+4 TakW essn+4 TakW essn TaskW

3 The framework software architecture performs the execution as two-level scheduling algorithm. Each level can follow different scheduling policy. On the targeted multiprocessor system, the first level applies a preemptive policy and ensures meeting the timing constraints. The second level applies hierarchal scheduling policy using the tasks knowledge and ensures quality of service. As noted in Chapter Two, in the targeted architecture the system has a matrix of essors with dedicated cache memories, connected by distributed Communication Controller, Switch and DMA to the main memory, therefore, the Scheduler attempts to map tasks first to essors most likely to share cache memory at the same level from related tasks. Each component of distributed Communication Controller (CC) has its own queue for primary task assignments through which the Scheduler makes the initial affinity assignment. In the presence of large number of processes/channels and their sub-processes/tasks, ensuring that the system meets the requirements of all the channels coordination among different components of system and command and control procedure is required that can streamline the overall process, such that the resources are utilized most efficiently and at the same time all tasks requirements are also met. To summarize, the Scheduler job could be defined as following. ess P i is to be scheduled at regular Time interval T i that requires sparse Data D i, program Code C i and Execution time E i that maximize the resource utilization and minimize the end-to-end delay. This process may need to be mapped on a single essor or a set of essors

4 Thus, the job of the scheduler is to optimize the resource utilization by minimizing data transfer overhead and find the right tradeoff between minimizing wait time for the essor and increasing the system throughput in terms of number of channels it can process Scheduling algorithms for real-time systems are focused on guaranteeing the system timing constraints with advance knowledge. Different scheduling policies set different configuration or a priori knowledge requirement for tasks. For example, in the cyclic executive scheduling, an explicit schedule or calendar is set at configuration which determines which task has to be executed at any particular instant. In the fixed priority scheduling, the scheduler assigns a fixed priority to each task; and at run time, the scheduler dynamically assigns the essor to the task with the highest priority. In the dynamic priority policy, no priori knowledge exists and the run-time policy selects the ready task with the earliest deadline for execution. For implementing the application tasks on the targeted multiprocessor architecture, the software framework requires tasks to be periodic and having a known maximum execution time. This corresponds to the a priori knowledge of the system being able to meet its timing constraints and assignment of fixed priorities. To support runtime scheduling, heuristic scheduler is used at the second level which establishes the criterion based on task information. In order to provide this predictability, scheduling impose certain constraints on the system. In the following, the constraints of the system are more specifically described. Some of these constraints are satisfied using the scheduler and others by the service discipline. Some of the basic and more apparent constraints are following:

5 1. Assign resources to each process/channel, such that its periodic processing is completed before a stipulated time (deadline) 2. The total assignment to a essor, a memory, or any other system resource, must not exceed its capability 3. Scheduling decisions is made in advance of the beginning of acquisition of a datum, to permit for re-programming of the DMA channel and any other arrangements that the Switch must make. 4. Scheduler must cluster the tasks of similar type together. Tasks of same type use same program code, if same types of tasks are scheduled back-to-back, the time associated with loading program code is saved, minimizing program fetch overhead. 5. Another subtle constraint peculiar to the targeted architecture is to concatenate the same tasks, but not at the cost of increasing Arbitration Load (AL) on the memory interface beyond its capacity causing degradation in QoS of other processes/channels. 6. Keep minimum possible number of essors active to minimize the power dissipation, i.e. keep the rest of the essors in sleep mode as long as system is not running at full capacity. In the developed scheduler, time period is divided in time slots and each time slot has a defined maximum AL limit. When considering scheduling a channel on a particular time slot, the scheduler calculates the new load estimates (slack) for the time slots in which the new task is scheduled based on heuristics. If the channel scheduled next executes a different task from the current channel, it updates the AL due to possible increase in - 3 -

6 configuration fetch requests. If scheduling the new channel does not cause the AL in any time slot to exceed the AL limit, then the task is scheduled there. If, however, the new AL in any time slot does exceed the specified limit, this means that processing will not be completed at the estimated time because of an arbitration bottleneck. Scheduling the channel anyway may cause a drop in the QoS of adjacently scheduled channels. Consequently, the new channel is not scheduled in the time slot and the scheduler moves on to the next best time slot. Considered Scheduling Policies Rate Monotonic Scheduling (RMS) and many of its variants are well suited for scheduling periodic tasks in real-time systems and list scheduling alternatives also offer better choices. These include, Earliest Deadline First (EDF), Earliest Start-time First (EST), Dynamic Deadline Modification (DDM), and Earliest Deadline-start Time (EST). However, existing scheduling tests for these disciplines assume single processor systems. Moreover, these disciplines do not favor the cache-affine assignments, or try to minimize the delay. Hence, only fixed priority driven system cannot meet the requirements. Squillante et al. [32] analyze a number of techniques for cache-affine assignments in multiprocessor environments. Although, they do not address real-time systems, their proposed scheduling policies, Minimum Intervening, and Limited Minimum Intervening, and Limited Minimum Intervening Routing, provide useful insight. Jonsson et al. [33] propose a modified EDF scheduling policy that favors cache-affine assignments when applied with tasks of same deadline. Chandra, et al [34] have presented hierarchical scheduling algorithm for multiprocessor based system, however, it is focused on symmetric processors only

7 With this pretext, a two level scheduling policy is adapted for mapping high density channels with variable deadlines on heterogeneous multiprocessor system that meets the constraints and characteristics defined by the software framework. The first level applies a fixed-priority preemptive scheduling policy to tasks. This policy permits guaranteeing the application timing constraints. At this level, the essors available resources are claimed to detect the intervals where the other tasks could be inserted. The second level uses heuristic that takes quality characteristics and the dynamic situation of the environment in to account and effectively adapts to application behavior. There are different considerations for clustering, such as minimizing communication overhead, load balancing, or random. Here, clustering heuristic is based on maximizing cache-affine assignments, while meeting the deadline and capacity constraints. The specific policy at this level is only proposed as recommended for media application, and designers can choose other suited policy for their application. Variants of Rate Monotonic algorithms [35-37] have also been used as second level schedulers and performance has been compared with their implementation as second level scheduler. essor utilization enhances and reduction in program fetch overhead is observed when Rate Monotonic algorithm is preceded by fixed priority preemptive scheduling. This two level scheduling policy offers flexibility at runtime for different application and ensure timing constraints guarantee by enforcing fixed-priority preemptive scheduling at first level. This two level scheduling policy adds computational overhead for distinguishing

8 first iteration from the rest of the iterations for each channel. However, this can be maintained locally in memory table. Furthermore, since in every iteration only one of the two schedulers is used for tasks assignment, two level scheduling policy does not add any processing overhead at runtime. The first level scheduler performs required actions for scheduling different processes of the application, which is analogous to the regular run-time scheduler in traditional real-time systems. The componets and their respective activities at first level scheduler, using fixed priority preemptive scheduling are the following. Task Handler Releases tasks on different essors for different channels/processes according to the defined period (a priori knowledge) and continue to do so until the process is killed. Time Slot Selector The scheduler dynamically keeps track of the slack time available in each time slot to insert new tasks for different process/channel. This information is gathered in the second level scheduler and accessible at the first level scheduler. Concatenating of Similar Tasks Every time a new channel is created/opened, its processes and their corresponding tasks need to be scheduled. The scheduler evaluates the task requirements and concatenates similar tasks to schedule at the same time slot as long as it meets the system subtle requirement. The Scheduler is best described by the following listing, Listing Find new task from task queue with highest priority

9 2. Assign to next_task the ID of new task 3. Identify resource requirement 4. Find all the time slots with scheduled similar task 5. If no time slot is available with similar tasks go to Find slack time at the first available time slot 7. Run acceptance test for scheduling at the current time slot 8. If test passes concatenate new task with other tasks scheduled on the time slot 9. Schedule new tasks along with other task when time slot arrives 1. Done with first time schedule, update the field for subsequent arrival and scheduling of this task 11. Go to second level of scheduling 12. If acceptance test fails, choose next available time slot 13. If no time slot available go to Go to Find any time slot with slack greater than AL 16. If no time slot system running at full capacity no room for further tasks 17. Go to 6 Listing 1: Scheduler Sequence of Operation // check the time slot availability Time_slot = next_schedule (list of resources, current task resources) if (time slot > ) { // calculation of slack at time slot if (first_time_scheduled(current tasks resource)) { available_slack =calculate_slack(next_task, slack_available); } /* find any time slot with slack time greater than AL time slot = calculate slack (next_task, current task resources); // directly execute the task

10 execute(next_task); } In the second level of scheduling tasks heuristic is used to calculate tasks expire time to maintain the quality of service. This inherently identifies the essor(s) release time for the set of processes and their corresponding tasks for each channel. The second level scheduler uses this information to calculate the essors idle time and updates resource utilization table. Heuristic algorithm as second level scheduling policy is not enforced by the software framework followed but rather recommended for media applications where tasks heuristics are instrumental in determining quality of service. Rate Monotonic and Delayed Rate Monotonic are also evaluated as second level scheduler for media application. Nonetheless, whatever scheduler may it be for a given application, it has to be designed as inner loop running iteratively as long as a channel comprising of processes and set of tasks remain active. This scheduler is structured in the following steps in Listing 2: 1. At the arrival of new task the second-level scheduler is called by the first level scheduler indicating the time slot on which the task is scheduled along with its deadline. In the absence of new task, second level scheduler is called at the start of every time slot 2. After every iteration, the second level scheduler checks if any of the running tasks have expired. If so, these tasks are deleted from the queue to make room for new tasks. 3. In every iteration, second level scheduler maintains and updates the resource utilization history and idle time of the essors

11 4. At the end of the slack for current time slot, the second level scheduler releases control to the first level scheduler to add any new tasks, if any or perform any other maintenance related activity. Listing 2: Scheduler Structure Simulation Environment and Performance Curves A graphical simulation utility is designed for performing simulations and analyzing various scheduling techniques for different media applications as shown in Figure

12 Figure 3: Simulation Environment for Software Scheduler Performance Evaluation User may define essor characteristics, memory bandwidth and speed, number of essors in the matrix. To provide more flexibility in testing algorithms for different applications, application characteristics can also be defined in terms of number of channels, processes per channel and tasks per channel along with periodicity. The simulator uses

13 normal distribution to generate the set of tasks, processes and channels at different interval and uses the presented software scheduling framework. Monty Carlo algorithm is used to generate the repeated data for analysis and to create the performance curves. Annexure A contains the source code for the framework and scheduler. Using the developed software framework a clustering heuristic scheduling algorithm for periodic and deterministic tasks is implemented for the example VoIP media gateway application covered in Chapter Six. The scheduler receives different requests from toplevel application when a new channel is opened or closed or when channel characteristics dynamically change. The scheduler receives these requests with a variable probability distribution over time and it attempts to increase the resource utilization, minimize the program code fetch time overhead by clustering similar tasks and reduce the power consumption across the system by attempting to keep as many essors idle when maximum possible channels are not scheduled. Figure 4 Demonstrates the performance of the deployed framework and two level scheduling algorithm on media application with 2 channels scheduled on a set of six heterogeneous processors. As shown, essors utilization is incrementally increasing sequentially. As the number of channels, their corresponding processes and tasks increase a new essor is brought to life. As desired, when the same set of channels are scheduled on multiple larger set of essors, only one Array is used and rest of the Arrays remained inactive to minimize the power consumption

14 1 Grid essor 9 Grid essor 1 8 Grid essor 2 # of Active esses # of Active esses # of Active esses x x x Grid essor 3 35 Grid essor 4 14 Grid essor # of Active esses # of Active esses # of Active esses x x x 1-3 Figure 4: Performance of Heuristic Scheduler Running as Second Level Scheduler with Fixed-Priority Preemptive Running as First Level Scheduler in Media Application To further analyze the performance of software framework on other media application, model Video on Demand Server, covered in Chapter Six, was developed with multiple Texas Instruments DSP models and Spartan FPGA. Performance of software framework and multilevel scheduling policy was analyzed where variant of Rate Monotonic Algorithm were implemented as second level algorithm proceeded by fixed-priority preemptive algorithm. Enhancement in essor utilization and reduction is program code fetch overhead is achieved as shown in Figure

15 5 Grid essor 5 Grid essor 1 5 Grid essor 2 # of esses Scheduled # of essed Scheduled # of esses Scheduled Grid essor 3 5 Grid essor 4 5 Grid essor 5 # of esses Scheduled # of esses Scheduled # of esses Scheduled Figure 5: Performance of RMA with 1 channels scheduled simultaneously in Video on Demand Application. Holes show the essor Idle time due to context switch overhead - 4 -

16 5 Grid essor 5 Grid essor 1 5 Grid essor 2 # of esses Scheduled # of esses Scheduled # of esses Scheduled Grid essor 3 5 Grid essor 4 5 Grid essor 5 # of esses Scheduled # of esses Scheduled # of esses Scheduled Figure 6: Performance of RMA Enhances in Video on Demand Application with Fixed-Priority Preemptive as First Level Scheduler: Similar tasks are better stacked together offering reduced program code fetch overhead Implementation and Interfacing of Scheduler with Hardware Part of RTOS Information on the applications selected by the user generates insight for the breakdown of processes into tasks. The Scheduler issues specialized instructions for the Switch for a given channel at different time slots. Scheduling of tasks requires the maintenance of the order of processing to be carried out on the input sample of signals. The sequence information is part of the instruction that are managed by/executed by/dispatched to the hardware RTOS. The hardware RTOS collects system performance parameters like current execution time, completion and time analysis of the tasks etc and relay this information to

17 the Scheduler. The Scheduler responsibly allocates time slots to the tasks and subtasks after calculating/checking time required by the service requested by the user. It is imperative to keep track of the service completion with respect to essors in order to manage efficient utilization of program code. The Scheduler schedules an instruction, which commands Switch to run a process comprising of multiple tasks on the essor(s). A process may run on a single essor or ping-pong between different essors until the job is completed, some of the instruction patterns generated by the Scheduler for set of twelve essors placed in a matrix are shown in the Figure 7. Software RTOS, Scheduler H ardw are R TO S, Sw itch ess 1 ess 2 ess 3 Three Independent esses scheduled by the Scheduler running different tasks on a set of essors Figure 7: Instruction scheduling & task flow on a set of twelve essors

Real-Time Scheduling 1 / 39

Real-Time Scheduling 1 / 39 Real-Time Scheduling 1 / 39 Multiple Real-Time Processes A runs every 30 msec; each time it needs 10 msec of CPU time B runs 25 times/sec for 15 msec C runs 20 times/sec for 5 msec For our equation, A

More information

GEDAE TM - A Graphical Programming and Autocode Generation Tool for Signal Processor Applications

GEDAE TM - A Graphical Programming and Autocode Generation Tool for Signal Processor Applications GEDAE TM - A Graphical Programming and Autocode Generation Tool for Signal Processor Applications Harris Z. Zebrowitz Lockheed Martin Advanced Technology Laboratories 1 Federal Street Camden, NJ 08102

More information

Scheduling. Scheduling. Scheduling levels. Decision to switch the running process can take place under the following circumstances:

Scheduling. Scheduling. Scheduling levels. Decision to switch the running process can take place under the following circumstances: Scheduling Scheduling Scheduling levels Long-term scheduling. Selects which jobs shall be allowed to enter the system. Only used in batch systems. Medium-term scheduling. Performs swapin-swapout operations

More information

159.735. Final Report. Cluster Scheduling. Submitted by: Priti Lohani 04244354

159.735. Final Report. Cluster Scheduling. Submitted by: Priti Lohani 04244354 159.735 Final Report Cluster Scheduling Submitted by: Priti Lohani 04244354 1 Table of contents: 159.735... 1 Final Report... 1 Cluster Scheduling... 1 Table of contents:... 2 1. Introduction:... 3 1.1

More information

Operatin g Systems: Internals and Design Principle s. Chapter 10 Multiprocessor and Real-Time Scheduling Seventh Edition By William Stallings

Operatin g Systems: Internals and Design Principle s. Chapter 10 Multiprocessor and Real-Time Scheduling Seventh Edition By William Stallings Operatin g Systems: Internals and Design Principle s Chapter 10 Multiprocessor and Real-Time Scheduling Seventh Edition By William Stallings Operating Systems: Internals and Design Principles Bear in mind,

More information

Lecture Outline Overview of real-time scheduling algorithms Outline relative strengths, weaknesses

Lecture Outline Overview of real-time scheduling algorithms Outline relative strengths, weaknesses Overview of Real-Time Scheduling Embedded Real-Time Software Lecture 3 Lecture Outline Overview of real-time scheduling algorithms Clock-driven Weighted round-robin Priority-driven Dynamic vs. static Deadline

More information

Aperiodic Task Scheduling

Aperiodic Task Scheduling Aperiodic Task Scheduling Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 12 Germany Springer, 2010 2014 年 11 月 19 日 These slides use Microsoft clip arts. Microsoft copyright

More information

4. Fixed-Priority Scheduling

4. Fixed-Priority Scheduling Simple workload model 4. Fixed-Priority Scheduling Credits to A. Burns and A. Wellings The application is assumed to consist of a fixed set of tasks All tasks are periodic with known periods This defines

More information

Real-time Scheduling of Periodic Tasks (1) Advanced Operating Systems Lecture 2

Real-time Scheduling of Periodic Tasks (1) Advanced Operating Systems Lecture 2 Real-time Scheduling of Periodic Tasks (1) Advanced Operating Systems Lecture 2 Lecture Outline Scheduling periodic tasks The rate monotonic algorithm Definition Non-optimality Time-demand analysis...

More information

A Clustering Heuristic Algorithm for Scheduling Periodic and Deterministic Tasks on a Multiprocessor System

A Clustering Heuristic Algorithm for Scheduling Periodic and Deterministic Tasks on a Multiprocessor System A Clustering Heuristic Algorithm for Scheduling Periodic and Deterministic Tasks on a Multiprocessor System Muhammad U. Ilyas and Shoab A. Khan Communications Enabling Technologies/ Avaz Networks 5-A,

More information

Predictable response times in event-driven real-time systems

Predictable response times in event-driven real-time systems Predictable response times in event-driven real-time systems Automotive 2006 - Security and Reliability in Automotive Systems Stuttgart, October 2006. Presented by: Michael González Harbour mgh@unican.es

More information

Partition Scheduling in APEX Runtime Environment for Embedded Avionics Software

Partition Scheduling in APEX Runtime Environment for Embedded Avionics Software Partition Scheduling in APEX Runtime Environment for Embedded Avionics Software Yang-Hang Lee CISE Department, University of Florida Gainesville, FL 32611 Phone: (352) 392-1536 Fax: (352) 392-1220 Email:

More information

Real-Time Software. Basic Scheduling and Response-Time Analysis. René Rydhof Hansen. 21. september 2010

Real-Time Software. Basic Scheduling and Response-Time Analysis. René Rydhof Hansen. 21. september 2010 Real-Time Software Basic Scheduling and Response-Time Analysis René Rydhof Hansen 21. september 2010 TSW (2010e) (Lecture 05) Real-Time Software 21. september 2010 1 / 28 Last Time Time in a real-time

More information

Chapter 1 Computer System Overview

Chapter 1 Computer System Overview Operating Systems: Internals and Design Principles Chapter 1 Computer System Overview Eighth Edition By William Stallings Operating System Exploits the hardware resources of one or more processors Provides

More information

Intel DPDK Boosts Server Appliance Performance White Paper

Intel DPDK Boosts Server Appliance Performance White Paper Intel DPDK Boosts Server Appliance Performance Intel DPDK Boosts Server Appliance Performance Introduction As network speeds increase to 40G and above, both in the enterprise and data center, the bottlenecks

More information

Scheduling Aperiodic and Sporadic Jobs in Priority- Driven Systems

Scheduling Aperiodic and Sporadic Jobs in Priority- Driven Systems Scheduling Aperiodic and Sporadic Jobs in Priority- Driven Systems Ingo Sander ingo@kth.se Liu: Chapter 7 IL2212 Embedded Software 1 Outline l System Model and Assumptions l Scheduling Aperiodic Jobs l

More information

REAL TIME OPERATING SYSTEMS. Lesson-18:

REAL TIME OPERATING SYSTEMS. Lesson-18: REAL TIME OPERATING SYSTEMS Lesson-18: Round Robin Time Slicing of tasks of equal priorities 1 1. Common scheduling models 2 Common scheduling models Cooperative Scheduling of ready tasks in a circular

More information

Various Schemes of Load Balancing in Distributed Systems- A Review

Various Schemes of Load Balancing in Distributed Systems- A Review 741 Various Schemes of Load Balancing in Distributed Systems- A Review Monika Kushwaha Pranveer Singh Institute of Technology Kanpur, U.P. (208020) U.P.T.U., Lucknow Saurabh Gupta Pranveer Singh Institute

More information

Improved Handling of Soft Aperiodic Tasks in Offline Scheduled Real-Time Systems using Total Bandwidth Server

Improved Handling of Soft Aperiodic Tasks in Offline Scheduled Real-Time Systems using Total Bandwidth Server Improved Handling of Soft Aperiodic Tasks in Offline Scheduled Real-Time Systems using Total Bandwidth Server Gerhard Fohler, Tomas Lennvall Mälardalen University Västeras, Sweden gfr, tlv @mdh.se Giorgio

More information

174: Scheduling Systems. Emil Michta University of Zielona Gora, Zielona Gora, Poland 1 TIMING ANALYSIS IN NETWORKED MEASUREMENT CONTROL SYSTEMS

174: Scheduling Systems. Emil Michta University of Zielona Gora, Zielona Gora, Poland 1 TIMING ANALYSIS IN NETWORKED MEASUREMENT CONTROL SYSTEMS 174: Scheduling Systems Emil Michta University of Zielona Gora, Zielona Gora, Poland 1 Timing Analysis in Networked Measurement Control Systems 1 2 Introduction to Scheduling Systems 2 3 Scheduling Theory

More information

Control 2004, University of Bath, UK, September 2004

Control 2004, University of Bath, UK, September 2004 Control, University of Bath, UK, September ID- IMPACT OF DEPENDENCY AND LOAD BALANCING IN MULTITHREADING REAL-TIME CONTROL ALGORITHMS M A Hossain and M O Tokhi Department of Computing, The University of

More information

Periodic Task Scheduling

Periodic Task Scheduling Periodic Task Scheduling Radek Pelánek Motivation and Assumptions Examples of Periodic Tasks sensory data acquisition control loops action planning system monitoring Motivation and Assumptions Simplifying

More information

Priority-Driven Scheduling

Priority-Driven Scheduling Priority-Driven Scheduling Advantages of Priority-Driven Scheduling Priority-driven scheduling is easy to implement. It does not require the information on the release times and execution times of the

More information

A two-level scheduler to dynamically schedule a stream of batch jobs in large-scale grids

A two-level scheduler to dynamically schedule a stream of batch jobs in large-scale grids Managed by A two-level scheduler to dynamically schedule a stream of batch jobs in large-scale grids M. Pasquali, R. Baraglia, G. Capannini, L. Ricci, and D. Laforenza 7th Meeting of the Institute on Resource

More information

Operating Systems. III. Scheduling. http://soc.eurecom.fr/os/

Operating Systems. III. Scheduling. http://soc.eurecom.fr/os/ Operating Systems Institut Mines-Telecom III. Scheduling Ludovic Apvrille ludovic.apvrille@telecom-paristech.fr Eurecom, office 470 http://soc.eurecom.fr/os/ Outline Basics of Scheduling Definitions Switching

More information

Multichannel Voice over Internet Protocol Applications on the CARMEL DSP

Multichannel Voice over Internet Protocol Applications on the CARMEL DSP Multichannel Voice over Internet Protocol Applications on the CARMEL DSP 1 Introduction Multichannel DSP applications continue to demand increasing numbers of channels and equivalently greater DSP performance

More information

Making Multicore Work and Measuring its Benefits. Markus Levy, president EEMBC and Multicore Association

Making Multicore Work and Measuring its Benefits. Markus Levy, president EEMBC and Multicore Association Making Multicore Work and Measuring its Benefits Markus Levy, president EEMBC and Multicore Association Agenda Why Multicore? Standards and issues in the multicore community What is Multicore Association?

More information

Efficient Scheduling Of On-line Services in Cloud Computing Based on Task Migration

Efficient Scheduling Of On-line Services in Cloud Computing Based on Task Migration Efficient Scheduling Of On-line Services in Cloud Computing Based on Task Migration 1 Harish H G, 2 Dr. R Girisha 1 PG Student, 2 Professor, Department of CSE, PESCE Mandya (An Autonomous Institution under

More information

3. Scheduling issues. Common approaches /1. Common approaches /2. Common approaches /3. 2012/13 UniPD / T. Vardanega 23/01/2013. Real-Time Systems 1

3. Scheduling issues. Common approaches /1. Common approaches /2. Common approaches /3. 2012/13 UniPD / T. Vardanega 23/01/2013. Real-Time Systems 1 Common approaches /1 3. Scheduling issues Clock-driven (time-driven) scheduling Scheduling decisions are made beforehand (off line) and carried out at predefined time instants The time instants normally

More information

On real-time delay monitoring in software-defined networks

On real-time delay monitoring in software-defined networks On real-time delay monitoring in software-defined networks Victor S. Altukhov Lomonosov Moscow State University Moscow, Russia victoralt@lvk.cs.msu.su Eugene V. Chemeritskiy Applied Research Center for

More information

Architectures and Platforms

Architectures and Platforms Hardware/Software Codesign Arch&Platf. - 1 Architectures and Platforms 1. Architecture Selection: The Basic Trade-Offs 2. General Purpose vs. Application-Specific Processors 3. Processor Specialisation

More information

A Comparative Performance Analysis of Load Balancing Algorithms in Distributed System using Qualitative Parameters

A Comparative Performance Analysis of Load Balancing Algorithms in Distributed System using Qualitative Parameters A Comparative Performance Analysis of Load Balancing Algorithms in Distributed System using Qualitative Parameters Abhijit A. Rajguru, S.S. Apte Abstract - A distributed system can be viewed as a collection

More information

Multiprocessor Scheduling and Scheduling in Linux Kernel 2.6

Multiprocessor Scheduling and Scheduling in Linux Kernel 2.6 Multiprocessor Scheduling and Scheduling in Linux Kernel 2.6 Winter Term 2008 / 2009 Jun.-Prof. Dr. André Brinkmann Andre.Brinkmann@uni-paderborn.de Universität Paderborn PC² Agenda Multiprocessor and

More information

Lustre Networking BY PETER J. BRAAM

Lustre Networking BY PETER J. BRAAM Lustre Networking BY PETER J. BRAAM A WHITE PAPER FROM CLUSTER FILE SYSTEMS, INC. APRIL 2007 Audience Architects of HPC clusters Abstract This paper provides architects of HPC clusters with information

More information

CHAPTER 3 LOAD BALANCING MECHANISM USING MOBILE AGENTS

CHAPTER 3 LOAD BALANCING MECHANISM USING MOBILE AGENTS 48 CHAPTER 3 LOAD BALANCING MECHANISM USING MOBILE AGENTS 3.1 INTRODUCTION Load balancing is a mechanism used to assign the load effectively among the servers in a distributed environment. These computers

More information

Multicore Programming with LabVIEW Technical Resource Guide

Multicore Programming with LabVIEW Technical Resource Guide Multicore Programming with LabVIEW Technical Resource Guide 2 INTRODUCTORY TOPICS UNDERSTANDING PARALLEL HARDWARE: MULTIPROCESSORS, HYPERTHREADING, DUAL- CORE, MULTICORE AND FPGAS... 5 DIFFERENCES BETWEEN

More information

A Configurable Hardware Scheduler for Real-Time Systems

A Configurable Hardware Scheduler for Real-Time Systems A Configurable Hardware Scheduler for Real-Time Systems Pramote Kuacharoen, Mohamed A. Shalan and Vincent J. Mooney III Center for Research on Embedded Systems and Technology School of Electrical and Computer

More information

Methods and Tools For Embedded Distributed System Scheduling and Schedulability Analysis

Methods and Tools For Embedded Distributed System Scheduling and Schedulability Analysis Methods and Tools For Embedded Distributed System Scheduling and Schedulability Analysis Steve Vestal Honeywell Labs Steve.Vestal@Honeywell.com 18 October 2005 Outline Background Binding and Routing Scheduling

More information

STORM. Simulation TOol for Real-time Multiprocessor scheduling. Designer Guide V3.3.1 September 2009

STORM. Simulation TOol for Real-time Multiprocessor scheduling. Designer Guide V3.3.1 September 2009 STORM Simulation TOol for Real-time Multiprocessor scheduling Designer Guide V3.3.1 September 2009 Richard Urunuela, Anne-Marie Déplanche, Yvon Trinquet This work is part of the project PHERMA supported

More information

System Software Integration: An Expansive View. Overview

System Software Integration: An Expansive View. Overview Software Integration: An Expansive View Steven P. Smith Design of Embedded s EE382V Fall, 2009 EE382 SoC Design Software Integration SPS-1 University of Texas at Austin Overview Some Definitions Introduction:

More information

4.2: Multimedia File Systems Traditional File Systems. Multimedia File Systems. Multimedia File Systems. Disk Scheduling

4.2: Multimedia File Systems Traditional File Systems. Multimedia File Systems. Multimedia File Systems. Disk Scheduling Chapter 2: Representation of Multimedia Data Chapter 3: Multimedia Systems Communication Aspects and Services Chapter 4: Multimedia Systems Storage Aspects Optical Storage Media Multimedia File Systems

More information

CPU Scheduling 101. The CPU scheduler makes a sequence of moves that determines the interleaving of threads.

CPU Scheduling 101. The CPU scheduler makes a sequence of moves that determines the interleaving of threads. CPU Scheduling CPU Scheduling 101 The CPU scheduler makes a sequence of moves that determines the interleaving of threads. Programs use synchronization to prevent bad moves. but otherwise scheduling choices

More information

Key Components of WAN Optimization Controller Functionality

Key Components of WAN Optimization Controller Functionality Key Components of WAN Optimization Controller Functionality Introduction and Goals One of the key challenges facing IT organizations relative to application and service delivery is ensuring that the applications

More information

Scheduling Algorithms for Dynamic Workload

Scheduling Algorithms for Dynamic Workload Managed by Scheduling Algorithms for Dynamic Workload Dalibor Klusáček (MU) Hana Rudová (MU) Ranieri Baraglia (CNR - ISTI) Gabriele Capannini (CNR - ISTI) Marco Pasquali (CNR ISTI) Outline Motivation &

More information

OpenMosix Presented by Dr. Moshe Bar and MAASK [01]

OpenMosix Presented by Dr. Moshe Bar and MAASK [01] OpenMosix Presented by Dr. Moshe Bar and MAASK [01] openmosix is a kernel extension for single-system image clustering. openmosix [24] is a tool for a Unix-like kernel, such as Linux, consisting of adaptive

More information

Weighted Total Mark. Weighted Exam Mark

Weighted Total Mark. Weighted Exam Mark CMP2204 Operating System Technologies Period per Week Contact Hour per Semester Total Mark Exam Mark Continuous Assessment Mark Credit Units LH PH TH CH WTM WEM WCM CU 45 30 00 60 100 40 100 4 Rationale

More information

Operating Systems 4 th Class

Operating Systems 4 th Class Operating Systems 4 th Class Lecture 1 Operating Systems Operating systems are essential part of any computer system. Therefore, a course in operating systems is an essential part of any computer science

More information

Hardware Task Scheduling and Placement in Operating Systems for Dynamically Reconfigurable SoC

Hardware Task Scheduling and Placement in Operating Systems for Dynamically Reconfigurable SoC Hardware Task Scheduling and Placement in Operating Systems for Dynamically Reconfigurable SoC Yuan-Hsiu Chen and Pao-Ann Hsiung National Chung Cheng University, Chiayi, Taiwan 621, ROC. pahsiung@cs.ccu.edu.tw

More information

Real-Time Scheduling (Part 1) (Working Draft) Real-Time System Example

Real-Time Scheduling (Part 1) (Working Draft) Real-Time System Example Real-Time Scheduling (Part 1) (Working Draft) Insup Lee Department of Computer and Information Science School of Engineering and Applied Science University of Pennsylvania www.cis.upenn.edu/~lee/ CIS 41,

More information

CPU Scheduling Outline

CPU Scheduling Outline CPU Scheduling Outline What is scheduling in the OS? What are common scheduling criteria? How to evaluate scheduling algorithms? What are common scheduling algorithms? How is thread scheduling different

More information

Multi-core real-time scheduling

Multi-core real-time scheduling Multi-core real-time scheduling Credits: Anne-Marie Déplanche, Irccyn, Nantes (many slides come from her presentation at ETR, Brest, September 2011) 1 Multi-core real-time scheduling! Introduction: problem

More information

Chapter 11 I/O Management and Disk Scheduling

Chapter 11 I/O Management and Disk Scheduling Operatin g Systems: Internals and Design Principle s Chapter 11 I/O Management and Disk Scheduling Seventh Edition By William Stallings Operating Systems: Internals and Design Principles An artifact can

More information

Optimizing Configuration and Application Mapping for MPSoC Architectures

Optimizing Configuration and Application Mapping for MPSoC Architectures Optimizing Configuration and Application Mapping for MPSoC Architectures École Polytechnique de Montréal, Canada Email : Sebastien.Le-Beux@polymtl.ca 1 Multi-Processor Systems on Chip (MPSoC) Design Trends

More information

Lecture 3 Theoretical Foundations of RTOS

Lecture 3 Theoretical Foundations of RTOS CENG 383 Real-Time Systems Lecture 3 Theoretical Foundations of RTOS Asst. Prof. Tolga Ayav, Ph.D. Department of Computer Engineering Task States Executing Ready Suspended (or blocked) Dormant (or sleeping)

More information

Embedded Systems. 6. Real-Time Operating Systems

Embedded Systems. 6. Real-Time Operating Systems Embedded Systems 6. Real-Time Operating Systems Lothar Thiele 6-1 Contents of Course 1. Embedded Systems Introduction 2. Software Introduction 7. System Components 10. Models 3. Real-Time Models 4. Periodic/Aperiodic

More information

LOAD BALANCING TECHNIQUES

LOAD BALANCING TECHNIQUES LOAD BALANCING TECHNIQUES Two imporatnt characteristics of distributed systems are resource multiplicity and system transparency. In a distributed system we have a number of resources interconnected by

More information

Today. Intro to real-time scheduling Cyclic executives. Scheduling tables Frames Frame size constraints. Non-independent tasks Pros and cons

Today. Intro to real-time scheduling Cyclic executives. Scheduling tables Frames Frame size constraints. Non-independent tasks Pros and cons Today Intro to real-time scheduling Cyclic executives Scheduling tables Frames Frame size constraints Generating schedules Non-independent tasks Pros and cons Real-Time Systems The correctness of a real-time

More information

Best Practises for LabVIEW FPGA Design Flow. uk.ni.com ireland.ni.com

Best Practises for LabVIEW FPGA Design Flow. uk.ni.com ireland.ni.com Best Practises for LabVIEW FPGA Design Flow 1 Agenda Overall Application Design Flow Host, Real-Time and FPGA LabVIEW FPGA Architecture Development FPGA Design Flow Common FPGA Architectures Testing and

More information

Real Time Scheduling Basic Concepts. Radek Pelánek

Real Time Scheduling Basic Concepts. Radek Pelánek Real Time Scheduling Basic Concepts Radek Pelánek Basic Elements Model of RT System abstraction focus only on timing constraints idealization (e.g., zero switching time) Basic Elements Basic Notions task

More information

CHAPTER 6. VOICE COMMUNICATION OVER HYBRID MANETs

CHAPTER 6. VOICE COMMUNICATION OVER HYBRID MANETs CHAPTER 6 VOICE COMMUNICATION OVER HYBRID MANETs Multimedia real-time session services such as voice and videoconferencing with Quality of Service support is challenging task on Mobile Ad hoc Network (MANETs).

More information

Common Approaches to Real-Time Scheduling

Common Approaches to Real-Time Scheduling Common Approaches to Real-Time Scheduling Clock-driven time-driven schedulers Priority-driven schedulers Examples of priority driven schedulers Effective timing constraints The Earliest-Deadline-First

More information

CPU Scheduling. Basic Concepts. Basic Concepts (2) Basic Concepts Scheduling Criteria Scheduling Algorithms Batch systems Interactive systems

CPU Scheduling. Basic Concepts. Basic Concepts (2) Basic Concepts Scheduling Criteria Scheduling Algorithms Batch systems Interactive systems Basic Concepts Scheduling Criteria Scheduling Algorithms Batch systems Interactive systems Based on original slides by Silberschatz, Galvin and Gagne 1 Basic Concepts CPU I/O Burst Cycle Process execution

More information

Introduction to Cloud Computing

Introduction to Cloud Computing Introduction to Cloud Computing Parallel Processing I 15 319, spring 2010 7 th Lecture, Feb 2 nd Majd F. Sakr Lecture Motivation Concurrency and why? Different flavors of parallel computing Get the basic

More information

Module 6. Embedded System Software. Version 2 EE IIT, Kharagpur 1

Module 6. Embedded System Software. Version 2 EE IIT, Kharagpur 1 Module 6 Embedded System Software Version 2 EE IIT, Kharagpur 1 Lesson 30 Real-Time Task Scheduling Part 2 Version 2 EE IIT, Kharagpur 2 Specific Instructional Objectives At the end of this lesson, the

More information

ICS 143 - Principles of Operating Systems

ICS 143 - Principles of Operating Systems ICS 143 - Principles of Operating Systems Lecture 5 - CPU Scheduling Prof. Nalini Venkatasubramanian nalini@ics.uci.edu Note that some slides are adapted from course text slides 2008 Silberschatz. Some

More information

Commonly Used Approaches to Real-Time Scheduling

Commonly Used Approaches to Real-Time Scheduling Integre Technical Publishing Co., Inc. Liu January 13, 2000 8:46 a.m. chap4 page 60 C H A P T E R 4 Commonly Used Approaches to Real-Time Scheduling This chapter provides a brief overview of three commonly

More information

The International Journal Of Science & Technoledge (ISSN 2321 919X) www.theijst.com

The International Journal Of Science & Technoledge (ISSN 2321 919X) www.theijst.com THE INTERNATIONAL JOURNAL OF SCIENCE & TECHNOLEDGE Efficient Parallel Processing on Public Cloud Servers using Load Balancing Manjunath K. C. M.Tech IV Sem, Department of CSE, SEA College of Engineering

More information

Load balancing in a heterogeneous computer system by self-organizing Kohonen network

Load balancing in a heterogeneous computer system by self-organizing Kohonen network Bull. Nov. Comp. Center, Comp. Science, 25 (2006), 69 74 c 2006 NCC Publisher Load balancing in a heterogeneous computer system by self-organizing Kohonen network Mikhail S. Tarkov, Yakov S. Bezrukov Abstract.

More information

Reconfigurable Architecture Requirements for Co-Designed Virtual Machines

Reconfigurable Architecture Requirements for Co-Designed Virtual Machines Reconfigurable Architecture Requirements for Co-Designed Virtual Machines Kenneth B. Kent University of New Brunswick Faculty of Computer Science Fredericton, New Brunswick, Canada ken@unb.ca Micaela Serra

More information

Chapter 2: OS Overview

Chapter 2: OS Overview Chapter 2: OS Overview CmSc 335 Operating Systems 1. Operating system objectives and functions Operating systems control and support the usage of computer systems. a. usage users of a computer system:

More information

Optimizing Shared Resource Contention in HPC Clusters

Optimizing Shared Resource Contention in HPC Clusters Optimizing Shared Resource Contention in HPC Clusters Sergey Blagodurov Simon Fraser University Alexandra Fedorova Simon Fraser University Abstract Contention for shared resources in HPC clusters occurs

More information

Real-Time Operating Systems for MPSoCs

Real-Time Operating Systems for MPSoCs Real-Time Operating Systems for MPSoCs Hiroyuki Tomiyama Graduate School of Information Science Nagoya University http://member.acm.org/~hiroyuki MPSoC 2009 1 Contributors Hiroaki Takada Director and Professor

More information

Tools Page 1 of 13 ON PROGRAM TRANSLATION. A priori, we have two translation mechanisms available:

Tools Page 1 of 13 ON PROGRAM TRANSLATION. A priori, we have two translation mechanisms available: Tools Page 1 of 13 ON PROGRAM TRANSLATION A priori, we have two translation mechanisms available: Interpretation Compilation On interpretation: Statements are translated one at a time and executed immediately.

More information

Multi-GPU Load Balancing for Simulation and Rendering

Multi-GPU Load Balancing for Simulation and Rendering Multi- Load Balancing for Simulation and Rendering Yong Cao Computer Science Department, Virginia Tech, USA In-situ ualization and ual Analytics Instant visualization and interaction of computing tasks

More information

Attaining EDF Task Scheduling with O(1) Time Complexity

Attaining EDF Task Scheduling with O(1) Time Complexity Attaining EDF Task Scheduling with O(1) Time Complexity Verber Domen University of Maribor, Faculty of Electrical Engineering and Computer Sciences, Maribor, Slovenia (e-mail: domen.verber@uni-mb.si) Abstract:

More information

NOVEL PRIORITISED EGPRS MEDIUM ACCESS REGIME FOR REDUCED FILE TRANSFER DELAY DURING CONGESTED PERIODS

NOVEL PRIORITISED EGPRS MEDIUM ACCESS REGIME FOR REDUCED FILE TRANSFER DELAY DURING CONGESTED PERIODS NOVEL PRIORITISED EGPRS MEDIUM ACCESS REGIME FOR REDUCED FILE TRANSFER DELAY DURING CONGESTED PERIODS D. Todinca, P. Perry and J. Murphy Dublin City University, Ireland ABSTRACT The goal of this paper

More information

Towards a Load Balancing in a Three-level Cloud Computing Network

Towards a Load Balancing in a Three-level Cloud Computing Network Towards a Load Balancing in a Three-level Cloud Computing Network Shu-Ching Wang, Kuo-Qin Yan * (Corresponding author), Wen-Pin Liao and Shun-Sheng Wang Chaoyang University of Technology Taiwan, R.O.C.

More information

CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL

CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL This chapter is to introduce the client-server model and its role in the development of distributed network systems. The chapter

More information

LSKA 2010 Survey Report Job Scheduler

LSKA 2010 Survey Report Job Scheduler LSKA 2010 Survey Report Job Scheduler Graduate Institute of Communication Engineering {r98942067, r98942112}@ntu.edu.tw March 31, 2010 1. Motivation Recently, the computing becomes much more complex. However,

More information

Applications to Computational Financial and GPU Computing. May 16th. Dr. Daniel Egloff +41 44 520 01 17 +41 79 430 03 61

Applications to Computational Financial and GPU Computing. May 16th. Dr. Daniel Egloff +41 44 520 01 17 +41 79 430 03 61 F# Applications to Computational Financial and GPU Computing May 16th Dr. Daniel Egloff +41 44 520 01 17 +41 79 430 03 61 Today! Why care about F#? Just another fashion?! Three success stories! How Alea.cuBase

More information

Resource Reservation & Resource Servers. Problems to solve

Resource Reservation & Resource Servers. Problems to solve Resource Reservation & Resource Servers Problems to solve Hard-deadline tasks may be Periodic or Sporadic (with a known minimum arrival time) or Non periodic (how to deal with this?) Soft-deadline tasks

More information

PART IV Performance oriented design, Performance testing, Performance tuning & Performance solutions. Outline. Performance oriented design

PART IV Performance oriented design, Performance testing, Performance tuning & Performance solutions. Outline. Performance oriented design PART IV Performance oriented design, Performance testing, Performance tuning & Performance solutions Slide 1 Outline Principles for performance oriented design Performance testing Performance tuning General

More information

Page 1 of 5. IS 335: Information Technology in Business Lecture Outline Operating Systems

Page 1 of 5. IS 335: Information Technology in Business Lecture Outline Operating Systems Lecture Outline Operating Systems Objectives Describe the functions and layers of an operating system List the resources allocated by the operating system and describe the allocation process Explain how

More information

CHAPTER 1 INTRODUCTION

CHAPTER 1 INTRODUCTION CHAPTER 1 INTRODUCTION 1.1 Background The command over cloud computing infrastructure is increasing with the growing demands of IT infrastructure during the changed business scenario of the 21 st Century.

More information

STUDY AND SIMULATION OF A DISTRIBUTED REAL-TIME FAULT-TOLERANCE WEB MONITORING SYSTEM

STUDY AND SIMULATION OF A DISTRIBUTED REAL-TIME FAULT-TOLERANCE WEB MONITORING SYSTEM STUDY AND SIMULATION OF A DISTRIBUTED REAL-TIME FAULT-TOLERANCE WEB MONITORING SYSTEM Albert M. K. Cheng, Shaohong Fang Department of Computer Science University of Houston Houston, TX, 77204, USA http://www.cs.uh.edu

More information

Efficient Parallel Processing on Public Cloud Servers Using Load Balancing

Efficient Parallel Processing on Public Cloud Servers Using Load Balancing Efficient Parallel Processing on Public Cloud Servers Using Load Balancing Valluripalli Srinath 1, Sudheer Shetty 2 1 M.Tech IV Sem CSE, Sahyadri College of Engineering & Management, Mangalore. 2 Asso.

More information

A Review of Customized Dynamic Load Balancing for a Network of Workstations

A Review of Customized Dynamic Load Balancing for a Network of Workstations A Review of Customized Dynamic Load Balancing for a Network of Workstations Taken from work done by: Mohammed Javeed Zaki, Wei Li, Srinivasan Parthasarathy Computer Science Department, University of Rochester

More information

Network Infrastructure Services CS848 Project

Network Infrastructure Services CS848 Project Quality of Service Guarantees for Cloud Services CS848 Project presentation by Alexey Karyakin David R. Cheriton School of Computer Science University of Waterloo March 2010 Outline 1. Performance of cloud

More information

CPU SCHEDULING (CONT D) NESTED SCHEDULING FUNCTIONS

CPU SCHEDULING (CONT D) NESTED SCHEDULING FUNCTIONS CPU SCHEDULING CPU SCHEDULING (CONT D) Aims to assign processes to be executed by the CPU in a way that meets system objectives such as response time, throughput, and processor efficiency Broken down into

More information

1. Simulation of load balancing in a cloud computing environment using OMNET

1. Simulation of load balancing in a cloud computing environment using OMNET Cloud Computing Cloud computing is a rapidly growing technology that allows users to share computer resources according to their need. It is expected that cloud computing will generate close to 13.8 million

More information

SAN Conceptual and Design Basics

SAN Conceptual and Design Basics TECHNICAL NOTE VMware Infrastructure 3 SAN Conceptual and Design Basics VMware ESX Server can be used in conjunction with a SAN (storage area network), a specialized high speed network that connects computer

More information

HIGH PRECISION AUTOMATIC SCHEDULING OF TASK SETS FOR MICROCONTROLLERS. Benjamin Ness. Thesis. Submitted to the Faculty of the

HIGH PRECISION AUTOMATIC SCHEDULING OF TASK SETS FOR MICROCONTROLLERS. Benjamin Ness. Thesis. Submitted to the Faculty of the HIGH PRECISION AUTOMATIC SCHEDULING OF TASK SETS FOR MICROCONTROLLERS By Benjamin Ness Thesis Submitted to the Faculty of the Graduate School of Vanderbilt University In partial fulfillment of the requirements

More information

Multimedia Caching Strategies for Heterogeneous Application and Server Environments

Multimedia Caching Strategies for Heterogeneous Application and Server Environments Multimedia Tools and Applications 4, 279 312 (1997) c 1997 Kluwer Academic Publishers. Manufactured in The Netherlands. Multimedia Caching Strategies for Heterogeneous Application and Server Environments

More information

Fair Scheduling Algorithm with Dynamic Load Balancing Using In Grid Computing

Fair Scheduling Algorithm with Dynamic Load Balancing Using In Grid Computing Research Inventy: International Journal Of Engineering And Science Vol.2, Issue 10 (April 2013), Pp 53-57 Issn(e): 2278-4721, Issn(p):2319-6483, Www.Researchinventy.Com Fair Scheduling Algorithm with Dynamic

More information

Online Scheduling for Cloud Computing and Different Service Levels

Online Scheduling for Cloud Computing and Different Service Levels 2012 IEEE 201226th IEEE International 26th International Parallel Parallel and Distributed and Distributed Processing Processing Symposium Symposium Workshops Workshops & PhD Forum Online Scheduling for

More information

Load Balancing on a Non-dedicated Heterogeneous Network of Workstations

Load Balancing on a Non-dedicated Heterogeneous Network of Workstations Load Balancing on a Non-dedicated Heterogeneous Network of Workstations Dr. Maurice Eggen Nathan Franklin Department of Computer Science Trinity University San Antonio, Texas 78212 Dr. Roger Eggen Department

More information

Parallel Ray Tracing using MPI: A Dynamic Load-balancing Approach

Parallel Ray Tracing using MPI: A Dynamic Load-balancing Approach Parallel Ray Tracing using MPI: A Dynamic Load-balancing Approach S. M. Ashraful Kadir 1 and Tazrian Khan 2 1 Scientific Computing, Royal Institute of Technology (KTH), Stockholm, Sweden smakadir@csc.kth.se,

More information

Removing Cell Demultiplexing Performance Bottleneck in ATM Pseudo Wire Emulation over MPLS Networks 1 Introduction

Removing Cell Demultiplexing Performance Bottleneck in ATM Pseudo Wire Emulation over MPLS Networks 1 Introduction 1 Removing Cell Demultiplexing Performance Bottleneck in ATM Pseudo Wire Emulation over MPLS Networks Puneet Konghot and Hao Che {pxk7783@omega.uta.edu, hche@cse.uta.edu} The Department of Computer Science

More information

Scheduling and Resource Management in Computational Mini-Grids

Scheduling and Resource Management in Computational Mini-Grids Scheduling and Resource Management in Computational Mini-Grids July 1, 2002 Project Description The concept of grid computing is becoming a more and more important one in the high performance computing

More information