Dear CHOOSE member
The Java User Group Switzerland would like to invite you to the next
talk given by Jesper Honig Spring,
EPFL:
3.6.09: Flexotasks: a restricted programming model facilitating the
construction of (hard) real-time tasks in Java.
For more information see below or
<http://www.jugs.ch/html/events/2009/flexotasks.html?by=mailing%20of%20another%20association>
(with online registration form).
Best Regards,
The JUGS Board
----------------------------------------------------------------
Flexotasks: a restricted programming model facilitating the
construction of (hard) real-time tasks in Java.
===========================================================
3.6.09
Technopark Zurich, Room Cobol
Travel instructions: <http://www.technopark.ch/start.cfm?p=90&s=0>
SPEAKER
-------
Jesper Honig Spring, EPFL
AGENDA
------
17:00 - 18:15h: Talk incl. Q/A and possibly demo
Afterwards you are invited to a refreshment.
ABSTRACT
--------
Achieving sub-millisecond response times in Java introduces significant
implementation challenges. The Achilles' heel is Java's reliance on
garbage collection (GC), which when used in commercial Java VMs
typically are designed to maximize the performance for predictability.
Consequently, GC introduces execution interference that can easily reach
hundreds of milliseconds. Another source of interference relates to the
integration of real-time tasks with a time-oblivious code. Typical
programming practices for sharing data between threads involve
synchronized access to shared data. In a real-time system this might
lead to unbounded blocking of the real-time thread, so-called priority
inversion, causing serious deadlines misses. Faced with these challenges
a system designer typically has two options: to deploy a real-time GC
(RTGC), or to restrict the programming model. Even though RTGCs achieve
much improved predictability over traditional stop-the-world garbage
collectors, some applications have temporal requirements beyond what is
possible with state-of-the-art RTGCs. Moreover, real-time garbage
collectors still face the problem of priority inversion.
In this talk I will present Flexotask, a simple, statically type-safe
restricted programming model facilitating the construction of
highly-responsive tasks in Java. Flexotask is designed to make it easy
to write and integrate simple periodic tasks or complex stream
processors, both observing real-time timing constraints in the
sub-millisecond range, into larger time-oblivious Java applications.
Flexotask tasks run in a part of memory free from garbage collection
interference, and can maintain a class-based separation between object
lifetimes, enabling reclamation of periodic garbage in constant time.
Tasks are organized in a graph and communicate through uni-directional,
non-blocking channels. Furthermore, Flexotask enable non-blocking
interaction between real-time tasks and time-oblivious code using
limited form of transactional memory. Flexotask specifies a set of
static safety checks preventing dangling pointers and preventing a
Flexotask task from observing heap-allocated objects in an inconsistent
state. These checks are enforced statically by an extension of the
standard Java compiler as well as during initialization to guarantee
correctness. Flexotask has been integrated into Eclipse and is available
in open-source from: <http://flexotask.sourceforge.net>.
Flexotask is the result of a research collaboration between EPFL, Purdue
University and IBM Research, and represents my Ph.D. work, completed in
Nov. 08. The talk should interest people curious about the emerging
real-time support in Java (the Real Time Specification For Java,
real-time garbage collection), as well as to those who are fascinated by
how (what to normal programmers are) small internal details become
non-trivial challenges when aiming for sub-millisecond response time in
a managed language.
Language: English
BIOGRAPHY
---------
Jesper Honig Spring completed his Ph.D. in CS in November 2008 from EPFL
on statically type-safe real-time programming abstractions for Java, a
collaboration with Purdue University and IBM Research (TJW). Before that
he worked 4 years in the industry, e.g., for Zurich-based startup,
Softwired, on a novel highly scalable clustered JMS message passing
server for which he holds a patent. His Master's Thesis concerned a
scalable, replicated tuplespace, which lead him to IBM Almaden Research
Center to lead the design for IBM's Enterprise TSpaces. He has several
years of industrial experience from working on projects for various
companies in Denmark. See more <http://lpd.epfl.ch/jhspring>.
CATEGORIES
----------
Research, Technology, Lessons learned, Tools
Please register online:
<http://www.jugs.ch/html/events/2009/flexotasks.html?by=mailing%20of%20another%20association#Formular>.
Thanks.
--
----------------------------------------------------------------
Java User Group Switzerland <mailto:info@jugs.ch>
Postfach 2322, 8033 Zuerich WWW: <http://www.jugs.ch>
----------------------------------------------------------------