In this paper, we present an efficient and practical algorithm for inferring static types for local variables in a 3-address, stackless, representation of java bytecode. By decoupling the type inference problem from t...
详细信息
Current work on persistency in java does not consider the execution environment of the threads and this is one of the reasons why persistence has not been addressed by the java high-performance community. Equipping hi...
详细信息
ISBN:
(纸本)1581132883
Current work on persistency in java does not consider the execution environment of the threads and this is one of the reasons why persistence has not been addressed by the java high-performance community. Equipping high-performance computing systems with checkpointing and recovery mechanisms allows to minimise work loss in presence of failure. This paper discusses concepts for checkpointing and recovery of running java virtual machines (JVM). Checkpointing a JVM is to capture the execution state of the JVM and to make this state persistent. In order to recover the checkpointed execution state, it is necessary to reproduce the execution state and to resume the JVM. In other words checkpointing and recovery allows the reconstruction of a JVM at any arbitrary execution state. The checkpointing and recovery concepts have been prototypically implemented. The prototype provides generic mechanisms for extracting an execution state from a running JVM and for initialising a JVM with a persitent execution state. These mechanisms can be used for a wide range of applications. Our prototype also uses these mechanisms for JVM migration (relocation of a running JVM from one computer to another computer).
The transfer of medical data within heterogeneous hard-and software infrastructures requires platform-independent standardized protocols and data formats such as DICOM. To avoid costly vendor-specific solutions a DICO...
详细信息
ISBN:
(纸本)1586030639
The transfer of medical data within heterogeneous hard-and software infrastructures requires platform-independent standardized protocols and data formats such as DICOM. To avoid costly vendor-specific solutions a DICOM server was implemented in java thereby enabling the data access via internet browser technology. The most important patient and image acquisition information were extracted from the DICOM images and stored into a relational database. For an integrated view patient information such as radiological findings were transferred from the Radiological Information System (RIS) into the data base. Image data were accessed either by a fast preview tool or using a DICOM viewer. Since DICOM does not include inherent data security mechanisms, a second tool allowed the DICOM-conform encryption of DCIOM data for a secure long term storage on CD-R or across unsecure networks.
The slow execution speed and huge memory consumption caused by the current execution model of java have been major hindrances to its development. In this paper, we propose the compiling execution model of java and cre...
详细信息
java is quickly becoming the preferred language for writing distributed applications because of its inherent support for programming on distributed platforms. In particular, java provides compile-time and run-time sec...
详细信息
ISBN:
(纸本)1581132883
java is quickly becoming the preferred language for writing distributed applications because of its inherent support for programming on distributed platforms. In particular, java provides compile-time and run-time security, automatic garbage collection, inherent support for multithreading, support for persistent objects and object migration, and portability. Given these significant advantages of java, there is a growing interest in using java for high-performance computing applications. To be successful in the high-performance computing domain, however, java must have the capability to efficiently handle the significant I/O requirements commonly found in high-performance computing applications. While there has been significant research in high-performance I/O using languages such as C, C++, and Fortran, there has been relatively little research into the I/O capabilities of java. In this paper, we evaluate the I/O capabilities of java for high-performance computing. We examine several approaches that attempt to provide high-performance I/O - many of which are not obvious at first glance - and investigate their performance in both parallel and multithreaded environments. We also provide suggestions for expanding the I/O capabilities of java to better support the needs of high-performance computing applications.
java is an attractive environment for writing portable message passing parallel programs. Considerable work in message passing interface bindings for the C and Fortran languages has been done. We show how this work ca...
详细信息
ISBN:
(纸本)1581132883
java is an attractive environment for writing portable message passing parallel programs. Considerable work in message passing interface bindings for the C and Fortran languages has been done. We show how this work can be reused and bindings for java developed. We have built a Pure java Message Passing Implementation (PJMPI) that is strongly compatible with the MPI standard. Conversely, the imperative programming style bindings are not entirely appropriate for the javaprogramming style and we have therefore also developed a less compatible system, known as JUMP, that enables many of the message passing parallel technological ideas but in a way that we believe will be more appropriate to the style of java programs. JUMP is also intended as a development platform for many of our higher level ideas in parallel programming and parallel paradigms that MPI enables but does not directly implement. We review ongoing attempts at resolving this present crisis in reconciling java and MPI. We have looked at some of the more advanced java technologies, specifically Jini and javaSpaces, which may contribute to java message passing, but have found the performance of these to be somewhat deficient at the time of writing. We have therefore designed JUMP to be independent of Jini and javaSpaces at present although use of these technologies may be strongly desirable. We describe the ClassLoading problem and other techniques we have employed in JUMP to enable a pure java message passing system suitable for use on local and remote clusters amongst other parallel computing platforms.
The paper presents an application specific java processor including reconfigurabilities, which is a DLX like pipeline processor with 5 stages and executes java byte codes directly. Reconfigurabilities are the key tech...
详细信息
Gypsy is a component-based, dynamically extensible environment for mobile agent systems. The runtime environment consists of lightweight servers that provide a distributed execution environment for agents, and a remot...
详细信息
Modern software must evolve in response to changing condi- tions. In the most widely used programming environments, code is static and cannot change at runtime. This poses problems for applications that have limited d...
详细信息
Although java promises platform portability amongst diverses et of systems, for most java platforms today, it is not clear if they are appropriate for high-performance numerical computing. In fact, most previous attem...
详细信息
ISBN:
(纸本)1581132883
Although java promises platform portability amongst diverses et of systems, for most java platforms today, it is not clear if they are appropriate for high-performance numerical computing. In fact, most previous attempts at utilizing java for HPC sacrificed java's portability, or did not achieve necessary performance required for HPC. Instead, we propose an alternative methodology based on Downloadale Self-tuning Library, and constructed an experimental prototype called AJaPACK, which is a portable and high-performance parallel BLAS library for java which "tunes" itself to the environment to which it is installed upon. Once AJaPACK is downloaded and executed, the java version of ATLAS (ATLAS for java) and the parallelized version of JLAPACK combine to achieve optimized pure java execution for the given environment. Benchmarks have shown that AJaPACK achieves approximately 1/2 to 1/5 of the speed of optimized C-ATLAS and vendor supplied BLAS libraries, and with portable parallelization in SMP environments, achieves superior performance to single-threaded C-based native libraries. This is an order of magnitude superior w.r.t. performance compared to previous pure java BLAS libraries, and opens up further possibilities of employing java in HPC settings, but still shows that JIT compilers with optimizations expecting numerical code highly-tuned at the source- or bytecode level would be highly desirable.
暂无评论