time

package module
v0.0.0-...-3669962 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 26, 2017 License: MIT Imports: 1 Imported by: 1

README

Time Build Status

The package provides algorithms for scheduling applications running on multiprocessor platforms.

Documentation

Contributing

  1. Fork the project.
  2. Implement your idea.
  3. Open a pull request.

Documentation

Overview

Package time provides algorithms for scheduling applications running on multiprocessor platforms.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type List

type List struct {
	// contains filtered or unexported fields
}

List represents a list scheduler.

func NewList

func NewList(platform *system.Platform, application *system.Application) *List

NewList creates a new list scheduler for the given platform and application.

func (*List) Compute

func (self *List) Compute(priority []float64) *Schedule

Compute constructs a schedule according to the given priority vector. The length of this vector equals to the number of tasks in the system, and smaller values correspond to higher priorities.

func (*List) Delay

func (self *List) Delay(schedule *Schedule, delay []float64) *Schedule

Delay constructs a new schedule based on an old one by adding delays to the execution times of the tasks.

func (*List) Update

func (self *List) Update(schedule *Schedule, duration []float64) *Schedule

Update constructs a new schedule based on an old one by setting the execution times of the tasks to new values.

type Schedule

type Schedule struct {
	Cores uint
	Tasks uint
	Span  float64

	Mapping []uint
	Order   []uint
	Start   []float64
	Finish  []float64
}

Schedule represents a schedule of an application on a platform.

func (*Schedule) Duration

func (self *Schedule) Duration() []float64

Duration computes the difference between Finish and Start.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL