Tech Paper Analysis



Main Menu

Tjhsst Home

First Quarter Assignments

Second Quarter Assignments

Latex Project Proposal

Iteration Progress Reports

Links to Research

Sample Code







The NINJA Project

Purpose, subject of the project, goals of the project


This project's purpose is to vindicate the use of Java in complex numeric tasks. The programmer designed a program that has a comprable efficiency to Fortran. The programmer wishes to enable Java providers to give programmers a useful platform that will not comporomeise efficiency but still keep the benefits of Java.

Scope of the study and project, the overall bounds of the work that will be involved


The project will fix two of Java's major problems. First it will provide rectangular arrays that are easier to use when testing for size and shape. Secondly, the project will provide a way to use complex numbers.

Background and review of current literature/research in this area


To be completed

Development sections, theory and procedures used


The programmer developed the project relying heavily on Java's current capabilities. He starts with the language in order to build off of it and improve it.

Hypothesis, explain how the project is demonstrating the goal/purpose


The hypothesis is more like a challenge to the programmer. He claims he will be able to improve the runtime and efficiency of Java when used to compute complex arithmetic problems, and will match the output levels to that of Fortran or C.

Procedure and methods used



The methods used involved creating new structures that could handle matricies that were not just haphazard array sof arrays.

Was any data needed, how was this data collected?



The data is necessary to see how effective the program is in reducing time and increasing efficiency fo Java compared to other languages. It was collected by

Are methods or processes listed to test and analyze the data?



They used a suite of eight real and five complex arithmetic benchmarks to evaluate the performance impact of the techniques. They also applied the techniques to a production data mining application.

Results, analysis, and conclusions



The NINJA project performed fairly well, usually performing better than Java 1.1.6 by a considerable amount, although Fortran 90 still dominated over both NINJA and Java.

What are the final results and analysis



The final result is a programming platform that has been significantly improved from the origional Java. Java may be used with NINJA to perform copmelx arithmetic problem, and although there is still room for improvement (compared to Fortran) the project was fairly successful in accopmlishing its stated purpose.

Describe main points that are learned, how about the original hypotheses?



The main point learned is that any language can be improved upon. There are always ways and extensions of the language that will make it go a little faster, farther, more efficiently. The origional hypothesis was correct in that the programmer improved hthe languge.

Is any further study do you recommend given the results of your experiment?



Further study might include trying to make Java programs even faster with regards to other complex numerical operations.

What would be the next question to ask?



What are other areas in which Java falls behind other languages? How can those weaknesses be decreased.