• Title/Summary/Keyword: code optimization techniques

Search Result 50, Processing Time 0.025 seconds

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

Code Optimization Techniques to Reduce Energy Consumption of Multimedia Applications in Hybrid Memory

  • Dadzie, Thomas Haywood;Cho, Seungpyo;Oh, Hyunok
    • IEIE Transactions on Smart Processing and Computing
    • /
    • v.5 no.4
    • /
    • pp.274-282
    • /
    • 2016
  • This paper proposes code optimization techniques to reduce energy consumption of complex multimedia applications in a hybrid memory system with volatile dynamic random access memory (DRAM) and non-volatile spin-transfer torque magnetoresistive RAM (STT-MRAM). The proposed approach analyzes read/write operations for variables in an application. Based on the profile, variables with a high read operation are allocated to STT-MRAM, and variables with a high write operation are allocated to DRAM to reduce energy consumption. In this paper, to optimize code for real-life complicated applications, we develop a profiler, a code modifier, and compiler/link scripts. The proposed techniques are applied to a Fast Forward Motion Picture Experts Group (FFmpeg) application. The experiment reduces energy consumption by up to 22%.

Lightweight Loop Invariant Code Motion for Java Just-In-Time Compiler on Itanium (Itanium상의 자바 적시 컴파일러를 위한 가벼운 루프 불변 코드 이동)

  • Yu Jun-Min;Choi Hyung-Kyu;Moon Soo-Mook
    • Journal of KIISE:Software and Applications
    • /
    • v.32 no.3
    • /
    • pp.215-226
    • /
    • 2005
  • Loop invariant code motion (LICM) optimization includes relatively heavy code analyses, thus being not readily applicable to Java Just-In-Time (JIT) compilation where the JIT compilation time is part of the whole running time. 'Classical' LICM optimization first analyzes the code and constructs both the def-use chains and the use-def chains. which are then used for performing code motions. This paper proposes a light-weight LICM algorithm, which requires only the def-use chains of loop invariant code (without use-def chains) by exploiting the fact that the Java virtual machine is based on a stack machine, hence generating code with simpler patterns. We also propose two techniques that allow more code motions than classical LICM techniques. First, unlike previous JIT techniques that uses LICM only in single-path loops for simplicity, we apply LICM to multi-path loops (natural loops) safely for partially redundant code. Secondly, we move loop-invariant, partially-redundant null pointer check code via predication support in Itanium. The proposed techniques were implemented in a JIT compiler for Itanium processor on ORP (Open Runtime Platform) Java virtual machine of Intel. On SPECjvrn98 benchmarks, the proposed technique increases the JIT compilation overhead by the geometric mean of 1.3%, yet it improves the total running time by the geometric mean of 2.2%.

Real-time Integrated Timeslot and Code Allocation Scheme for the CDMA/TDD System Supporting Voice and Data Services (음성 및 데이터 서비스를 지원하는 CDMA/TDD 시스템을 위한 실시간 통합 타임슬롯 및 코드 할당 체계)

  • Chang, Kun-Nyeong;Lee, Ki-Dong
    • Korean Management Science Review
    • /
    • v.25 no.2
    • /
    • pp.25-42
    • /
    • 2008
  • CDMA/TOD with asymmetric capacity allocation between uplink and downlink is a highly attractive solution to support the next generation mobile systems. This is because flexible asymmetric allocation of capacity to uplink and downlink usually improves the utilization of the limited bandwidth. In this paper, we mathematically formulate an optimal timeslot and code allocation problem, which is to maximize the total utility considering the numbers of codes(channels) allocated to each data class and the forced terminations of previously allocated codes. We also suggest a real-time integrated timeslot and code allocation scheme using Lagrangean relaxation and subgradient optimization techniques. Experimental results show that the proposed scheme provides high-quality solutions in a fast time.

On the Application and Optimization of M-ary Transmission Techniques to Optical CDMA LANs (Optical CDMA 근거리망을 위한 M-진 전송기술에 대한 연구)

  • 윤용철;최진우;김영록
    • The Journal of Korean Institute of Communications and Information Sciences
    • /
    • v.29 no.8C
    • /
    • pp.1086-1103
    • /
    • 2004
  • Most research efforts on the OCDMA technology assume single-bit-per-symbol transmission techniques such as on-off keying. However, achieving high spectral efficiency with such transmission techniques is likely to be a challenging task due to the "unipolar" nature of optical signals. In this paper, an M-ary transmission technique using more than two equally-weighted codes is proposed for OCDMA local area networks, and ie BER performance and spectral efficiency are analyzed. Poison frame arrival and randomly generated codes are assumed for the BER analysis, and the probability of incorrect symbol detection is analytically derived. From the approximation, it is found that there exists an optimal code weight that minimizes the BER, and its physical interpretation is drawn in an intuitive and simple statement. Under the assumption of this optimized code weight and sufficiently large code dimension, it is also shown that the spectral efficiency of OCDMA networks can be significantly improved by increasing the number (M) of symbols used. Since the cost of OCDMA transceivers is expected to increase with the code dimension, we finally provide a guideline to determine the optimal number of symbols for a given code dimension and traffic load.

Compiler Optimization Techniques for The Next Generation Low Power Multibank Memory (차세대 저전력 멀티뱅크 메모리를 위한 컴파일러 최적화 기법)

  • Cho, Doosan
    • The Journal of the Institute of Internet, Broadcasting and Communication
    • /
    • v.21 no.6
    • /
    • pp.141-145
    • /
    • 2021
  • Various types of memory architectures have been developed, and various compiler optimization techniques have been studied to efficiently use them. In particular, since a memory is a major component that determines performance in mobile computing devices, various optimization techniques have been developed to support them. Recently, a lot of research on hybrid type memory architecture is being conducted, so various compiler techniques are being studied to support it. Existing compiler optimization techniques can be used to achieve the required minimum performance and constraint on low power according to market requirements. References for determining the low-power effect and the degree of performance improvement using these optimization techniques are not properly provided yet. This study was conducted to provide the experimental results of the existing compiler technique as a reference for the development of multibank memory architecture.

Optimization of a horizontal axis marine current turbine via surrogate models

  • Thandayutham, Karthikeyan;Avital, E.J.;Venkatesan, Nithya;Samad, Abdus
    • Ocean Systems Engineering
    • /
    • v.9 no.2
    • /
    • pp.111-133
    • /
    • 2019
  • Flow through a scaled horizontal axis marine current turbine was numerically simulated after validation and the turbine design was optimized. The computational fluid dynamics (CFD) code Ansys-CFX 16.1 for numerical modeling, an in-house blade element momentum (BEM) code for analytical modeling and an in-house surrogate-based optimization (SBO) code were used to find an optimal turbine design. The blade-pitch angle (${\theta}$) and the number of rotor blades (NR) were taken as design variables. A single objective optimization approach was utilized in the present work. The defined objective function was the turbine's power coefficient ($C_P$). A $3{\times}3$ full-factorial sampling technique was used to define the sample space. This sampling technique gave different turbine designs, which were further evaluated for the objective function by solving the Reynolds-Averaged Navier-Stokes equations (RANS). Finally, the SBO technique with search algorithm produced an optimal design. It is found that the optimal design has improved the objective function by 26.5%. This article presents the solution approach, analysis of the turbine flow field and the predictability of various surrogate based techniques.

Application of Numerical Optimization Technique to the Design of Fans (송풍기 설계를 위한 수치최적설계기법의 응용)

  • Kim, K.Y.;Choi, J.H.;Kim, T.J.;Rew, H.S.
    • Korean Journal of Air-Conditioning and Refrigeration Engineering
    • /
    • v.7 no.4
    • /
    • pp.566-576
    • /
    • 1995
  • A Computational code has been developed in order to design axial fans by the numerical optimization techniques incorporated with flow analysis code solving three-dimensional Navier-Stokes equation. The steepest descent method and the conjugate gradient method are used to look for the search direction in the design space, and the golden section method is used for one-dimensional search. To solve the constrained optimization problem, sequential unconstrained minimization technique, SUMT, is used with imposed quadratic extended interior penalty functions. In the optimization of two-dimensional cascade design, the ratio of drag coefficient to lift coefficient is minimized by the design variables such as maximum thickness, maximum ordinate of camber and chord wise position of maximum ordinate. In the application of this numerical optimization technique to the design of an axial fan, the efficiency is maximized by the design variables related to the sweep angle distributed by quadratic function along the hub to tip of fan.

  • PDF

Code Automatic Analysis Technique for Virtualization-based Obfuscation and Deobfuscation (가상화 기반 난독화 및 역난독화를 위한 코드 자동 분석 기술)

  • Kim, Soon-Gohn
    • The Journal of Korea Institute of Information, Electronics, and Communication Technology
    • /
    • v.11 no.6
    • /
    • pp.724-731
    • /
    • 2018
  • Code obfuscation is a technology that makes programs difficult to understand for the purpose of interpreting programs or preventing forgery or tampering. Inverse reading is a technology that analyzes the meaning of origin through reverse engineering technology by receiving obfuscated programs as input. This paper is an analysis of obfuscation and reverse-toxicization technologies for binary code in a virtualized-based environment. Based on VMAttack, a detailed analysis of static code analysis, dynamic code analysis, and optimization techniques were analyzed specifically for obfuscation and reverse-dipidization techniques before obfuscating and reverse-dipulation techniques. Through this thesis, we expect to be able to carry out various research on virtualization and obfuscation. In particular, it is expected that research from stack-based virtual machines can be attempted by adding capabilities to enable them to run on register-based virtual machines.

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