Method, system, and program for converting code to...

Data processing: artificial intelligence – Neural network

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C706S027000, C706S030000, C717S137000, C717S140000, C717S148000

Reexamination Certificate

active

06832214

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to a method, system, and program for using neural networks for converting code to executable code.
2. Description of the Related Art
The Java** Platform provides an added layer of execution between the underlying operating system and programs written in the Java computer language. The Java Platform converts Java source code (.Java files) to bytecodes (.class files), which are machine independent representations of a Java class. Thus, the same bytecodes would be created for all operating system platforms. The bytecodes are then inputted to a Java Virtual Machine program that converts the bytecodes to the object code in the native machine language of the operating system on which the Java Virtual Machine is installed. Thus, there is a platform-specific Java Virtual Machine program for each platform on which Java programs can execute.
The Java Virtual Machine typically includes two components, an Interpreter and a Just-In-Time (JIT) Compiler. The bytecodes are either interpreted by the Interpreter or turned into native machine code by the JIT Compiler. The native code may then be executed to run the Java program. The JIT Compiler is intended to generate code faster for certain methods that are called frequently. The JIT operates by searching for strings having a recognizable pattern in the bytecodes. The JIT provides a mapping of such recognizable strings of bytecodes to native code statements. The JIT compiler reuses copies of translated bytecodes to speed up the compilation process. In this way, the JIT Compiler can quickly convert recognizable segments of the byte code to native code.
FIG. 1
illustrates the prior art method for converting Java source code to executable native machine code through the use of the Java Interpreter and JIT Compiler.
There is a need in the art for further improvements for compiling Java bytecodes into native code that may be executed by the native operating system platform on which the Java Virtual Machine is running.
SUMMARY OF THE PREFERRED EMBODIMENTS
To overcome the limitations in the prior art described above, preferred embodiments disclose a system, method, and program for generating a compiler to map a code set to object code capable of being executed on an operating system platform. At least one neural network is trained to convert the code set to object code. The at least one trained neural network is then used to convert the code set to the object code.
In further embodiments, the code set comprises Java bytecode implementing a Java class.
In still further embodiments, the at least one neural network comprises a first level and second level neural networks. The first level neural networks are trained to convert the code set to a unique representation of the code set and the second level neural network is trained to convert the unique representation of the code set to the object code. After training, the first level neural networks are capable of being used to convert the code set to a unique representation of the code set and the second level neural network is capable of being used to convert the unique representation to the object code.
In yet further embodiments, the code set is parsed into a plurality of input vectors and each input vector is assigned to one of a plurality of first level neural networks. The first level networks are trained to convert the assigned input vector to an output vector. The combined output vectors from each first level neural network form a unique representation of the code set.
In preferred embodiments, the at least one neural network used to convert the code set to object code is implemented in a software program.
Preferred embodiments provide a mechanism for utilizing neural networks to provide a mapping from an input code set, such as Java bytecodes implementing a class, to native machine code. The preferred embodiments are especially useful for substantially reducing the time needed to compile Java bytecodes into native machine code. The preferred embodiments avoid having to interpret any portion of the bytecodes. Instead, neural networks are utilized to map Java bytecodes to native machine code in a manner that is substantially faster than current Java Virtual Machine implementations using Interpreters and JIT Compilers. The neural networks of the preferred embodiments further reduce compilation time by parallel processing the input bytecodes and by providing a mapping that avoids the need for time consuming interpretation operations.


REFERENCES:
patent: 5960391 (1999-09-01), Tateishi et al.
patent: 6070140 (2000-05-01), Tran
patent: 6092039 (2000-07-01), Zingher
patent: 2280288 (1995-01-01), None
Carreira et al., “Building a Neural Computer: A Compiler and Simulator for Partial Recursive Functions Over Neural Networks”, Technical Report DI-FCUL TR-98-8, Dec. 1998, Retrieved from the Internet: http://www.di.fc.ul.pt/biblioteca/tech-reports.*
Balkenius et al., “Efficient Implementation of Neural Networks in an Object Oriented Programming Environment”, Proceedings Neuro Nimes '91, Fourth International Conference, 1991, pp. 733-736.*
Burke et al., “The Jalapeno Dynamic Optimizing Compiler for Java”, Proceedings of the ACM 1999 Java Grande Conference, Jun. 1999, pp 129-141.*
Al-Marzooq et al., “Program Transformation in Massively Parallel Systems”, Fourth Symposium on the Frontiers of Massively Parallel Computation, Oct. 1992, pp 498-501.*
Prechelt, L., “A Parallel Programming Model for Irregular Dynamic Neural Networks”, Proceedings of the Third Working Conference on Massively Parallel Programming Models, Nov. 1997, pp 214-219.*
Newhall, “Performance Measurement of Interpreted, Just-in-time Compiled, and Dynamically Compiled Executions”, University of Wisconsin-Madison dissertation, 1999, Retrieved from the Internet: http://www.cs.wisc.edu/paradyn/papers
ewhall_thesis.p.*
Vellacott, “ANNECS: A Neural Network Compiler and Simulator”, Joint Conference on Neural Networks, Jul. 1991, vol. 2.*
Ouali et al., “Silicon Compiler for Neuro-ASICs”, 1990 IJCNN International Joint Conference on Neural Networks, Jun. 1990, vol. 2, pp. 557-561.*
Nigri et al., “Silicon Compilation of Neural Networks”, 5thAnnual European Computer Conference, May 1991, pp. 541-546.*
Kunze et al., “The Neural Network Objects”, Proceedings of the 5thAIHENP Workshop, 1996.*
UK Search Report in App. No. GB0028818.3, date of Search Dec. 17, 2001.
Theoretical Computer Science(Netherlands) vol. 141, No. 1-2, pp. 1-52, Apr. 1995, ISSN 0304-3975 “Fundamental Study: A neural compiler” by F Gruau, J Y Ratajszczak, G Wiber.
S. Haykin, “Neural Networks: A Comprehensive Foundation”, Macmillan Publishing Co., 1994, Chap. 13.5-13.7, pp. 518-526.
T. Kohonen, “The Self-Organizing Map”, pp. 74-89, reprinted from Proc. IEEE, vol. 78, No. 8, Sept. 1990, pp. 1464-1480.
D. Kramer, “The Java™ Platform”, JavaSoft, May 1996, pp. iii-24.
F. Yellin, “The JIT Compiler API”, Oct. 1996, pp. 1-23, [retrieved on Nov. 21, 1999]<URL: http://java.sun.com/docs/jit_interface.html>.
C. Stergiou, and D. Siganos, “Neural Networks”, believed to be published in Surprise 96 Journal 1996-1997, <URL: http://www-dse.doc.ic.ac.uk/~nd/surprise_96/journal/vo14/cs11/report.html>.
C.T. Nguyen, et al., “Wavelet-based Hybrid Neurosystem for Feature Extractions, Characterizations and Signal Classifications”, Proceedings of the 29thAsilomar Conference on Signals, Systems, and Computers (2-Volume Set), 1196 Institute of Electrical and Electronics Engineers, [Online], [retrieved Apr. 24, 2001]. Retrieved from the Internet <URL: http://computer.org/Proceedings/asilomar/7370/73700904abs.htm Nov. 1996.
C.T. Nguyen, et al., “Wavelet-based Hybrid Neurosystem for Feature Extractions, Characterizations and Signal Classifications”, Naval Undersea Warfare Center Division Newport, Newport, Rhode Island 08241, pp. 904-908. Nov. 1996.
H. Szu, et al., “Wavelet Transforms and Neural Networks for Compression and Recognition”, Neural Networks, vol. 9, No. 4, pp. 695-708, 1996

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method, system, and program for converting code to... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method, system, and program for converting code to..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method, system, and program for converting code to... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3272493

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.