Optimization of native buffer accesses in JAVA applications on hybrid systems

Inactive Publication Date: 2014-07-03
IBM CORP
View PDF13 Cites 4 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Benefits of technology

This patent describes a method for managing a buffer in a hybrid system that includes both native code and managed code. The method involves selecting a buffer management method from a list of options, capturing statistics about the buffer while running under the selected method, analyzing the statistics to identify a more optimal buffer management method, and invoking the more optimal method if it is available. The technical effect of this invention is an improved performance and efficiency of buffer management in hybrid systems.

Problems solved by technology

In a split JVM, the cost of the calls between Java and native code has much greater overhead and latency resulting in the need to reduce round-trips where possible.
In the case of a distributed JVM, however, the latency of making a cross-process / cross-machine call may be magnitudes of order greater than required to run the method called.
When a native buffer is accessed from both Java and native methods, accessing the buffer from remote machine will cause a network round-trip overhead.
This naïve allocation of direct byte buffers on the JNI-side (host-side) makes accesses expensive for some cases.
Excessive roundtrips for data make this approach non-usable for real applications in which slowdowns have been observed in excesses of 50 times.

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Optimization of native buffer accesses in JAVA applications on hybrid systems
  • Optimization of native buffer accesses in JAVA applications on hybrid systems
  • Optimization of native buffer accesses in JAVA applications on hybrid systems

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0019]A hybrid system in the present disclosure refers to a heterogeneous distributed system that contains both general and special-purpose computing platforms. One example is the IBM®zEnterprise system, from International Business Machines Corporation, Armonk, N.Y., which includes system Z, X86 and Power7 blades. Since hybrid systems could serve as a flexible platform for optimizing workload in terms of performance / price ratio, more and more applications could benefit from running in hybrid systems.

[0020]A methodology of the present disclosure in one embodiment enables dynamic transfer of native buffers between machines so that both sides can get native-speed access to buffers with minimized round-trips. In one aspect, a fast access to native buffers shared between separate nodes may be achieved by enabling transfer of native buffers between nodes or machines on-demand by leveraging memory protection and controlling in buffer.

[0021]In one aspect, a methodology of the present disclo...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

PUM

No PUM Login to view more

Abstract

Managing buffers in a hybrid system, in one aspect, may comprise selecting a first buffer management method from a plurality of buffer management methods; capturing statistics associated with access to the buffer in the hybrid system running under the initial buffer management method; analyzing the captured statistics; identifying a second buffer management method based on the analyzed captured statistics; determining whether the second buffer management method is more optimal than the first buffer management method; in response to determining that the second buffer management method is more optimal than the first buffer management method, invoking the second buffer management method; and repeating the capturing, the analyzing, the identifying and the determining.

Description

CROSS-REFERENCE TO RELATED APPLICATIONS[0001]This application is a continuation of U.S. Ser. No. 13 / 732,820, filed on Jan. 2, 2013, the entire content and disclosure of which is incorporated herein by reference.FIELD[0002]The present application relates generally to computers, and computer applications, and more particularly to managing buffers in a hybrid system.BACKGROUND[0003]Java Virtual Machine (JVM) implementations support the Java Native Interface (JNI) as a mechanism which allows Java code to call methods written in C and C++(native code) and vice verse. Traditionally both the code written in Java and the native code is executed in the same process and by the same thread as execution transitions between the two.[0004]It is possible, however, to construct a JVM such that the native code is run in one or more Remote Execution Containers which may be hosted in separate processes on the same or different machines from where the Java code is executed such that the native code is ...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

Application Information

Patent Timeline
no application Login to view more
IPC IPC(8): G06F5/08
CPCG06F5/08G06F9/544G06F9/545G06F11/3433G06F11/3452G06F3/0685G06F11/34
Inventor DAWSON, MICHAEL H.GAO, YUQINGITO, MEGUMIJOHNSON, GRAEMESEELAM, SEETHARAMI R.
Owner IBM CORP
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products