Network


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

Hotspot


Dive into the research topics where Raymond Klefstad is active.

Publication


Featured researches published by Raymond Klefstad.


international symposium on object component service oriented real time distributed computing | 2002

Towards highly configurable real-time object request brokers

Raymond Klefstad; Douglas C. Schmidt; Carlos O'Ryan

This paper discusses the software architecture of a real-time CORBA object request broker (ORB), called ZEN, written in real-time Java, which is designed to eliminate common sources of overhead and non-determinism in ORB implementations. We illustrate how ZEN can be configured to select the minimal set of components used by an application. Our experience with ZEN indicates that combining real-time Java with real-time CORBA is a major step forward towards simplifying the development and maintenance of distributed middleware and applications with stringent quality of service requirements.


ieee intelligent transportation systems | 2005

A distributed, scalable, and synchronized framework for large-scale microscopic traffic simulation

Raymond Klefstad; Yue Zhang; Mingjie Lai; R. Jayakrishnan; Riju Lavanya

Microscopic traffic simulation is effective for analyzing transportation networks. However, performing microscopic simulations for large-scale networks remains a huge computing problem. In this paper, we present ParamGrid, a scalable and synchronized framework that distributes the simulation across a cluster of ordinary-performance, low-cost personal computers (PCs) connected by local area network (LAN). Several key challenges are solved: dividing a large traffic network, routing vehicles traveling across tiles, transferring vehicles across tiles, and globally synchronizing the simulation time to achieve a complete solution to automate scalable concurrent simulations. These solutions are automated in ParamGrid. Our experimental results, using a real-world traffic network for the Long Beach Area in Southern California, show our new framework provides near linear speed-up with number of computers.


acm ifip usenix international conference on middleware | 2005

RTZen: highly predictable, real-time java middleware for distributed and embedded systems

Krishna Raman; Yue Zhang; Mark Panahi; Juan A. Colmenares; Raymond Klefstad; Trevor Harmon

Distributed real-time and embedded (DRE) applications possess stringent quality of service (QoS) requirements, such as predictability, latency, and throughput constraints. Real-Time CORBA, an open middleware standard, allows DRE applications to allocate, schedule, and control resources to ensure predictable end-to-end QoS. The Real-Time Specification for Java (RTSJ) has been developed to provide extensions to Java so that it can be used for real-time systems, in order to bring Javas advantages, such as portability and ease of use, to real-time applications. In this paper, we describe RTZen, an implementation of a Real-Time CORBA Object Request Broker (ORB), designed to comply with the restrictions imposed by RTSJ. RTZen is designed to eliminate the unpredictability caused by garbage collection and improper support for thread scheduling through the use of appropriate data structures, threading models, and memory scopes. RTZens architecture is also designed to hide the complexities of RTSJ related to distributed programming from the application developer. Empirical results show that RTZen is highly predictable and has acceptable performance. RTZen therefore demonstrates that Real-Time CORBA middleware implemented in real-time Java can meet stringent QoS requirements of DRE applications, while supporting safer, easier, cheaper, and faster development in real-time Java.


Ai Magazine | 1997

Learning Probabilistic User Profiles: Applications for Finding Interesting Web Sites, Notifying Users of Relevant Changes to Web Pages, and Locating Grant Opportunities

Mark S. Ackerman; Daniel Billsus; Scott Gaffney; Seth Hettich; Gordon Khoo; Dong Joon Kim; Raymond Klefstad; Charles Lowe; Alexius Ludeman; Jack Muramatsu; Kazuo Omori; Michael J. Pazzani; Douglas Semler; Brian Starr; Paul Yap

This article describes three agents that help a user locate useful or interesting information on the World Wide Web. The agents learn a probabilistic profile to find, classify, or rank other sources of information that are likely to interest the user.


embedded and real-time computing systems and applications | 2007

Interactive Back-annotation of Worst-case Execution Time Analysis for Java Microprocessors

Trevor Harmon; Raymond Klefstad

As real-time systems become more prevalent, there is a need to guarantee that these increasingly complex systems perform as designed. One technique involves a static analysis to place an upper bound on worst-case execution time (WCET). Tools for conducting this analysis typically require the developer to digest assembly opcodes, hexadecimal addresses, and other low-level details in order to make sense of the results. Java-specific processors offer a way out of this complexity. Such processors make Java software more predictable, and as a consequence, timing analysis of a real-time system becomes less computationally intensive. WCET analysis tools based on these processors can thus offer more powerful features at higher levels of abstraction. As proof of this concept, we present a tool for static WCET analysis of Java processors. Our performance measurements show that this tool makes WCET analysis interactive, offering continuous feedback to the developer in the form of back-annotations.


acm ifip usenix international conference on middleware | 2007

Compadres: a lightweight component middleware framework for composing distributed real-time embedded systems with real-time Java

Jie Hu; Shruti Gorappa; Juan A. Colmenares; Raymond Klefstad

Component frameworks simplify development of enterprise systems and enable code reuse, but most frameworks are unpredictable and hence unsuitable for embedded or real-time systems. Similarly, Java is increasingly being used to build embedded system software because of its portability and ease of use. The Real-Time Specification for Java (RTSJ) reduces the unpredictability in Java execution times by eliminating the need for a garbage collector. However, it introduces programming complexity that makes it difficult to build non-trivial applications. To bring the advantages of Java component development to DRE systems, while simultaneously simplifying the use of RTSJ, therefore, we have developed a new lightweight component model for RTSJ called Compadres. Compadres offers the following advantages: 1) Simple component definition in Java that abstracts away RTSJ memory management complexity; 2) System assembly from components by connecting ports that communicate through strongly-typed objects; 3) The Compadres compiler that automatically generates the scoped memory architecture for components, while the component framework handles communication between the components. To validate this work, we construct a non-trivial example application using the component framework, a simple real-time CORBA implementation. We then analyze the performance and efficiency of our component example versus a non-component example, RTZen. Our measurements show that our Compadres example built with components incurs only minor time overhead as compared to a comparable hand-coded example.


embedded and real-time computing systems and applications | 2005

Patterns and tools for achieving predictability and performance with real time Java

Krishna Raman; Yue Zhang; Mark Panahi; Juan A. Colmenares; Raymond Klefstad

The real-time specification for Java (RTSJ) offers the predictable memory management needed for real-time applications, while maintaining Java s advantages of portability and ease of use. RTSJs scoped memory allows object lifetimes to be controlled in groups, rather than individually as in C++. While easier than individual object lifetime management, scoped memory adds programming complexity from strict rules governing memory access across scopes. Moreover, memory leaks can potentially create jitter and reduce performance. To manage the complexities of RTSJs scoped memory, we developed patterns and tools for RTZen, a real-time CORBA Object Request Broker (ORB). We describe four new patterns that enable communication and coordination across scope boundaries, an otherwise difficult task in RTSJ. We then present IsoLeak, a runtime debugging tool that visualizes the scoped hierarchies of complex applications and locates memory leaks. Our empirical results show that RTZen is highly predictable and has acceptable performance. RTZen therefore demonstrates that the use of patterns and tools like IsoLeak can help applications meet the stringent QoS requirements of DRE applications, while supporting safer, easier, cheaper and faster development in real-time Java.


international conference on distributed computing systems | 2004

Enhancing real-time CORBA via real-time Java features

Arvind S. Krishna; Douglas C. Schmidt; Raymond Klefstad

End-to-end middleware predictability is essential to support quality of service (QoS) capabilities needed by distributed real-time and embedded (DRE) applications. Real-time CORBA is a middleware standard that allows DRE applications to allocate, schedule, and control the QoS of CPU, memory, and networking resources. Existing real-time CORBA solutions are implemented in C++, which is generally more complicated and error-prone to program than Java. The real-time specification for Java (RTSJ) provides extensions that enable Java to be used for developing DRE systems. Real-time CORBA does not currently leverage key RTSJ features, such as scoped memory and real-time threads. Thus, integration of real-time CORBA and RTSJ is essential to ensure the predictability required for Java-based DRE applications. We provide the following contributions to the study of middleware for DRE applications. First we analyze the architecture of ZEN, our implementation of real-time CORBA, identifying sources for the application of RTSJ features. Second, we describe how RTSJ features, such as scoped memory and real-time threads, can be associated with key ORB components to enhance the predictability of DRE applications using realtime CORBA and the RTSJ. Third, we perform preliminary qualitative and quantitative analysis of predictability enhancements arising from our application of RTSJ features. Our results show that use of RTSJ features can considerably improve the predictability of DRE applications written using Real-time CORBA and real-time Java.


real time technology and applications symposium | 2003

Towards predictable real-time Java object request brokers

Arvind S. Krishna; Raymond Klefstad; Douglas C. Schmidt; Angelo Corsaro

Distributed real-time and embedded (DRE) applications often possess stringent quality of service (QoS) requirements. Designing middleware for DRE applications poses several challenges to object request broker (ORB) developers. This paper provides the following contributions to the study of middleware for DRE applications. First, we outline the challenges present in one of the principal ORB components - the portable object adapter (POA) focusing on predictable and scalable demultiplexing. Second, we describe how these challenges are addressed in ZEN, which is an implementation of Real-time CORBA that runs atop jRate, an ahead-of-time compiler that implements most of the Real-Time Specification for Java (RTSJ). Third, we qualitatively and quantitatively compare ZENs demultiplexing strategies with those of other popular Java ORBs, including JacORB, Sun JDK ORB, and ORBacus. Our results show that ZEN and jRate incorporate the strategies necessary to enable predictability using standards-based middleware and also provide a baseline for what can be achieved by combining Real-time CORBA and RTSJ.


IEEE Transactions on Industrial Informatics | 2012

Fast, Interactive Worst-Case Execution Time Analysis With Back-Annotation

Trevor Harmon; Martin Schoeberl; Raimund Kirner; Raymond Klefstad; Kwang-Hae (Kane) Kim; Michael R. Lowry

For hard real-time systems, static code analysis is needed to derive a safe bound on the worst-case execution time (WCET). Virtually all prior work has focused on the accuracy of WCET analysis without regard to the speed of analysis. The resulting algorithms are often too slow to be integrated into the development cycle, requiring WCET analysis to be postponed until a final verification phase. In this paper, we propose interactive WCET analysis as a new method to provide near-instantaneous WCET feedback to the developer during software programming. We show that interactive WCET analysis is feasible using tree-based WCET calculation. The feedback is realized with a plugin for the Java editor jEdit, where the WCET values are back-annotated to the Java source at the statement level. Comparison of this tree-based approach with the implicit path enumeration technique (IPET) shows that tree-based analysis scales better with respect to program size and gives similar WCET values.

Collaboration


Dive into the Raymond Klefstad's collaboration.

Top Co-Authors

Avatar

Trevor Harmon

University of California

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Jie Hu

University of California

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Shruti Gorappa

University of California

View shared research outputs
Top Co-Authors

Avatar

Mark Panahi

University of California

View shared research outputs
Top Co-Authors

Avatar

Krishna Raman

University of California

View shared research outputs
Top Co-Authors

Avatar

Yue Zhang

University of California

View shared research outputs
Top Co-Authors

Avatar

James E. Marca

University of California

View shared research outputs
Researchain Logo
Decentralizing Knowledge