• Title/Summary/Keyword: Code Optimizer

Search Result 27, Processing Time 0.019 seconds

Automatic Generation of Code Optimizer for DFA Pattern Matching (DFA 패턴 매칭을 위한 코드 최적화기의 자동적 생성)

  • Yun, Sung-Lim;Oh, Se-Man
    • The KIPS Transactions:PartA
    • /
    • v.14A no.1 s.105
    • /
    • pp.31-38
    • /
    • 2007
  • Code Optimization is converting to a code that is equivalent to given program but more efficient, and this process is processed in Code Optimizer. This paper designed and processed Code Optimizer Generator that automatically generates Code Optimizer. In other words Code Optimizer is automatically generated for DFA Pattern Matching which finds the optimal code for the incoming pattern description. DFA Pattern Matching removes redundancy comparisons that occur when patterns are sought for through normalization process and improves simplification and structure of pattern shapes for low cost. Automatic generation of Code Optimization for DFA Pattern Matching eliminates extra effort to generate Code Optimizer every time the code undergoes various transformations, and enables formalism of Code Optimization. Also, the advantage of making DFA for optimization is that it is faster and saves cost of Code Optimizer Generator.

The Design of A Machine-independent Global Optimizer for RISC Compilers (RISC 컴파일러의 기계독립적 Global Optimizer 설계)

  • Park, Jong-Deuk;Lim, In-Chil
    • Journal of the Korean Institute of Telematics and Electronics
    • /
    • v.27 no.3
    • /
    • pp.40-46
    • /
    • 1990
  • This paper describes a design and an implementation of a machine-independent global optimizer which is a required module of RISC compiler system designs. It receives a triple as input and performs data flow analysis, common subexpression elimination and code motion and finally generates the optimized code. Since the implemented optimizer operates on the machine-independent intermediate code, its portability is good for many high level languages and target machines. It performs the effective optimizations to improve the execution time of programs.

  • PDF

Virtual Machine Code Optimization using Profiling Data (프로파일링 데이터를 이용한 가상기계 코드 최적화)

  • Shin, Yang-Hoon;Yi, Chang-Hwan;Oh, Se-Man
    • The KIPS Transactions:PartA
    • /
    • v.14A no.3 s.107
    • /
    • pp.167-172
    • /
    • 2007
  • VM(Virtual Machine) can be considered as a software processor which interprets the machine code. Also, it is considered as a conceptional computer that consists of logical system configuration. But, the execution speed of VM system is much slower than that of a real processor system. So, it is very important to optimize the code for virtual machine to enhance the execution time. Especially the optimizer for a virtual machine code on embedded devices requires the highly efficient performance to the ordinary optimizer in the respect to the optimized ratio about cost. Fundamentally, functions and basic blocks which influence the execution time of virtual machine is found, and then an optimization for them nay get the high efficiency. In this paper, we designed and implemented the optimizer for the virtual(or abstract) machine code(VMC) using profiling. Firstly, we defined the profiling information which is necessary to the optimization of VMC. The information can be obtained from dynamically executing the machine code. And we implemented VMC optimizer using the profiling information. In our implementation, the VMC is SIL(Standard Intermediate Language) that is an intermediate code of EVM(Embedded Virtual Machine). Also, we tried a benchmark test for the VMC optimizer and obtained reasonable results.

Pattern Matching Optimizer for Virtual Machine Codes (가상 기계 코드를 위한 패턴 매칭 최적화기)

  • Yi Chang-Hwan;Oh Se-Man
    • Journal of Korea Multimedia Society
    • /
    • v.9 no.9
    • /
    • pp.1247-1256
    • /
    • 2006
  • VM(Virtual Machine) can be considered as a software processor which interprets the abstract machine code. Also, it is considered as a conceptional computer that consists of logical system configuration. But, the execution speed of VM system is much slower than that of a real processor system. So, it is very important to optimize the code for virtual machine to enhance the execution time. In this paper, we designed and implemented the optimizer for the virtual(or abstract) machine code(VMC) which is actually SIL(Standard Intermediate Language) that is an intermediate code of EVM(Embedded Virtual Machine). The optimizer uses the pattern matching optimization techniques reflecting the characteristics of the VMC as well as adopting the existing optimization methodology. Also, we tried a benchmark test for the VMC optimizer and obtained reasonable results.

  • PDF

Code Optimization Using Pattern Table (패턴 테이블을 이용한 코드 최적화)

  • Yun Sung-Lim;Oh Se-Man
    • Journal of Korea Multimedia Society
    • /
    • v.8 no.11
    • /
    • pp.1556-1564
    • /
    • 2005
  • Various optimization techniques are deployed in the compilation process of a source program for improving the program's execution speed and reducing the size of the source code. Of the optimization pattern matching techniques, the string pattern matching technique involves finding an optimal pattern that corresponds to the intermediate code. However, it is deemed inefficient due to excessive time required for optimized pattern search. The tree matching pattern technique can result in many redundant comparisons for pattern determination, and there is also the disadvantage of high cost involved in constructing a code tree. The objective of this paper is to propose a table-driven code optimizer using the DFA(Deterministic Finite Automata) optimization table to overcome the shortcomings of existing optimization techniques. Unlike other techniques, this is an efficient method of implementing an optimizer that is constructed with the deterministic automata, which determines the final pattern, refuting the pattern selection cost and expediting the pattern search process.

  • PDF

The Bytecode Optimizer (바이트코드 최적화기)

  • 이야리;홍경표;오세만
    • Journal of KIISE:Software and Applications
    • /
    • v.30 no.1_2
    • /
    • pp.73-80
    • /
    • 2003
  • The Java programming language is designed for developing effective applications in a heterogeneous network environment. Major problem in Java is its performance. many attractive features of Java make the development of software easy, but also make it expensive to support ; applications written in Java are often much slower than their counterparts written in C or C++. To use Java`s attractive features without the performance penalty, sophisticated optimizations and runtime systems are required. Optimising Java bytecode has several advantages. First, the bytecode is independent of any compiler that is used to generate it. Second, the bytecode optimization can be performed as a pre=pass to Just-In-Time(JIT) compilation. Many attractive features of Java make the development of software easy, but also make it expensive to support. The goal of this work is to develop automatic construction of code optimizer for Java bytecode. We`ve designed and implemented a Bytecode Optimizer that performs the peephole optimization, bytecode-specific optimization, and method-inlining techniques. Using the Classfile optimizer, we see up to 9% improvement in speed and about 20% size reduction in Java class files, when compared to average code using the interpreter alone.

Retargetable Intermediate Code Optimization System Using Tree Pattern Matching Techniques (트리패턴매칭기법의 재목적 가능한 중간코드 최적화 시스템)

  • Kim, Jeong-Suk;O, Se-Man
    • The Transactions of the Korea Information Processing Society
    • /
    • v.6 no.8
    • /
    • pp.2253-2261
    • /
    • 1999
  • ACK generates optimized code using the string pattern matching technique in pattern table generator and peephole optimizer. But string pattern matching method is not effective due to the many comparative actions in pattern selection. We designed and implemented the EM intermediate code optimizer using tree pattern matching algorithm composed of EM tree generator, optimization pattern table generator and tree pattern matcher. Tree pattern matching algorithm practices the pattern matching that centering around root node with refer to the pattern table, with traversing the EM tree by top-down method. As a result, compare to ACK string pattern matching methods, we found that the optimized code effected to pattern selection time, and contributed to improved the pattern selection time by about 10.8%.

  • PDF

Generation of OC and MMA topology optimizer by using accelerating design variables

  • Lee, Dongkyu;Nguyen, Hong Chan;Shin, Soomi
    • Structural Engineering and Mechanics
    • /
    • v.55 no.5
    • /
    • pp.901-911
    • /
    • 2015
  • The goal of this study is to investigate computational convergence of optimal solutions, with respect to optimality criteria (OC) method and methods of moving asymptotes (MMA) as optimization model for non-linear programming of material topology optimization using an acceleration method that makes design variables rapidly move toward almost 0 and 1 values. 99 line topology optimization MATLAB code uses loop vectorization and memory pre-allocation as properly exploiting the strengths of MATLAB and moves portions of code out of the optimization loop so that they are only executed once as restructuring the program. Numerical examples of a simple beam under a lateral load and a given material density limitation provide merits and demerits of the present OC and MMA for 99 line topology optimization code of continuous material topology optimization design.

A Study on the Economical Design of Apartment House (경제적인 아파트 설계에 대한 연구)

  • 강문영
    • Proceedings of the Korea Concrete Institute Conference
    • /
    • 1995.04a
    • /
    • pp.378-384
    • /
    • 1995
  • This paper descrides on the economical design of apartment house. * The optimal problems are made by considering the objective function which minimize the construction cost of frame. * The object functions are taken as the codfficient equations of the cost function for a unit area. * Constraints are the design limits defined by the ultimate flexural strength, the ultimate shear strength. the minimum thickness, and the ratio of steel in accordance with ACI 318-89 Code. * Optimization is achieved by optimum nonlinear GINO(General interactive Optimizer)program. In design examples, it is compared with the optimum design results of apartment house and underground parking lot for structural systems.

  • PDF

Numerical investigation on effects of rotor control strategy and wind data on optimal wind turbine blade shape

  • Yi, Jin-Hak;Yoon, Gil-Lim;Li, Ye
    • Wind and Structures
    • /
    • v.18 no.2
    • /
    • pp.195-213
    • /
    • 2014
  • Recently, the horizontal axis rotor performance optimizer (HARP_Opt) tool was developed in the National Renewable Energy Laboratory, USA. This innovative tool is becoming more popular in the wind turbine industry and in the field of academic research. HARP_Optwas developed on the basis of two fundamental modules, namely, WT_Perf, a performance evaluator computer code using the blade element momentum theory; and a genetic algorithm module, which is used as an optimizer. A pattern search algorithm was more recently incorporated to enhance the optimization capability, especially the calculation time and consistency of the solutions. The blade optimization is an aspect that is highly dependent on experience and requires significant consideration on rotor control strategies, wind data, and generator type. In this study, the effects of rotor control strategies including fixed speed and fixed pitch, variable speed and fixed pitch, fixed speed and variable pitch, and variable speed and variable pitch algorithms on optimal blade shapes and rotor performance are investigated using optimized blade designs. The effects of environmental wind data and the objective functions used for optimization are also quantitatively evaluated using the HARP_Opt tool. Performance indices such as annual energy production, thrust, torque, and roof-flap moment forces are compared.