Sociotechnical approach preaches the affinity of the social and the technical organization but divides organizations into social and technical subsystems. Thus, it has failed to anticipate the possibilities of new technologies within the social system. The social subsystem of a modern sociotechnical
Annotating the Java bytecodes in support of optimization
β Scribed by Hummel, Joseph; Azevedo, Ana; Kolson, David; Nicolau, Alexandru
- Publisher
- John Wiley and Sons
- Year
- 1997
- Tongue
- English
- Weight
- 117 KB
- Volume
- 9
- Category
- Article
- ISSN
- 1040-3108
No coin nor oath required. For personal study only.
β¦ Synopsis
The efficient execution of Java programs presents a challenge to hardware and software designers alike. The difficulty, however, lies with the Java bytecodes. Their model of a simplistic, platform-independent stack machine is well-suited for portability, though at the expense of execution speed. Various approaches are being proposed to increase the speed of Java bytecode programs, including: (i) on-the-fly compilation to native code (also known as JIT or 'just-in-time' compilation); (ii) traditional ('ahead-of-time') compilation of bytecodes to some higher-level intermediate form and then to native code; and (iii) translation of bytecodes to a higher-level language and then use of an existing compiler to produce native code. Speedups of the order of 50 over standard bytecode interpretation have been claimed.
All of these approaches rely upon bytecode analysis (of varying sophistication) to extract information about the program, which is then used to optimize the native code during the translation process. However, extracting information from a lower-level representation such as the Java bytecodes can be very expensive. Also, given the fact that most approaches for executing Java bytecodes cannot spend a great deal of time recovering high-level information, the solutions adopted during the translation process must use faster and less accurate analysis techniques, thus penalizing the quality of the native code.
In this paper we propose an optimization approach based on bytecode annotations. The bytecodes are annotated during the original source code to bytecode translation, allowing both traditional interpretation by a JVM and aggressive optimization by an annotation-aware bytecode compiler. Annotations hinder neither portability nor compatibility, while preserving optimization information that is expensive to recompute. Preliminary results yield bytecode with C-like performance using JIT technology.
π SIMILAR VOLUMES
We present a generic matrix class facility in Java and an on-going project for a runtime environment with continuous compilation aiming to support automatic parallelization of sparse computation on distributed environments. Our package comes with a collection of matrix classes with a uniform interfa
A fuzzy-logic light attenuation model was developed and validated for a stirred-tank photobioreactor. Based on this model, local light intensities were used to calculate local specific growth rates of the cyanobacteria Synechococcus PCC 7942. The light regime for maximization of biomass space-time y
Virtual machines for remote execution are a useful tool for utilizing light user interfaces and intensive application cores in different physical machines connected through the Internet. In a virtual machine, application cores are distributed in a network. Specific locations, operating systems and h