1,461 research outputs found
Next Generation Middleware Technology for Mobile Computing
Current advances in portable devices, wireless technologies, and distributed systems have created a mobile computing environment that is characterized by a large scale of dynamism. Diversities in network connectivity, platform capability, and resource availability can significantly affect the application performance. Traditional middleware systems are not prepared to offer proper support for addressing the dynamic aspects of mobile systems. Modern distributed applications need a middleware that is capable of adapting to environment changes and that supports the required level of quality of service. This paper represents the experience of several research projects related to next generation middleware systems. We first indicate the major challenges in mobile computing systems and try to identify the main requirements for mobile middleware systems. The different categories of mobile middleware technologies are reviewed and their strength and weakness are analyzed
Sensitivity Analysis for Multidisciplinary Systems (SAMS)
This report describes the research conducted under an interagency collaboration agreement between the Aerospace Systems Directorate of the Air Force Research Laboratory (AFRL/RQ) and the Computational AeroSciences Branch of NASA Langley (NASA LaRC). Both organizations have a long-term goal of developing a modular computational system for coupling fluids and structures to enable both analysis and optimization of aerospace vehicles. Ultimately, the system should support multiple solvers within the fluid and structure domains to allow the best combination for the task at hand, as well as to allow for institutional preferences of specific software components. Towards this goal, the current research was focused on enhancing the existing modal aeroelastic analysis in the NASA FUN3D (Fully-UNstructured three-dimensional CFD (Computational Fluid Dynamics) code) software (Biedron et al. 2018), as well as developing new aeroelastic analysis and optimization capabilities based on a non-linear finite-element method. The methods and enhancements described in this document pertain to FUN3D Version 13.4
Bring the BitCODE -- Moving Compute and Data in Distributed Heterogeneous Systems
In this paper, we present a framework for moving compute and data between
processing elements in a distributed heterogeneous system. The implementation
of the framework is based on the LLVM compiler toolchain combined with the UCX
communication framework. The framework can generate binary machine code or LLVM
bitcode for multiple CPU architectures and move the code to remote machines
while dynamically optimizing and linking the code on the target platform. The
remotely injected code can recursively propagate itself to other remote
machines or generate new code. The goal of this paper is threefold: (a) to
present an architecture and implementation of the framework that provides
essential infrastructure to program a new class of disaggregated systems
wherein heterogeneous programming elements such as compute nodes and data
processing units (DPUs) are distributed across the system, (b) to demonstrate
how the framework can be integrated with modern, high-level programming
languages such as Julia, and (c) to demonstrate and evaluate a new class of
eXtended Remote Direct Memory Access (X-RDMA) communication operations that are
enabled by this framework. To evaluate the capabilities of the framework, we
used a cluster with Fujitsu CPUs and heterogeneous cluster with Intel CPUs and
BlueField-2 DPUs interconnected using high-performance RDMA fabric. We
demonstrated an X-RDMA pointer chase application that outperforms an RDMA
GET-based implementation by 70% and is as fast as Active Messages, but does not
require function predeployment on remote platforms.Comment: 11 pages, 12 figures, to be published in IEEE CLUSTER 202
Supporting distributed computation over wide area gigabit networks
The advent of high bandwidth fibre optic links that may be used over very large distances
has lead to much research and development in the field of wide area gigabit networking. One
problem that needs to be addressed is how loosely coupled distributed systems may be built over
these links, allowing many computers worldwide to take part in complex calculations in order
to solve "Grand Challenge" problems. The research conducted as part of this PhD has looked
at the practicality of implementing a communication mechanism proposed by Craig Partridge
called Late-binding Remote Procedure Calls (LbRPC).
LbRPC is intended to export both code and data over the network to remote machines for
evaluation, as opposed to traditional RPC mechanisms that only send parameters to pre-existing
remote procedures. The ability to send code as well as data means that LbRPC requests can
overcome one of the biggest problems in Wide Area Distributed Computer Systems (WADCS):
the fixed latency due to the speed of light. As machines get faster, the fixed multi-millisecond
round trip delay equates to ever increasing numbers of CPU cycles. For a WADCS to be
efficient, programs should minimise the number of network transits they incur. By allowing the
application programmer to export arbitrary code to the remote machine, this may be achieved.
This research has looked at the feasibility of supporting secure exportation of arbitrary
code and data in heterogeneous, loosely coupled, distributed computing environments. It has
investigated techniques for making placement decisions for the code in cases where there are a
large number of widely dispersed remote servers that could be used. The latter has resulted in
the development of a novel prototype LbRPC using multicast IP for implicit placement and a
sequenced, multi-packet saturation multicast transport protocol. These prototypes show that
it is possible to export code and data to multiple remote hosts, thereby removing the need to
perform complex and error prone explicit process placement decisions
- …