Sign up & Download
Sign in

Hybrid Scheduling in the DeVIDE Dataflow Visualisation Environment

by Charl P Botha, Frits H Post
Proceedings of Simulation and Visualization (2008)

Cite this document (BETA)

Available from citeseerx.ist.psu.edu
Page 1
hidden

Hybrid Scheduling in the DeVIDE Dataflow Visualisation Environment

Hybrid Scheduling in the DeVIDE
Dataflow Visualisation Environment
Charl P. Botha and Frits H. Post
Data Visualisation∗†
Delft University of Technology
Abstract
Dataflow application builders such as AVS, OpenDX and MeVisLab are popular and
effective tools for the rapid prototyping of visualisation algorithms. They enable re-
searchers to build applications by graphically connecting functional modules together
to form a network. A usually hidden yet important aspect of these tools is the schedul-
ing of network execution: Most of these environments can be classified as employ-
ing event-driven or demand-driven scheduling. The scheduling strategy has important
implications for the component developer. In this paper, we present our recently open-
sourced dataflow application builder, called DeVIDE, for the rapid prototyping of med-
ical visualisation and image processing techniques. Apart from the unique interaction
possibilities and ease of integration that it offers, DeVIDE differentiates itself from
similar environments by implementing a hybrid scheduling approach that adaptively
applies demand- and event-driven scheduling to a single network. In this way, ease of
component development and execution efficiency can be combined.
1 Introduction
A software platform that enables the rapid prototyping of new algorithms is an important
component in the research and development of medical visualisation and image process-
ing techniques. Applications where functional networks can be constructed graphically,
enabling visual programming, are a popular and effective solution. AVS [UFK+89] and
DX [AT95] are early examples of this type of application, which we will henceforth refer
to as data-flow application builders. MeVisLab is a more recent example that focuses on
medical visualisation and image processing.
An important aspect of data-flow application builders is the scheduling of the functional
modules in the constructed network. The constructed network topology implies certain
data-dependencies and hence a specific execution sequence. If the output of module A is
connected to the input of module B, module A has to be executed, its output data has to be
passed to module B, and then module B has to be executed.
There are two major scheduling models: event-driven and demand-driven. In the former,
an explicit scheduling is performed where the complete network is analysed and modules
∗http://visualisation.tudelft.nl/
†This work was partly supported by the Virtual Laboratory for e-Science project (http://www.vl-e.nl/).
Page 2
hidden
are centrally executed in the correct sequence. In the latter model, when data is requested
at the output of any given module, that module requests data from its input module, which
requests data from its input module and so forth.
Demand-driven execution makes efficient streamed execution relatively straight-forward. If
a sub-block of data is requested at module B’s output, module B need only request the data
from module A that it needs to generate that specific sub-block. In addition, only the parts
of the network that need to be executed to generate a specific block of data are executed
without the need for an explicit network analysis. However, the component developer has
to go to more trouble to implement a well-behaved module. During event-driven execution,
an explicit analysis of the network can be performed in order to determine which parts
need to be executed, but generally speaking, complete datasets are passed from module to
module. This is less efficient, but has the important advantage that module implementations
are far simpler, thus easing the burden of the component developer. Existing data-flow
application builders choose either one of these scheduling models. MeVisLab uses demand-
driven execution, AVS uses event-driven.
In this paper we present a newly open-sourced data-flow application builder called DeV-
IDE, or the Delft Visualisation and Image processing Development Environment. DeVIDE
is a turn-key cross-platform application for medical visualisation and image processing that
differentiates itself from similar applications in the following ways:
• Integrating new functionality is easier than with most other platforms of this kind.
• Pervasive interaction possibilities are offered: any object or variable in the system
can be interacted with and modified by the user at run-time, via the graphical user
interface and also via program code that can be inserted at any point.
• We have combined event-driven and demand-driven scheduling in a hybrid schedul-
ing approach that adaptively offers the efficiency and scalability of demand-driven
execution and the programming simplicity of event-driven execution.
The main technical contribution of this paper is the hybrid scheduling approach and its
implementation. The freely available DeVIDE platform is an ancillary contribution and
will also be extensively discussed. This paper serves as the companion publication to the
open-source release of the software.
The rest of this paper is organised as follows: In section 2 we briefly discuss related work.
In section 3, we document DeVIDE’s functionality and architecture. We then detail the
scheduling approaches available in the software in section 4. Conclusions and future work
are discussed in section 5.
2 Related Work
A number of dataflow application builders, i.e. applications that enable the graphical con-
struction of functional networks, are available for prototyping visualisation and or image
processing algorithms. In this section, we discuss a small number of representative exam-
ples.
2

Sign up today - FREE

Mendeley saves you time finding and organizing research. Learn more

  • All your research in one place
  • Add and import papers easily
  • Access it anywhere, anytime

Start using Mendeley in seconds!

Already have an account? Sign in

Readership Statistics

9 Readers on Mendeley
by Discipline
 
 
 
by Academic Status
 
22% Ph.D. Student
 
22% Post Doc
 
11% Student (Bachelor)
by Country
 
78% Netherlands
 
11% Germany