• 제목/요약/키워드: Execution Code

검색결과 295건 처리시간 0.022초

시간 지원 데이타 베이스 관리 시험대 (Temporal Database Management Testbed)

  • 김동호;전근환
    • 한국정보처리학회논문지
    • /
    • 제1권1호
    • /
    • pp.1-13
    • /
    • 1994
  • 시간 지원 데이타베이스 관리 시험대는 유효시간과 수록 시간을 지원한다. 본 논문 에서는 시간 지원 데이타베이스 관리 시스템 시험대의 설계와 구현을 연구한다. 시험대는 구문 분석기, 의미 분석기, 코드 생성기 및 실행기로서 구성된다. 구문 분 석기는 시간 지원 질의어로부터 파스 트리를 생성한다. 그리고 의미 분석기는 시스템 카탈로그를 이용하여 시간 지원 질의어의 의미와 정당성을 점검한다. 코드 생성기는 Updata network와 같은 실행 트리를 생성하는데 실행 트리를 위하여 뷰 증진 형성 방 법을 사용하였다. 마지막으로 인덱싱 구조와 동시성 제어에 대하여 토의하였다.

  • PDF

On-line Trace Based Automatic Parallelization of Java Programs on Multicore Platforms

  • Sun, Yu;Zhang, Wei
    • Journal of Computing Science and Engineering
    • /
    • 제6권2호
    • /
    • pp.105-118
    • /
    • 2012
  • We propose two new approaches that automatically parallelize Java programs at runtime. These approaches, which rely on run-time trace information collected during program execution, dynamically recompile Java byte code that can be executed in parallel. One approach utilizes trace information to improve traditional loop parallelization, and the other parallelizes traces instead of loop iterations. We also describe a cost/benefit model that makes intelligent parallelization decisions, as well as a parallel execution environment to execute parallelized programs. These techniques are based on Jikes RVM. Our approach is evaluated by parallelizing sequential Java programs, and its performance is compared to that of the manually parallelized code. According to the experimental results, our approach has low overheads and achieves competitive speedups compared to the manually parallelizing code. Moreover, trace parallelization can exploit parallelism beyond loop iterations.

RISC 아키텍춰의 코드 생성기 설계 (The Design of A Code Generator for RISC Architecture)

  • 박종덕;임인칠
    • 대한전자공학회논문지
    • /
    • 제27권8호
    • /
    • pp.1221-1230
    • /
    • 1990
  • This paper presents a code generation method and an effective handling algorithm of ingeger constant multiplication for RISC machines in compiler design. As RISC Architectures usually use faster and more simply formed instructions than CISC's and most RISC processors do not have an integer multiplication instruction, it is required an effective algorithm to process integer multiplication. For the proposed code generator, Portable C Compiler(PCC) is redesigned to be suitable for an RISC machine, and composed an addition chain is built up to allow fast execution of constant multiplication, a part of integer one whicch appears very frequency in code generation phase.

  • PDF

에필로그 테일러된 프로시저를 위한 프롤로그 테일러링 기법 (Prolog Tailoring Technique on Epilog Tailored Procedures)

  • 지윤찬;김기창
    • 한국정보처리학회논문지
    • /
    • 제5권5호
    • /
    • pp.1345-1356
    • /
    • 1998
  • 본 논문은 컴파일러에 의해 생성된 목적 코드상의 프로시저의 수행 속도를 향상시키기 위한 방안으로, 프롤로그 테일러링 알고리즘을 제안한다. 레지스터의 수가 많은 기계에서 반복 수행되는 프로시저의 경우, 프롤로그와 에필로그에서 실행되는 레지스터 저장 및 복원 명령어를 줄이는 것은 프로시저 실행 속도 향상의 주요 작업이 된다. IBM XL C 컴파일러에서 제공되는 에필로그 테일러링은 실행 경로상의 레지스터 복원 명령어를 줄임으로써, 프로시저 성능 향상에 기여해왔으나, 프롤로그 테일러링에 대한 구체적 알고리즘은 현재 제안되어 있지 않다. 본 논문이 제안하는 알고리즘에 의해 생성된 프롤로그는 각각의 실행 경로에 대해 현저히 감소된 수의 레지스터 저장 명령을 실행하도록 함으로써, 프로시저의 실행 속도를 개선시킨다. 테일러된 프롤로그를 갖는 프로시저가 바르게 실행되기 위해서는, 다이아몬드 구조나 반복 구조 내분에 레지스터 저장 명령을 생성해서는 안된다. 그러므로, 본 논문은 다이아몬드 구조나 반복 구조 내부가 아닌 최적의 위치에 레지스터 저장 명령을 생성하는 알고리즘을 제안한다.

  • PDF

Variable Length Execution Set을 지원하는 VLIW 아키텍처를 위한 소프트 에러 검출 기법 (Soft Error Detection for VLIW Architectures with a Variable Length Execution Set)

  • 이종원;조두산;백윤흥
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제2권3호
    • /
    • pp.111-116
    • /
    • 2013
  • 공정 기술의 발전으로 인해 내장형 시스템에서 소프트 에러 발생 비율이 크게 증가하고 있다. 고성능, 저전력을 특징으로 하는 VLIW 아키텍처가 내장형 시스템에 널리 사용되어 왔는데, 이러한 VLIW 아키텍처에서 명령어 복제를 통해 소프트 에러를 감지하여 신뢰도를 높이고자 하는 연구가 진행되어 왔다. 하지만 기존 연구는 대부분의 상용 VLIW 아키텍처가 코드 크기 감소를 위해 사용하는 VLES 를 고려하지 않고 이루어졌다. 명령어 복제를 통한 신뢰도 향상을 위한 연구가 실용성 및 적용성을 갖추기 위해서는 VLES 를 지원하는 VLIW 아키텍처에 대해 이루어져야 한다. 이에 본 논문에서는 VLES 를 지원하는 VLIW 아키텍처에서 명령어 복제를 위해 필요한 설계 방법을 논하고 이에 따른 실험 결과를 제시하였다. 실험 결과 VLES 를 지원하지 않을 경우에 비해 약 4% 정도의 추가적인 하드웨어 비용을 들여 평균 64% 정도에 달하는 코드 크기 감소 효과를 얻을 수 있었고, 또한 실행 시간에는 추가적인 손실이 발생하지 않음을 알 수 있었다.

내장형 자바 시스템을 위한 클라이언트 선행 컴파일 기법을 이용한 코드 캐시 확장 (Expanding Code Caches for Embedded Java Systems using Client Ahead-Of-Time Compilation)

  • 홍성현;김진철;신진우;권진우;이주환;문수묵
    • 한국정보과학회논문지:컴퓨팅의 실제 및 레터
    • /
    • 제16권8호
    • /
    • pp.868-872
    • /
    • 2010
  • 많은 내장형 자바 시스템들이 제한된 메모리를 가지고 있으므로 JITC를 위해 충분한 코드 캐시가 주어지지 않아 자바의 수행 성능이 떨어질 수 있다. 본 논문에서는 이를 극복하고자 수행 중에 코드 캐시 공간이 부족하면 일부 메소드의 머신 코드를 영구적 메모리의 파일 시스템에 저장해 두었다가 재호출 때에 다시 코드 캐시로 읽어와서 재활용하는 코드 캐시를 확장하는 수행 방식을 제안한다. 이는 기존의 클라이언트 선행 컴파일 기법을 수행 중에 코드 캐시 확장을 위해 적용한 것이다. 우리가 제안한 자바 수행 구조는 코드 캐시가 반으로 줄었을 때의 일반적인 자바 수행 방식보다 1.6배 좋은 성능을 보여주고 있다.

실행코드 비교 감정에서 주변장치 분석의 유효성 (Study on the comparison result of Machine code Program)

  • 김도현;이규대
    • 한국소프트웨어감정평가학회 논문지
    • /
    • 제16권1호
    • /
    • pp.37-44
    • /
    • 2020
  • 소프트웨어의 유사성 비교는 소스코드를 대상으로 한다. 소스코드는 프로그램 언어로 표현된 개발자의 지적 저작권으로 보호된다. 문서형식으로 작성된 프로그램 소스코드는 개발자의 전문지식과 아이디어가 포함된 내용을 포함하고 있다. 소프트웨어 저작권의 불법도용을 판단하기 위한 감정 작업은 원본과 비교본의 소스 코드를 대상으로 파일의 구성과 내용을 검증하는 방법으로 수행된다. 그러나 실제적으로 피고소인 측의 불성실한 목적물 제공으로 소스코드의 일대일 비교감정이 어려운 상황이 증가하고 있다. 이 경우 실행코드에 대한 비교감정이 수행되어야 하며, 역어셈블 방법, 역공학기법, 기능실행의 시퀀스 분석 등의 간접적인 방법이 적용된다. 본 논문에서는 소스코드제공이 어려운 상황에서 시스템과 실행코드 파일을 대상하는 하는 감정 사례를 통해 간접적인 비교결과의 유효성에 대해 분석하고, 감정결과에 활용하는 방안을 제시한다.

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

  • 이창환;오세만
    • 한국멀티미디어학회논문지
    • /
    • 제9권9호
    • /
    • pp.1247-1256
    • /
    • 2006
  • 가상 기계란 하드웨어로 이루어진 물리적 시스템과는 달리 소프트웨어로 제작되어 논리적인 시스템 구성을 갖는 개념적인 컴퓨터이다. 그러나 가상 기계는 실제 프로세서로 처리하는 것보다 실행 속도가 매우 느리기 때문에 실행되는 코드의 최적화가 매우 중요하다. 본 논문은 가상 기계 코드 최적화기의 실험대상으로 EVM(Embedded Virtual Machine)의 중간 코드인 SIL(Standard Intermediate Language)을 이용하였다. 현존하는 최적화 방법론에 관한 연구를 통하여 가상 기계 코드 특성을 고려한 최적화 방법론을 제시하고, 최적화된 코드를 생성하기 위한 코드 최적화기를 설계하고 구현하였다. 가상 기계 코드 최적화기는 주어진 패턴을 찾아서 패턴에 해당하는 부분을 최적화 코드로 바꾸어, 전체 코드의 크기를 줄이고 실행 속도의 개선효과를 가진다. 또한, 구현된 최적화기의 실험 결과를 도출하였다.

  • PDF

Building a Dynamic Analyzer for CUDA based System.

  • SALAH T. ALSHAMMARI
    • International Journal of Computer Science & Network Security
    • /
    • 제23권8호
    • /
    • pp.77-84
    • /
    • 2023
  • The utilization of GPUs on general-purpose computers is currently on the rise due to the increase in its programmability and performance requirements. The utility of tools like NVIDIA's CUDA have been designed to allow programmers to code algorithms by using C-like language for the execution process on the graphics processing units GPU. Unfortunately, many of the performance and correctness bugs will happen on parallel programs. The CUDA tool support for the parallel programs has not yet been actualized. The use of a dynamic analyzer to find performance and correctness bugs in CUDA programs facilitates the execution of sophisticated processes, especially in modern computing requirements. Any race conditions bug it will impact of program correctness and the share memory bank conflicts to improve the overall performance. The technique instruments the programs in a way that promotes accessibility of the memory locations accessed by different threads well as to check for any bugs in the code of a program. The instrumented source code will be used initiated directly in the device emulation code of CUDA to send report for the user about all errors. The current degree of automation helps programmers solve subtle bugs in highly complex programs or programs that cannot be analyzed manually.

Development of a drift-flux model based core thermal-hydraulics code for efficient high-fidelity multiphysics calculation

  • Lee, Jaejin;Facchini, Alberto;Joo, Han Gyu
    • Nuclear Engineering and Technology
    • /
    • 제51권6호
    • /
    • pp.1487-1503
    • /
    • 2019
  • The methods and performance of a pin-level nuclear reactor core thermal-hydraulics (T/H) code ESCOT employing the drift-flux model are presented. This code aims at providing an accurate yet fast core thermal-hydraulics solution capability to high-fidelity multiphysics core analysis systems targeting massively parallel computing platforms. The four equation drift-flux model is adopted for two-phase calculations, and numerical solutions are obtained by applying the Finite Volume Method (FVM) and the Semi-Implicit Method for Pressure-Linked Equation (SIMPLE)-like algorithm in a staggered grid system. Constitutive models involving turbulent mixing, pressure drop, and vapor generation are employed to simulate key phenomena in subchannel-scale analyses. ESCOT is parallelized by a domain decomposition scheme that involves both radial and axial decomposition to enable highly parallelized execution. The ESCOT solutions are validated through the applications to various experiments which include CNEN $4{\times}4$, Weiss et al. two assemblies, PNNL $2{\times}6$, RPI $2{\times}2$ air-water, and PSBT covering single/two-phase and unheated/heated conditions. The parameters of interest for validation include various flow characteristics such as turbulent mixing, spacer grid pressure drop, cross-flow, reverse flow, buoyancy effect, void drift, and bubble generation. For all the validation tests, ESCOT shows good agreements with measured data in the extent comparable to those of other subchannel-scale codes: COBRA-TF, MATRA and/or CUPID. The execution performance is examined with a mini-sized whole core consisting of 89 fuel assemblies and for an OPR1000 core. It turns out that it is about 1.5 times faster than a subchannel code based on the two-fluid three field model and the axial domain decomposition scheme works as well as the radial one yielding a steady-state solution for the OPR1000 core within 30 s with 104 processors.