• 제목/요약/키워드: 코드 최적화

검색결과 480건 처리시간 0.033초

임베디드 시스템에서 DSP를 위한 메모리 접근 변수 저장의 최적화 ILP 알고리즘 (An Optimal ILP Algorithm of Memory Access Variable Storage for DSP in Embedded System)

  • 장정욱;인치호
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제2권2호
    • /
    • pp.59-66
    • /
    • 2013
  • 본 논문에서는 임베디드 시스템에서 DSP를 위한 메모리 접근 변수의 저장 방법에 대한 최적화 ILP 알고리즘을 제안하였다. 본 논문은 0-1 ILP 공식을 이용하여 DSP 주소 생성 유닛의 메모리 변수 데이터 레이아웃을 최소화한다. 제약 조건을 기반으로 변수의 메모리 할당 여부를 식별하고, 변수가 지시하는 주소코드를 프로그램 포인터에 등록한다. 프로그램의 처리 순서가 프로그램 포인터에 선언되면, 해당 변수의 주소코드에 대한 자동증감 모드를 적용한다. 주소 레지스터에 대한 로드를 최소화하여 변수의 데이터 레이아웃을 최적화한다. 본 논문에서 제안한 알고리즘의 효율성을 입증하기 위하여 FICO Xpress-MP Modeling Tools을 이용하여 벤치마크에 적용하였다. 벤치마크 적용 결과, 기존의 선언적 주문 메모리 레이아웃보다 제안한 알고리즘을 적용한 최적의 메모리 레이아웃이 주소/수정 레지스터에 대한 로드 수를 감소시켰고, 주소코드의 접근을 줄임으로써, 프로그램의 실행 시간을 단축시켰다.

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

  • 박종득;임인칠
    • 대한전자공학회논문지
    • /
    • 제27권3호
    • /
    • pp.40-46
    • /
    • 1990
  • 본 논문에서는 RISC 컴파일러 시스템 구현에 필요한 기계독립적인 광역적 최적화부(global optimizer)의 설계 방식을 제안하고 실현한다. 제안된 최적화부는 트리플 표현을 입력으로 받아 데이터 흐름 분석 및 공통부식제거와 코드 이동을 수행하고 최적화된 트리플 표현을 출력시킨다. 본 최적화부는 기계 독립적인 중간언어를 대상으로 하기 때문에 다양한 고급언어와 타겟 머신에 대해서 이식성이 용이하며 프로그램의 실행속도를 향상시킬 수 있는 효율적인 최적화를 수행하도록 구성된다.

  • PDF

MDO 프레임워크 개발을 통한 항공기 날개 통합최적화 설계 (Multidisciplinary Aircraft Wing Design Using the MDO Framework)

  • 이재우;김종환;정주영;전권수;변영환
    • 한국항공우주학회지
    • /
    • 제32권6호
    • /
    • pp.23-33
    • /
    • 2004
  • 다분야 통합 최적화 설계 환경을 제공하는 소프트웨어 체계인 MDO 프레임워크 개발을 위해서는 다양한 운영체계와 언어에서 개발된 해석코드들의 통합, CAD 및 데이터베이스 시스템과의 통합, 복잡한 GUI 환경의 구현 등이 필수적으로 요구되고 해석코드의 추가, 새로운 MDO 기법의 도입에 따른 수정 및 확장에 대한 고려가 충분히 이루어져야 한다. 본 논문에서는 MDO 프레임워크의 설계단계부터 고려되어야 할 사항들과 각 구성요소들의 시스템 통합 방법을 연구, 적용 방안을 제시하며 이를 바탕으로 비행체 통합 최적설계 시스템 환경을 구현하였다. MDF 및 CO 기법 등 대표적인 MDO 기법을 적용할 수 있는 데이터베이스 설계과정을 정립하고, 구현된 통합 최적설계 시스템을 이용하여 전투기 날개 형상 최적 설계를 수행하여 개발된 MDO 프레임워크의 효율성 및 유용성을 검증하였다. 구배 기반 최적화 기법을 이용하여 삼십번의 설계 반복으로 최적 날개 형상을 도출하였다.

컬러와 혈관징후패턴 코드 생성에 의한 공막진단시스템 구현 (Scleral Diagnostic System Implementation with Color and Blood Vessel Sign Pattern Code Generations)

  • 류광렬
    • 한국정보통신학회논문지
    • /
    • 제18권12호
    • /
    • pp.3029-3034
    • /
    • 2014
  • 이 논문은 사람 눈의 공막컬러코드와 공막혈관징후패턴코드 생성에 의한 공막진단시스템 구현에 관한 연구이다. 시스템은 고성능 DSP 영상처리 프로세서를 기반으로 PGC 프로그램어불 게인제어 선처리 및 RISC SD프레임저장 메모리 등으로 구성된다. PGC는 RGB신호를 최적화하고 그래리 영상에서 에지가 검출된다. 판별 및 매칭 처리알고리듬은 공막컬러코드화 및 혈관징후패턴코드 생성을 실행된다. 공막컬러코드는 메모리 맵의 위치에서 YCbCr값을 구하고 허용오차 범위를 적용하여 생성된다. 혈관징후패턴코드는 24시간등분과 13환형등분 구역에 의해 디지털화 되고 중첩매칭과 허용오차 적용에 의해 코드화된다. 실험결과 성능에서 시스템은 40ms로 동작하고 진단오차는 컬러판별이 평균 약20%, 혈관징후패턴 매칭이 약 24%이다. 이 시스템 및 기술은 세분화와 환자데이터베이스화 하면 공막진단 의용시스템으로 사용 할 수 있다.

TraceMonkey 자바스크립트 엔진의 인터프리터에서 루프 수행 최적화 방안 (Optimization of the Execution of the Loop for the TraceMonkey Interpreter)

  • 박혁우;문수묵
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2011년도 한국컴퓨터종합학술대회논문집 Vol.38 No.1(B)
    • /
    • pp.398-400
    • /
    • 2011
  • 자바스크립트는 현재 웹 사이트에서 클라이언트 사이드 프로그래밍의 언어로 널리 쓰이고 있다. 최근 들어 RIA(Rich Internet Application)의 등장과 함께 모바일 환경에서의 인터넷 접속이 증가하면서 자바스크립트 언어의 수행 성능이 중요한 이슈가 되고 있다. 본 논문에서는 자바스크립트 엔진 중 하나인 TraceMonkey에서 인터프리터로 루프(Loop) 수행 시 타입 체크 오버헤드 제거와 슈퍼바이트 코드 최적화를 적용하여 성능 향상을 꾀하고 이를 평가하고자 한다.

자바 적시 컴파일에서의 조건 수행을 이용한 비어 있는 포인터의 조기검사 (Early Null Pointer Check using Predication in Java Just-In-Time Compilation)

  • 이상규;최형규;문수묵
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제32권7호
    • /
    • pp.683-692
    • /
    • 2005
  • 자바에서는 어떤 객체에 접근하는 작업을 할 때마다 항상 해당 객체에 대한 레퍼런스가 널 (Null)인지 여부를 먼저 검사하도록 규정하고 있다. 자바 언어는 객체 중심 언어이기 때문에 객체 접근이 빈번하며 이러한 널 포인터 검사는 자바 프로그램의 성능을 크게 저하시킬 수 있다. 이러한 성능 저하를 줄이기 위한 방법으로 불필요하게 반복되는 널 포인터 검사를 제거하는 기법이 사용되고 있다. 즉, 적시 (Just-in-Time, JIT) 컴파일러가 사용되는 자바 수행 환경에서 코드 분석을 통해 불필요한 널 포인터 검사 코드를 제거하는 최적화를 한다. 본 논문은 JIT 컴파일러 수행 환경에서 조건 수행(predication)이라는 최근 마이크로프로세서의 특징을 이용하여, 기존의 최적화로는 제거할 수 없는 널 포인터 검사 코드를 추가로 없애는 방법을 제시한다. 일반적으로 널 포인터 검사 코드는 비교와 분기 두 명령어로 이루어져 있는데, 그 중에 비교 명령어를 객체를 사용하기 전에 수행하는 것이 아니라 객체가 정의된 직후에 미리 수행하도록 함으로써 널 포인터 검사를 위해 수행되는 총 비교 명령어 수를 줄이는 것이 이 방법의 주된 내용이다. 실험 결과 기존의 널 포인터 제거로 최적화된 코드에 비해 수행된 비교 명령어의 수는 SPECjvm98에서 평균 3.21$\%$줄었고, 생성된 비교 명령어 수는 1.98$\%$ 줄었다. 이는 인텔 IA-64 아이테니엄(Itanium) 컴퓨터에서 평균 0.32$\%$의 성능 향상을 가져왔다.

천음속 날개꼴의 Multi-point 수치최적화 설계에 관한 연구 (A Study of Multi-point Numerical Optimization Design for Transonic Airfoils)

  • 손명환;권성재
    • 한국군사과학기술학회지
    • /
    • 제1권1호
    • /
    • pp.145-153
    • /
    • 1998
  • 천음속 날개꼴의 수치최적화 설계에 있어서, 하나의 흐름조건에 의해 설계된 날개꼴의 공력특성은 다른 흐름조건에서 나쁜 특성을 나타낼 수 있다. 따라서, 실용적인 날개꼴의 설계를 위해서 multi-point 수치최적화 설계능력은 필수적인 요소이다. 본 논문에서는 Navier-Stokes 방정식 흐름해석 코드와 feasible direction 최적화 알고리즘을 이용하여 two-point 수치최적화 설계를 수행하였으며, 가중치가 수치최적화 설계에 주는 영향을 분석하고 비교하였다. 그 결과로서 two-point수치최적화 설계된 날개꼴이 두 흐름조건의 주변영역에서 동시에 요구 공력특성을 만족시키며, 가중치가 큰 방향으로 최적화 설계됨을 확인하였다.

  • PDF

객체지향 기반의 Refactoring 프로세스 (Object-Oriented based Refactoring Process)

  • 이종호;박진호;류성열
    • 한국정보과학회논문지:컴퓨팅의 실제 및 레터
    • /
    • 제7권4호
    • /
    • pp.299-308
    • /
    • 2001
  • 기업에서는 급속한 컴퓨터 환경 변화 및 사용자 요구 증가 등의 요구들에 대응하기 위하여 많은 시간과 비용을 들여 기 개발되어 운영중인 시스템을 유지보수 한다. 하지만 대부분 임시적인 이러한 작업들은 많은 코드의 중복과 최적화 되지 않은 시스템 구조를 산출하여 결국에는 전체적인 성능 저하를 가져오는 등의 문제를 발생시키게 된다. 또한 초기 개발 후 다른 개발자에 의해 작성된 코드는 개발관련 문서의 분실 및 부족, 기존 시스템 개발자의 부재 등의 문제로 코드의 이해와 재사용의 어려움 등의 한계점을 갖게 되었다. 이번 연구는 이러한 코드 재사용의 한계를 극복하기 위하여 객체단위를 재사용 할 수 잇는 객체지향 기반의 Refactoring 프로세스를 제시하고, 이를 D사에서 개발한 윈도우 시스템 개발 도구인 D2D에 적용한다. 또한 이의 과정에서 얻어진 시스템 성능 향상과 개발 및 유지보수 비용의 감소, 구조와 클래스들의 최적화 등의 실제적인 효과 증대 사례를 보인다.

  • PDF

CTOC에서 루프 벗기기 구현 (Implementation of Loop Peeling in CTOC)

  • 김기태;김제민;유원희
    • 한국컴퓨터정보학회논문지
    • /
    • 제13권5호
    • /
    • pp.27-35
    • /
    • 2008
  • 최근 웹 어플리케이션 분야에서 많이 사용되고 있는 자바 바이트코드의 분석과 최적화 과정을 효율적으로 수행하기 위해 CTOC 프레임워크를 개발하였다. CTOC는 바이트코드에 대해 분석과 최적화를 수행하기 위해 E-Tree를 중간 표현으로 사용하는 eCFG를 생성한다. eCFG는 바이트코드에 대한 제어 흐름 분석에 적합하도록 확장한 제어 흐름 그래프이다. 또한, 바이트코드를 정적으로 분석하기 위해 E-Tree를 SSA Form으로 변환한다. 이러한 변환과정 중 프로그램의 많은 부분에서 루프가 발견된다. 하지만 기존의 CTOC에서는 루프에 대한 처리를 수행하지 않은 상태에서 직접 SSA Form으로 변환을 수행하였다. 하지만 SSA Form으로 변환 이전에 루프를 처리하면 더욱 효율적인 SSA Form을 생성할 수 있게 된다. 따라서 본 논문에서는 루프에 대한 처리를 효율적으로 하기 위해 E-Tree를 SSA Form으로 변환하는 과정 이전에 eCFG에서 루프를 발견하고 이와 관련된 루프 트리를 생성한 후 루프 벗기기를 수행하는 과정을 보인다.

  • PDF

모바일 기반 OpenCV 라이브러리를 이용한 마커리스 객체 인식 성능 향상 (Performance improvement for marker-less object recognition through OpenCV mobile library)

  • 정현섭;윤희원;김신덕
    • 한국컴퓨터정보학회:학술대회논문집
    • /
    • 한국컴퓨터정보학회 2013년도 제48차 하계학술발표논문집 21권2호
    • /
    • pp.61-64
    • /
    • 2013
  • 본 논문에서는 모바일 기반 OpenCV 라이브러리를 이용한 마커리스 객체 인석 성능 향상을 위한 소프트웨어적인 관점의 방법을 제안한다. 기존의 마커리스 기반 알고리즘을 이용하여 테스트를 수행한 후 성능에 저하를 발생시키는 요인들을 분석하고 그에 따른 상황별 적절한 해결책을 제시한다. 이에 따라 크게 프로그램 코드 개선, 마커리스 기반 알고리즘 코드 개선, 센서를 활용한 성능 향상을 도모한다. 프로그램 코드 개선은 테스트 결과를 분석 한 후 수행시간이 가장 많이 소요되는 함수를 최적화하고 또한 최적의 특징점의 수를 제한한다. 마커리스 기반 알고리즘 코드 개선은 병렬 처리가 제공되는 모바일에 한하여 병렬처리기법으로 코드를 수정한다. 마지막 센서를 활용한 성능향상은 실시간 작업 처리 단위를 묶음으로 처리하였을 때 발생하는 품질의 저하를 보정하는 역할을 수행한다. 본 논문에서는 이러한 마커리스 객체 인식 성능 향상 방법을 소프트웨어적인 관점에서 제안하고 이에 대한 결과 모바일 기반 실시간 증강현실 서비스를 위한 성능 향상 면에서 효과적이다.

  • PDF