Open Access. Powered by Scholars. Published by Universities.®

Physical Sciences and Mathematics Commons

Open Access. Powered by Scholars. Published by Universities.®

Articles 1 - 22 of 22

Full-Text Articles in Physical Sciences and Mathematics

A Model-Driven Approach To Job/Task Composition In Cluster Computing, Yogesh Kanitkar, Konstantin Läufer, Neeraj Mehta, George K. Thiruvathukal Nov 2011

A Model-Driven Approach To Job/Task Composition In Cluster Computing, Yogesh Kanitkar, Konstantin Läufer, Neeraj Mehta, George K. Thiruvathukal

George K. Thiruvathukal

In the general area of high-performance computing, object-oriented methods have gone largely unnoticed. In contrast, the Computational Neighborhood (CN), a framework for parallel and distributed computing with a focus on cluster computing, was designed from ground up to be object-oriented. This paper describes how we have successfully used UML in the following model-driven, generative approach to job/task composition in CN. We model CN jobs using activity diagrams in any modeling tool with support for XMI, an XML-based external representation of UML models. We then export the activity diagrams and use our XSLT-based tool to transform the resulting XMI representation to …


A Novel Application Development Environment For Large-Scale Scientific Computations, Alok Choudhary, Mahmut Kandemir, Wei-Keng Liao, G Memik, S More, X Shen, A Singh, George K. Thiruvathukal Nov 2011

A Novel Application Development Environment For Large-Scale Scientific Computations, Alok Choudhary, Mahmut Kandemir, Wei-Keng Liao, G Memik, S More, X Shen, A Singh, George K. Thiruvathukal

George K. Thiruvathukal

A paper describing a novel application development environment for working with large-scale scientific data sets.


A Simulation Of Demand-Driven Dataflow: Translation From Lucid Into Mdc Language, George K. Thiruvathukal, Thomas W. Christopher Nov 2011

A Simulation Of Demand-Driven Dataflow: Translation From Lucid Into Mdc Language, George K. Thiruvathukal, Thomas W. Christopher

George K. Thiruvathukal

Message Driven Computation (MDC) is a model of computation with which they have been experimenting at the Illinois Institute of Technology. The authors aim to prove the viability of MDC in practice for the expression of parallel algorithms and the implementation of functional and dataflow programming languages. In the paper they discuss their implementation of the Lucid programming language in MDC. The discussion presents a subset of Lucid which illustrates the principles of Lucid, Message Driven Computing, and the translation into and the interpretation of dataflow graphs.


Restfs: The Filesystem As A Connector Abstraction For Flexible Resource And Service Composition, Joseph P. Kaylor, Konstantin Läufer, George K. Thiruvathukal Nov 2011

Restfs: The Filesystem As A Connector Abstraction For Flexible Resource And Service Composition, Joseph P. Kaylor, Konstantin Läufer, George K. Thiruvathukal

George K. Thiruvathukal

The broader context for this chapter comprises business scenarios requiring resource and/or service composition, such as (intra-company) enterprise application integration (EAI) and (inter-company) web service orchestration. The resources and services involved vary widely in terms of the protocols they support, which typically fall into remote procedure call (RPC)~\citeBirrell84implementingremote, resource-oriented (HTTP~\citeFielding96hypertexttransfer and WEBDAV~\citewebdav) and message-oriented protocols. By recognizing the similarity between web-based resources and the kind of resources exposed in the form of filesystems in operating systems, we have found it feasible to map the former to the latter using a uniform, configurable connector layer. Once a remote resource has been …


Toward Scalable Parallel Software: An Active Object Model And Library To Support Von Neumann Languages, George K. Thiruvathukal Nov 2011

Toward Scalable Parallel Software: An Active Object Model And Library To Support Von Neumann Languages, George K. Thiruvathukal

George K. Thiruvathukal

Scalable parallel processing has been proposed as the technology scientists and engineers can use today to solve the problems of tomorrow. Many computational Grand Challenge problems require between two and three orders of magnitude than can be provided with the scalable parallel hardware of the early nineteen-nineties. While hardware continues to become more scalable and cheaper, software is not advancing at the same pace and remains a very expensive part of systems development. A great deal of emphasis on software technology to support scalable parallel processing is placed on von Neumann languages. One of two approaches is common: (a) augment …


A Java Graphical User Interface For Large-Scale Scientific Computations In Distributed Systems, X Shen, George K. Thiruvathukal, Wei-Keng Liao, Alok Choudhary, A Singh Nov 2011

A Java Graphical User Interface For Large-Scale Scientific Computations In Distributed Systems, X Shen, George K. Thiruvathukal, Wei-Keng Liao, Alok Choudhary, A Singh

George K. Thiruvathukal

Large-scale scientific applications present great challenges to computational scientists in terms of obtaining high performance and in managing large datasets. These applications (most of which are simulations) may employ multiple techniques and resources in a heterogeneously distributed environment. Effective working in such an environment is crucial for modern large-scale simulations. In this paper, we present an integrated Java graphical user interface (IJ-GUI) that provides a control platform for managing complex programs and their large datasets easily. As far as performance is concerned, we present and evaluate our initial implementation of two optimization schemes: data replication and data prediction. Data replication …


Wide-Area Implementation Of The Message Passing Interface, Ian Foster, Jonathan Geisler, William Gropp, Nicholas Karonis, Ewing Lusk, George K. Thiruvathukal, Steven Tuecke Nov 2011

Wide-Area Implementation Of The Message Passing Interface, Ian Foster, Jonathan Geisler, William Gropp, Nicholas Karonis, Ewing Lusk, George K. Thiruvathukal, Steven Tuecke

George K. Thiruvathukal

The Message Passing Interface (MPI) can be used as a portable, high-performance programming model for wide-area computing systems. The wide-area environment introduces challenging problems for the MPI implementor, due to the heterogeneity of both the underlying physical infrastructure and the software environment at different sites. In this article, we describe an MPI implementation that incorporates solutions to these problems. This implementation has beenconstructed by extending the Argonne MPICH implementation of MPI to use communicationservices provided by the Nexus communication library and authentication, resource allocation, process creation/management, and information services provided by the I-Soft system (initially) and the Globus metacomputing toolkit …


Combining Soa And Bpm Technologies For Cross-System Process Automation, Sebastian Herr, John Shafaee, Konstantin Läufer, George K. Thiruvathukal, Guido Wirtz Nov 2011

Combining Soa And Bpm Technologies For Cross-System Process Automation, Sebastian Herr, John Shafaee, Konstantin Läufer, George K. Thiruvathukal, Guido Wirtz

George K. Thiruvathukal

This paper summarizes the results of an industry case study that introduced a cross-system business process automation solution based on a combination of SOA and BPM standard technologies (i.e., BPMN, BPEL, WSDL). Besides discussing major weaknesses of the existing, custom-built, solution and comparing them against experiences with the developed prototype, the paper presents a course of action for transforming the current solution into the proposed solution. This includes a general approach, consisting of four distinct steps, as well as specific action items that are to be performed for every step. The discussion also covers language and tool support and challenges …


Distributed Memo: A Heterogeneously Distributed And Parallel Software Development Environment, William T. O'Connell, George K. Thiruvathukal, Thomas W. Christopher Nov 2011

Distributed Memo: A Heterogeneously Distributed And Parallel Software Development Environment, William T. O'Connell, George K. Thiruvathukal, Thomas W. Christopher

George K. Thiruvathukal

Heterogeneously distributed and parallel computing environments are highly dependent on hardware, data migration, and protocols. The result is significant difficulty in software reuse, portability across platforms, and an increased overall development effort. The appearance of a shared directory of unordered queues can be provided by integrating heterogeneous computers transparently. This integration provides a conducive environment for parallel and distributed application development, by abstracting the issues of hardware and communication. Object oriented technology is exploited to provide this seamless environment.


Rest On Routers? Preliminary Lessons For Language Designers, Framework Architects, And App Developers, Joseph P. Kaylor, Konstantin Läufer, George K. Thiruvathukal Nov 2011

Rest On Routers? Preliminary Lessons For Language Designers, Framework Architects, And App Developers, Joseph P. Kaylor, Konstantin Läufer, George K. Thiruvathukal

George K. Thiruvathukal

In this position paper, we provide a preliminary assessment of hardware and software solution stack choices available to developers of resource-oriented web services on commodity embedded devices. As part of an ongoing interdisciplinary research project on air and water quality in a major urban ecosystem, we are developing an information infrastructure amounting to a role-based hierarchy of individually addressable, interconnected resources, ranging from sensors, analyzers, and other monitoring devices to aggregators and publishers. This infrastructure follows the Representational State Transfer (REST) architectural pattern and integrates non-networked or non-RESTful monitoring devices through RESTful proxy resources running on low-cost, low-energy, possibly wireless, …


Online Layered File System (Olfs): A Layered And Versioned Filesystem And Performance Analysis, Joseph P. Kaylor, Konstantin Läufer, George K. Thiruvathukal Nov 2011

Online Layered File System (Olfs): A Layered And Versioned Filesystem And Performance Analysis, Joseph P. Kaylor, Konstantin Läufer, George K. Thiruvathukal

George K. Thiruvathukal

We present a novel form of intra-volume directory layering with hierarchical, inheritance-like namespace unification. While each layer of an OLFS volume constitutes a subvolume that can be mounted separately in a fan-in configuration, the entire hierarchy is always accessible (online) and fully navigable through any mounted layer. OLFS uses a relational database to store its layering metadata and either a relational database or any (virtual) host file system as its backing store, along with metadata and block caching for improved performance. Because OLFS runs as a virtual file system in user-space, its capabilities are available to all existing software without …


A Computational Framework For Telemedicine, Ian Foster, Gregor Von Laszewski, Brian Toonen, George K. Thiruvathukal Nov 2011

A Computational Framework For Telemedicine, Ian Foster, Gregor Von Laszewski, Brian Toonen, George K. Thiruvathukal

George K. Thiruvathukal

Emerging telemedicine applications require the ability to exploit diverse, geographically distributed resources. These applications use high-speed neworks to integrate supercomputers, large databases, archival storage devices, advanced visualization devices, and/or sophisticated instruments. This form of networked virtual supercomputers is also known as metacomputers and is being used by many other scientific applications areas. In this article, we analyze requirements necessary for a telemedicine computing infrastructure and compare them with requirements found in a typical metacomputing environment. We will show that metacomputing environments can be used to enable a more powerful and unified computational infrastructure for telemedicine. The Globus metacomputing environment can …


A Generic Software Modeling Framework For Building Heterogeneous Distributed And Parallel Software Systems, William T. O'Connell, George K. Thiruvathukal, Thomas W. Christopher Nov 2011

A Generic Software Modeling Framework For Building Heterogeneous Distributed And Parallel Software Systems, William T. O'Connell, George K. Thiruvathukal, Thomas W. Christopher

George K. Thiruvathukal

Heterogeneous distributed and parallel computing environments are highly dependent on hardware and communication protocols. The result is significant difficulty in software reuse, portability across platforms, interoperability, and an increased overall development effort. A new systems engineering approach is needed for parallel processing systems in heterogeneous environments. The generic modeling framework de-emphasizes platform- specific development while exploiting software reuse (and platform-specific capabilities) with a simple, well defined, and easily integrated set of abstractions providing a high level of heterogeneous interoperability.


Distributed-Memo: Heterogeneously Concurrent Programming With A Shared Directory Of Unordered Queues, William T. O'Connell, George K. Thiruvathukal, Thomas W. Christopher Nov 2011

Distributed-Memo: Heterogeneously Concurrent Programming With A Shared Directory Of Unordered Queues, William T. O'Connell, George K. Thiruvathukal, Thomas W. Christopher

George K. Thiruvathukal

Heterogeneously distributed and parallel computing environments are highly dependent on hardware, data migration, and protocols. The result is significant difficulty in software reuse, portability across platforms, and an increased overall development effort. The appearance of a shared directory of unordered queues can be provided by integrating heterogeneous computers transparently. This integration provides a conducive environment for parallel and distributed application development, by abstracting the issues of hardware and communication. Object oriented technology is exploited to provide this seamless environment.


The Hydra Filesystem: A Distrbuted Storage Famework, Benjamin Gonzalez, George K. Thiruvathukal Nov 2011

The Hydra Filesystem: A Distrbuted Storage Famework, Benjamin Gonzalez, George K. Thiruvathukal

George K. Thiruvathukal

Hydra File System (HFS) is an experimental framework for constructing parallel and distributed filesystems. While parallel and distributed applications requiring scalable and flexible access to storage and retrieval are becoming more commonplace, parallel and distributed filesystems remain difficult to deploy easily and configure for different needs. HFS aims to be different by being true to the tradition of high-performance computing while employing modern design patterns to allow various policies to be configured on a per instance basis (e.g. storage, communication, security, and indexing schemes). We describe a working prototype (available for public download) that has been implemented in the Python …


High-Performance Java Platform Computing, Thomas W. Christopher, George K. Thiruvathukal Nov 2011

High-Performance Java Platform Computing, Thomas W. Christopher, George K. Thiruvathukal

George K. Thiruvathukal

Threading and concurrency are crucial to building high-performance Java applications -- but they have a reputation for complexity. High Performance Java Computing thoroughly demystifies these advanced development techniques. It delivers practical programming solutions, proven design patterns, and a rigorously-tested code library -- everything developers need to build optimized Java software for technical, business, and E-commerce applications. Start by understanding how threading and concurrency can be used to solve a wide variety of performance problems, enabling the construction of more powerful networked applications. Master the Java 2 Threads classes, including daemon threads, thread control, scheduling, and more. Review the key problems …


Reflective Remote Method Invocation, George K. Thiruvathukal, Lovely S. Thomas, Andy T. Korczynski Nov 2011

Reflective Remote Method Invocation, George K. Thiruvathukal, Lovely S. Thomas, Andy T. Korczynski

George K. Thiruvathukal

Remote Method Invocation (RMI) is available in the current Java language design and implementation, providing the much-needed capability of allowing objects running in different Java processes to collaborate using a variation on the popular Remote Procedure Call (RPC). Although RMI provides features which are desirable for high-performance distributed computing, its design and implementation are deficient in key areas of importance to the high-performance computing community in general. This paper addresses the key deficiencies of RMI and how these deficiencies affect the design and implementation of distributed object applications. Reflective RMI (RRMI) is an open RMI implementation which makes better use …


Scalable Approaches For Supporting Mpi-Io Atomicity, Peter Aarestad, George K. Thiruvathukal, Avery Ching, Alok Choudhary Nov 2011

Scalable Approaches For Supporting Mpi-Io Atomicity, Peter Aarestad, George K. Thiruvathukal, Avery Ching, Alok Choudhary

George K. Thiruvathukal

Scalable atomic and parallel access to noncontiguous regions of a file is essential to exploit high performance I/O as required by large-scale applications. Parallel I/O frameworks such as MPI I/O conceptually allow I/O to be defined on regions of a file using derived datatypes. Access to regions of a file can be automatically computed on a perprocessor basis using the datatype, resulting in a list of (offset, length) pairs. We describe three approaches for implementing lock serving (whole file, region locking, and byterange locking) and compare the various approaches using three noncontiguous I/O benchmarks. We present the details of the …


Technologies For Ubiquitous Supercomputing: A Java Interface To The Nexus Communication System, Ian Foster, George K. Thiruvathukal, Steven Tuecke Nov 2011

Technologies For Ubiquitous Supercomputing: A Java Interface To The Nexus Communication System, Ian Foster, George K. Thiruvathukal, Steven Tuecke

George K. Thiruvathukal

We use the term ubiquitous supercomputing to refer to systems that integrate low- and mid-range computing systems, advanced networks and remote high-end computers with the goal of enhancing the computational power accessible from local environments. Such systems promise to enable new applications in areas as diverse as smart instruments and collaborative environments. However, they also demand tools for transporting code between computers and for establishing flexible, dynamic communication structures. In this article, we propose that these requirements be satisfied by introducing Java classes that implement the global pointer and remote service request mechanisms defined by a communication library called Nexus. …


Scalable Implementations Of Mpi Atomicity For Concurrent Overlapping I/O, Wei-Keng Liao, Alok Choudhary, Kenin Coloma, George K. Thiruvathukal, Lee Ward, Eric Russell, Neil Pundit Nov 2011

Scalable Implementations Of Mpi Atomicity For Concurrent Overlapping I/O, Wei-Keng Liao, Alok Choudhary, Kenin Coloma, George K. Thiruvathukal, Lee Ward, Eric Russell, Neil Pundit

George K. Thiruvathukal

For concurrent I/O operations, atomicity defines the results in the overlapping file regions simultaneously read/written by requesting processes. Atomicity has been well studied at the file system level, such as POSIX standard. In this paper, we investigate the problems arising from the implementation of MPI atomicity for concurrent overlapping write access and provide a few programming solutions. Since the MPI definition of atomicity differs from the POSIX one, an implementation that simply relies on the POSIX file systems does not guarantee correct MPI semantics. To have a correct implementation of atomic I/O in MPI, we examine the efficiency of three …


Java Grande Forum Report: Making Java Work For High-End Computing, George K. Thiruvathukal Nov 2011

Java Grande Forum Report: Making Java Work For High-End Computing, George K. Thiruvathukal

George K. Thiruvathukal

This document describes the Java Grande Forum and includes its initial deliverables.Theseare reports that convey a succinct set of recommendations from this forum to SunMicrosystems and other purveyors of Java™ technology that will enable GrandeApplications to be developed with the Java programming language.


Restfs: Resources And Services Are Filesystems, Too, Joseph P. Kaylor, Konstantin Läufer, George K. Thiruvathukal Nov 2011

Restfs: Resources And Services Are Filesystems, Too, Joseph P. Kaylor, Konstantin Läufer, George K. Thiruvathukal

George K. Thiruvathukal

We have designed and implemented RestFS, a software frame-work that provides a uniform, configurable connector layerfor mapping remote web-based resources to local filesystem-based resources, recognizing the similarity between thesetwo types of resources. Such mappings enable programmaticaccess to a resource, as well as composition of two or moreresources, through the local operating system’s standardfilesystem application programming interface (API), script-able file-based command-line utilities, and inter-process com-munication (IPC) mechanisms. The framework supports au-tomatic and manual authentication. We include several ex-amples intended to show the utility and practicality of ourframework.