• 제목/요약/키워드: register allocation

검색결과 40건 처리시간 0.025초

레지스터 로드 트래픽 감소를 위한 JIT Code Generator에 스택할당 정책 적용 방안 연구 (A study stack allocation on JIT Code Generator for reducing register load traffic)

  • 송경남;김효남;원유헌
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2001년도 추계학술발표논문집 (하)
    • /
    • pp.1541-1544
    • /
    • 2001
  • Java virtual machine의 성능을 향상시키기 위해 "JIT(Just-in-Time)"code generator가 고안되었다[3], JIT code generator는 스택기반의 자바 바이트 코드를 레지스터 기반의 native machine code로 변환해 주는 역할을 수행하여 바이트 코드의 번역시간을 줄여준다. 그러나 JIT 는 많은 레지스터의 사용을 야기시키므로 효율적인 레지스터 allocation 정책이 필요하고 스택과 레지스터 간의 traffic 을 가중시킨다. 그러므로 본 논문에서는 자바 바이트 코드의 효율적인 stack allocation 정책을 JIT code generator에 적용함으로 레지스터와의 traffic을 줄이는 방법을 제시하였다.

  • PDF

SOC 설계 자동화를 위한 동적인 하드웨어 할당 및 바인딩 알고리즘 (A Dynamic Hardware Allocation and Binding Algorithm for SOC Design Automation)

  • 엄경민;인치호
    • 한국ITS학회 논문지
    • /
    • 제9권3호
    • /
    • pp.85-93
    • /
    • 2010
  • 본 논문에서는 SOC 설계 자동화를 위한 할당 및 바인딩을 동시에 수행하는 새로운 동적인 하드웨어 할당 및 바인딩 알고리즘을 제안한다. 제안된 알고리즘은 스케줄링의 결과를 입력으로 받아들이고, 각 기능 연산자에 연결된 레지스터 및 연결 구조가 최대한 공유하도록 제어스텝마다 연산과 기억 소자의 상호 연결 관계를 고려하여 기능 연산자, 연결 구조 및 레지스터를 동시에 할당 및 바인딩을 한다. 제안된 알고리즘은 각 시스템마다 비교 실험을 통하여 기존의 기능 연산자와 레지스터의 수를 미리 정했거나, 분리하여 수행한 방식들과 비교함으로서 제안된 알고리즘의 효용성을 보인다.

VLSI 설계를 위한 동시수행 하드웨어 자원 할당 및 바인딩 알고리듬 (A Simultaneous Hardware Resource Allocation and Binding Algorithm for VLSI Design)

  • 최지영
    • 한국통신학회논문지
    • /
    • 제25권10A호
    • /
    • pp.1604-1612
    • /
    • 2000
  • 본 논문에서는 VLSI설계를 위한 동시수행 하드웨어 할당 및 바인딩 알고리듬을 제안한다. 제안된 알고리듬은 스케쥴링 결과를 입력으로 받아들이고, 각 기능 연산자에 연결된 레지스터 및 연결 구조가 최대한 공유하도록 제어스텝마다 연산과 기억 소자의 상호연결 관계를 고려하여 기능 연산자, 연결 구조 및 레지스터를 동시에 할당 및 바인딩을 한다. 또한 레지스터 할당은 그래프 컬러링을 이용하여 최적의 레지스터 할당을 수행한다. 제안된 알고리듬은 실험 결과를 통해 기존의 기능 연산자와 레지스터의 수를 미리 정했거나, 분리하여 수행한 방식들과 비교함으로서 본 논문의 효율성을 보인다.

  • PDF

그래프 분할을 사용한 레지스터 할당의 성능 예측 (Performance Estimation of Register Allocation using Graph Partitioning)

  • 김원태;한경숙;표창우
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 1999년도 가을 학술발표논문집 Vol.26 No.2 (1)
    • /
    • pp.400-402
    • /
    • 1999
  • 그래프 분할을 사용한 레지스터 할당과 Chaitin의 레지스터 할당 방법의 성능을 비교하였다. 실험 데이터로 Appel이 제시한 간섭 그래프를 사용하였고, 각 알고리즘에서 요구되는 최소 레지스터 수를 비교하였다. 그 결과 그래프 분할을 사용한 방법에서 더 적은 수의 레지스터가 요구되었다. 가용 레지스터가 제한되어 있는 경우, 레지스터 요구 수가 감소되면 삽입되는 대피 코드의 수도 감소된다. 대피 코드의 발생이 줄어들면 메모리를 참조하는 인스트럭션의 수가 감소하여 실행시간을 단축시킬 수 있다. 따라서 컴파일러의 최적화 단계에서 그래프 분할 방법을 사용한 레지스터 할당으로 성능 향상을 기대할 수 있다.

  • PDF

다중 메모리 뱅크 구조를 위한 고속의 자료 할당 기법 (Rapid Data Allocation Technique for Multiple Memory Bank Architectures)

  • 조정훈;백윤홍;최준식
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2003년도 가을 학술발표논문집 Vol.30 No.2 (1)
    • /
    • pp.196-198
    • /
    • 2003
  • Virtually every digital signal processors(DSPs) support on-chip multi- memory banks that allow the processor to access multiple words of data from memory in a single instruction cycle. Also, all existing fixed-point DSPs have irregular architecture of heterogeneous register which contains multiple register files that are distributed and dedicated to different sets of instructions. Although there have been several studies conducted to efficiently assign data to multi-memory banks, most of them assumed processors with relatively simple, homogeneous general-purpose resisters. Therefore, several vendor-provided compilers fer DSPs were unable to efficiently assign data to multiple data memory banks. thereby often failing to generate highly optimized code fer their machines. This paper presents an algorithm that helps the compiler to efficiently assign data to multi- memory banks. Our algorithm differs from previous work in that it assigns variables to memory banks in separate, decoupled code generation phases, instead of a single, tightly-coupled phase. The experimental results have revealed that our decoupled algorithm greatly simplifies our code generation process; thus our compiler runs extremely fast, yet generates target code that is comparable In quality to the code generated by a coupled approach

  • PDF

ILP 프로세서를 위한 개선된 레지스터 할당 기법 (An Improved Register Allocation Technique for ILP Processors)

  • 신화정;이기호
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제28권2호
    • /
    • pp.201-209
    • /
    • 2001
  • 고성능 마이크로 프로세서들은 성능 향상을 위해 ILP를 지원한다. 병렬성을 극대화시키기 위해서는 많은 성능 저해 요인들을 제거해야 한다. 최근에는 컴파일러의 역할을 증대시켜 이러한 요인들을 줄이기 위한 노력들이 활발히 진행되고 있다. 본 논문에서는 성능 저해 요인인 조건 분기 처리를 위하여 조건 실행과 레지스터 할당을 결합함으로써 메모리로의 대피를 최소화하고 병렬성을 향상시킬 수 있는 개선된 레지스터 할당 알고리즘을 제안한다. 제안한 방법을 적용하여 실험한 결과 간섭 그래프의 에지수가 4.47% 감소되었고 그 결과 요구되는 대피 변수의 수도 21.35% 감소되었다. 그리고 기존의 방법에 비해 19.38%의 성능 향상 결과를 얻었다. 결국 본 레지스터 할당 기법은 조건 실행을 통해 조건 분기 명령을 제거하여 기본 블록 내의 명령어 수를 증가시켜 병렬처리의 기회를 증진시키고 조건 분석을 통해 간섭 그래프의 불필요한 에너지를 제거시켜 보다 효율적인 레지스터 할당을 실현함으로써 제안한 방법의 타당성을 검증하였다.

  • PDF

Dalvik 가상 머신 레지스터 할당 기법 (Register Allocation Scheme for Dalvik Virtual Machine)

  • 김지홍;김인혁;엄영익
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2011년도 한국컴퓨터종합학술대회논문집 Vol.38 No.1(A)
    • /
    • pp.570-573
    • /
    • 2011
  • Dalvik 가상 머신은 최적화가 쉽지 않았던 스택 기반의 가상 머신인 자바 가상 머신(JVM)과 달리 레지스터 기반의 가상 머신이므로 여러 최적화 기법을 적용할 수 있다. 따라서 Dalvik 가상 머신을 위한 새로운 레지스터 할당기법이 필요하다. 본 논문에서는 dx tool을 거친 레지스터 기반의 Dalvik byte code를 레지스터 재 할당하여 최적화하고, 이를 Dalvik JIT으로 보내어 다시 한번 레지스터 재할당 함으로써 최적화 효율을 높일 수 있는 최적화 기법을 제안하였다. 또한 제안 기법과 Dalvik JIT의 복잡도를 비교함으로써 제안기법을 검증하였다.

지정 레지스터 수 증가 최소화와 노드 병합을 이용한 레지스터 할당 (Register Allocation Minimally Incrementing the Number of Assigned Registers and Using Node Merging)

  • 박승진;한경숙;표창우
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2003년도 추계학술발표논문집 (상)
    • /
    • pp.329-332
    • /
    • 2003
  • 노드 병합을 이용한 레지스터 할당 방법은 그래프 감축 단계에서 블록 되었을 경우 효율적인 비용 계산을 이용하여 그래프 감축이 지속될 가능성을 발생시키는 방법이다. 이와 함께 지정 레지스터 수의 증가를 최소화하는 레지스터 할당 방법은 컬러링 과정에서 좀더 적은 수의 레지스퍼를 사용하도록 하기 위하여 제안된 방법이다. 이 두 가지 알고리즘을 함께 적용한 경우 기존의 레지스터 할당 알고리즘 보다 우수한 결과를 보였다. Appel 의 간섭 그래프들을 사용하여 제시된 레지스터 할당 방법과 Briggs의 알고리즘을 비교할 때 500 개 이상의 에지를 포함하는 그래프중에 5.81%의 그래프에서 레지스터 요구 수가 감소되었다. 제시된 알고리즘은 코드 길이가 길거나 사용가능한 레지스터 수가 적은 경우에 좋은 성능을 가져올 것으로 예측한다.

  • PDF

짧은 지연 시간 태스크를 지원하는 타이머 기반 크레딧 스케줄러 (Timer-based Credit Scheduler for Supporting Low Latency Task)

  • 김병기;고영웅
    • 대한임베디드공학회논문지
    • /
    • 제7권4호
    • /
    • pp.193-199
    • /
    • 2012
  • Virtualization allows multiple commodity operating systems to share on a single physical machine. Resource allocation among virtual machines is a key to determine virtual machine performance. To satisfy time-sensitive task on a domain, hypervisor needs to observe the resource requirements and allocates proper amount of CPU resources in a timely manner. In this paper, we propose a realtime credit scheduler for latency sensitive application on virtual machines. The key idea is to register a time event in the Xen hypervisor. Experiment result shows that the proposed scheme is superior to Credit scheduler.

Interconnection 최적화를 위한 연산 스케쥴링에 관한 연구 (A Study on Operation Scheduling for Interconnection Optimization)

  • 신인수
    • 한국컴퓨터정보학회논문지
    • /
    • 제7권2호
    • /
    • pp.40-45
    • /
    • 2002
  • 본 연구는 상위수준합성에서의 데이터패스합성을 위한 스케쥴링을 다루었다. 특히, 연산자 할당에 필요한 상호연결선을 최적화하기 위한 스케쥴링 방법을 제안하였다. 또한 최적의 스케쥴링 결과를 얻기 위하여 ILP 수식을 이용하였고 본 연구의 효용성을 검증하기 위하여 5차 디지털 웨이브 필터를 대상으로 실험한 결과 기존의 결과 보다 나은 결과를 나타내었다.

  • PDF