Accession Number:

AD1107257

Title:

Mixing C and Java(trade mark) for High Performance Computing

Descriptive Note:

Technical Report

Corporate Author:

MITRE CORP BEDFORD MA BEDFORD United States

Personal Author(s):

Report Date:

2013-09-01

Pagination or Media Count:

136.0

Abstract:

Performance computing software, especially high performance embedded computing HPEC software, is typically developed in C for processing as well as infrastructure functionality. Infrastructure includes communications, processorcore allocation, task management, job scheduling, fault detection, fault handling, and logging. C and optimized assembler language libraries are used to achieve the highest processing performance relative to limitations on size, weight, and power dissipation. There has been a trend to move away from dedicated logic and specialty programmable processors to commodity-based processors. As a result, it is now possible to examine more robust software options. Many of these functions, especially infrastructure functions, can be implemented quickly and safely utilizing Javatrademark frameworks but some doubt that the performance can be satisfactory. Java frameworks have extensive open source and vendor support, and Javas platform independence reduces the need to redevelop functions as hardware and operating systems evolve. Tests show that the performance of Oracleregistered trademark Javatrademark 7 Standard Edition on Intel processors can equal that of C for some problems if dynamic object creation is used judiciously and the application can afford a brief start-up and warm-up time. Java can invoke native libraries very quickly. With some of the available bridging technologies it can natively allocate data and even extend its garbage collection discipline to such data. Even though there is some additional Java overhead for invoking and utilizing graphics processing units, in tests it was able to utilize the graphical processing unit GPU at the same rate as native C code when the data was allocated natively.

Subject Categories:

  • Computer Programming and Software

Distribution Statement:

APPROVED FOR PUBLIC RELEASE