• Title/Summary/Keyword: code size reduction

검색결과 85건 처리시간 0.021초

코드감소와 성능향상을 위한 이질 레지스터 분할 및 명령어 구조 설계 (Code Size Reduction and Execution performance Improvement with Instruction Set Architecture Design based on Non-homogeneous Register Partition)

  • 권영준;이혁재
    • 대한전기학회논문지:전력기술부문A
    • /
    • 제48권12호
    • /
    • pp.1575-1579
    • /
    • 1999
  • Embedded processors often accommodate two instruction sets, a standard instruction set and a compressed instruction set. With the compressed instruction set, code size can be reduced while instruction count (and consequently execution time) can be increased. To achieve code size reduction without significant increase of execution time, this paper proposes a new compressed instruction set architecture, called TOE (Two Operations Execution). The proposed instruction set format includes the parallel bit that indicates an instruction can be executed simultaneously with the next instruction. To add the parallel bit, TOE instruction format reduces the destination register field. The reduction of the register field limits the number of registers that are accessible by an instruction. To overcome the limited accessibility of registers, TOE adapts non-homogeneous register partition in which registers are divided into multiple subsets, each of which are accessed by different groups of instructions. With non-homogeneous registers, each instruction can access only a limited number of registers, but an entire program can access all available registers. With efficient non-homogeneous register allocator, all registers can be used in a balanced manner. As a result, the increase of code size due to register spills is negligible. Experimental results show that more than 30% of TOE instructions can be executed in parallel without significant increase of code size when compared to existing Thumb instruction set.

  • PDF

복수의 메모리 접근 명령어의 효율적인 이용을 통한 코드 크기의 감소 (Code Size Reduction Through Efficient use of Multiple Load/store Instructions)

  • 안민욱;조두산;백윤흥;조정훈
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제32권8호
    • /
    • pp.819-833
    • /
    • 2005
  • 하나의 instruction으로 여러 메모리 블록을 읽거나 쓰는 MLS(Multiple Load/store) 명령어를 사용하면 전체 코드에서 메모리 명령어의 수를 최소화해서 코드 사이즈를 축소할 수 있다. 이러한 장점 때문에 많은 마이크로 프로세서에서 이 명령어를 지원하고 있으나 현재까지 개발되어 있는 컴파일러들은 MLS 명령어의 장점을 효과적으로 이용하고 있지 못하고 있고 오직 제한적인 용도로 MLS 명령어를 사용하고 있다. 기존의 컴파일러에서 MLS 명령어를 효율적으로 지원하지 못하는 것은 일반적으로 MLS 명령어를 효과적으로 이용하기 위해서 해결해야 할 문제가 NP-hard의 범주에 속하기 때문이다. 이것은 stack frame에서 변수들에 대한 최적의 메모리 옵셋을 찾는 문제와 레지스터 할당에 관련된 복합적인 문제이다. 본 논문에서는 heuristic 기법을 효율적으로 이용하여 위에 언급된 문제를 polynomial time bound에 해결할 수 있는 기법을 제안한다.

64-bit 자바스크립트 적시 컴파일러를 위한 상수 값 생성 최적화 (Optimizing Constant Value Generation in Just-in-time Compiler for 64-bit JavaScript Engine)

  • 최형규;이제형
    • 정보과학회 논문지
    • /
    • 제43권1호
    • /
    • pp.34-39
    • /
    • 2016
  • 자바스크립트는 웹 페이지에서 HTML과 더불어 널리 사용되고 있다. 많은 자바스크립트 수행 엔진들은 성능 향상을 위해 적시 컴파일러를 채택하고 있다. 최근에는 32-bit 뿐만 아니라 64-bit 마이크로프로세서가 탑재된 다양한 기기가 소개되고 있으며 이를 위한 적시 컴파일러도 개발되고 있다. 하지만 64-bit 적시 컴파일러는 아직 문제점이 많으며, 특히 메모리 주소와 값들이 64-bit을 사용하여 코드의 크기가 증가하는 문제점이 있다. 본 논문은 64-bit 환경에서 생성되는 코드, 특히 주소와 상수 값들이 더 많은 공간을 사용함을 보여주고, 적시 컴파일러가 64-bit 값들의 생성을 최적화하여 메모리 사용량을 줄이는 기법들을 제안한다. 이를 V8 자바스크립트 엔진에 적용하여, Octane과 SunSpider 벤치마크에서 생성되는 코드의 크기와 성능을 평가하였다. 성능은 각각 3.6%와 0.32% 향상되었으며, 코드 크기는 0.7%와 2.8% 감소하였다.

가스 제트 모델을 이용한 DME 분무 해석의 격자 의존성 저감 (Reduction of Grid Size Dependency in DME Spray Modeling with Gas-jet Model)

  • 오윤중;김사엽;이창식;박성욱
    • 한국분무공학회지
    • /
    • 제15권4호
    • /
    • pp.170-176
    • /
    • 2010
  • This paper describes the grid-size dependency of the conventional Eulerian-Lagrangian method to spray characteristics such as spray penetration and SMD in modeling DME sprays. In addition, the reduction of the grid-size dependency of the present Gas-jet model was investigated. The calculations were performed using the KIVA code and the calculated results were compared to those of experimental result. The results showed that the conventional Eulerian-Laglangian model predicts shorter spray penetration for large cell because of inaccurate calculation of momentum exchange between liquid and gas phase. However, it was shown that the gas-jet model reduced grid-size dependency to spray penetration by calculating relative velocity between liquid and ambient gas based on gas jet velocity.

함수 수준에서 프로파일 정보를 이용한 ARM과 Thumb 명령어의 선택 (Profile Guided Selection of ARM and Thumb Instructions at Function Level)

  • 소창호;한태숙
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제32권3호
    • /
    • pp.227-235
    • /
    • 2005
  • 임베디드 시스템에서는 메모리와 에너지의 소비가 중요한 관심사 중 하나이다. 메모리와 에너지의 소비를 줄이기 위해 32비트의 ARM 프로세서는 16비트 Thumb 명령어 세트를 지원한다. 주어진 응용프로그램에 대해 Thumb 코드는 일반적으로 ARM 코드보다 코드 사이즈가 작지만, 실행속도는 느리다. 코드 사이즈가 작으면서도 실행속도가 느리지 않은 코드를 생성하기 위한 방법으로 Krishnaswarmy는 응용프로그램에 대한 프로파일 정보를 이용하여 모듈 수준에서 ARM과 Thumb 명령어 세트를 선택하는 알고리즘을 고안했다. 이 알고리즘은 작은 성능 손실로도 상당한 코드 사이즈 감소 효과를 갖지만, 명령어 세트가 모듈 수준에서 선택되기 때문에 Thumb 코드로 컴파일 하면 코드 사이즈를 줄일 수 있는 함수들도 ARM 코드로 컴파일 되어, 추가적인 코드 사이즈 감소의 기회를 잃게 되는 문제점을 갖고 있다. 본 논문에서는 ARM과 Thumb 코드가 혼합된 코드 사이즈의 감소를 이끌어내기 위해 함수 수준에서 프로파일(Profile) 정보를 이용한 명령어 세트 선택 알고리즘을 제안했다. 우리는 성능에서의 페널티는 없이 2.7%의 코드 사이즈를 추가로 줄일 수 있었다.

Low-Complexity Multi-size Cyclic-Shifter for QC-LDPC Codes

  • Kang, Hyeong-Ju;Yang, Byung-Do
    • ETRI Journal
    • /
    • 제39권3호
    • /
    • pp.319-325
    • /
    • 2017
  • The decoding process of a quasi-cyclic low-density parity check code requires a unique type of rotator. These rotators, called multi-size cyclic-shifters (MSCSs), rotate input data with various sizes, where the size is the amount of data to be rotated. This paper proposes a low-complexity MSCS structure for the case when the sizes have a nontrivial common divisor. By combining the strong points of two previous structures, the proposed structure achieves the smallest area. The experimental results show that the area reduction was more than 14.7% when the proposed structure was applied to IEEE 802.16e as an example.

OpenRISC 프로세서를 위한 압축 명령어 집합 구조 (The Compressed Instruction Set Architecture for the OpenRISC Processor)

  • 김대환
    • 한국컴퓨터정보학회논문지
    • /
    • 제17권10호
    • /
    • pp.11-23
    • /
    • 2012
  • 본 논문에서는 OpenRISC 프로세서의 코드 크기를 저감하는 새로운 압축 명령어 집합 구조를 제시한다. 새로운 명령어와 형식은 기존 명령어들의 사용 빈도와 용법에 대한 프로파일 정보에 의해 결정된다. 제시된 기법에서는 기존의 32비트 명령어들과 연속적인 명령어들을 각각 대체하는 새로운 16비트 명령어와 32비트 명령어를 도입한다. 제시된 명령어는 세 유형으로 분류할 수 있다. 첫 번째는 사용 빈도가 높은 기존의 덧셈, 로드, 저장, 분기 명령어 등의 32비트 명령어들을 대체하는 새로운 16비트 명령어들이다. 두 번째 유형은 사용 빈도가 높은 두 개의 연속적인 로드 명령어, 두 개의 연속적인 저장 명령어, 32비트 데이터 이동 명령어를 압축하는 새로운 32비트 명령어들이다. 마지막으로 함수 프롤로그와 에필로그 명령어들을 각각 하나로 압축하는 두 개의 새로운 32비트 명령어가 제시된다. 추가된 명령어들을 디코딩하기 위해서 OpenRISC 하드웨어 디코더 부분이 확장된다. OpenRISC 1200프로세서에서 실험을 수행한 결과, 성능 저하 없이 30.4%의 코드 크기를 절감한다.

가변길이 명령어 모드를 갖는 Embedded Microprocessor의 설계 (A Design of an Embedded Microprocessor with Variable Length Instruction Mode)

  • 박기현;오민석;이광엽;한진호;김영수;배영환;조한진
    • 대한전자공학회논문지SD
    • /
    • 제41권4호
    • /
    • pp.83-90
    • /
    • 2004
  • 본 논문은 메모리 크기의 제약을 많이 받는 내장형 마이크로프로세서의 문제를 해결하기 위해 32-bit 명령어와 24-bit, 16-bit 명령어를 혼합 사용하여 3가지 명령어 모드를 갖는 새로운 명령어 셋(X32V ISA)을 제안하였으며, 이를 기반으로 32-bit 5 stage pipeline RISC 마이크로프로세서를 설계하였다. 이를 검증하기 위해서 X32V ISA 전용 시뮬레이터를 이용하여 멀티미디어 프로그램의 프로그램 코드 사이즈를 산출하였다. 그 결과로 Light mode와 Ultra light mode는 Default mode에 비해 각각 최소 8%, 27%의 프로그램 코드 사이즈 감소를 확인하였으며, Xilinx FPGA를 이용하여 33MHz 동작 환경에서 X32V ISA의 모든 명령어 수행을 검증하였다.

내장형 신호처리를 위한 응용분야 전용 프로세서의 설계 (Design of An Application Specific Instruction-set Processor for Embedded DSP Applications)

  • 이성원;최훈;박인철
    • 대한전자공학회:학술대회논문집
    • /
    • 대한전자공학회 1999년도 추계종합학술대회 논문집
    • /
    • pp.228-231
    • /
    • 1999
  • This paper describes the design and implementation of an application specific instruction-set processor developed for embedded DSP applications. The instruction-set has an uniform size of 16 bits, and supports 3 types of instructions: Primitive, Complex, and Specific. To reduce code size and cycle count we introduce complex instructions that can be selected according to the application under consideration, which leads to 50% code size reduction maximally. The processor has two independent data memories to double the data throughput and the address space. The processor is synthesized by 0.6$\mu$m single-poly double-metal technology. Critical path simulation shows that the maximum frequency is 110MHz and total gate count is 132, 000.

  • PDF

크기효과를 고려한 고강도 콘크리트 보의 전단강도 예측식 제안 (Prediction of Shear Strength in High-Strength Concrete Beams Considering Size Effect)

  • 배영훈;윤영수
    • 한국콘크리트학회:학술대회논문집
    • /
    • 한국콘크리트학회 2003년도 봄 학술발표회 논문집
    • /
    • pp.878-883
    • /
    • 2003
  • To modify some problems of ACI shear provisions, ultimate shear strength equation considering size effect and arch action to compute shear strength in high-strength concrete beams without stirrups is presented in this research. Three basic equations, namely size reduction factor, rho factor, and arch action factor, are derived from crack band model of fracture mechanics, analysis of previous some shear equations for longitudinal reinforcement ratio, and concrete strut described as linear function in deep beams. Constants of basic equations are determined using statistical analysis of previous shear testing data. To verify proposed shear equation for each variable, namely d, , ρ, f/sub c/' and aid, about 250 experimental data are used and proposed shear equation is compared with ACI 318-99 code, CEB-FIP Model code, Kim & Park's equation and Zsutty's equation. While proposed shear equation is simpler than other shear equations, it is shown to be economical predictions and reasonable safety margin. Hence proposed shear strength equation is expected to be applied to practice shear design.

  • PDF