• 제목/요약/키워드: data level parallelism

검색결과 47건 처리시간 0.027초

정적 포워딩에 의한 VLIW 프로세서의 데이터 hazard 처리 (Static forwardin: an approach to reduce data hazards in VLIW processor)

  • 박형준;김이섭
    • 전자공학회논문지C
    • /
    • 제35C권2호
    • /
    • pp.1-9
    • /
    • 1998
  • To achieve high performance in VLIW processors, they must exploit the parallelism on application programs. Data dependency makes it difficult to find the instruction-level parallelism. Among the three kinds of data dependency, true dependency causes RAW(Read After Wirte) hazards that occur most frequently in VILW processors. Forwarding is a widely used technique to reduce the performance degradation caused by RAW hazards. However, forwarding requires too much area of the chip when it is applied to VLIW processors. In this paper, static forwarding is proposed to reduce the hardware cost of forwarding circuits. It needs an extended compiler to detect RAW hazards and control the proposed forwarding scheme via instruction. And it uses the modified register file to shrink the area of forwarding path. VLIW Processor Model is also designed to verify static forwarding. This paper describes the operation of static forwarding and the comparison with the conventional forwarding.

  • PDF

Latency Hiding based Warp Scheduling Policy for High Performance GPUs

  • Kim, Gwang Bok;Kim, Jong Myon;Kim, Cheol Hong
    • 한국컴퓨터정보학회논문지
    • /
    • 제24권4호
    • /
    • pp.1-9
    • /
    • 2019
  • LRR(Loose Round Robin) warp scheduling policy for GPU architecture results in high warp-level parallelism and balanced loads across multiple warps. However, traditional LRR policy makes multiple warps execute long latency operations at the same time. In cases that no more warps to be issued under long latency, the throughput of GPUs may be degraded significantly. In this paper, we propose a new warp scheduling policy which utilizes latency hiding, leading to more utilized memory resources in high performance GPUs. The proposed warp scheduler prioritizes memory instruction based on GTO(Greedy Then Oldest) policy in order to provide reduced memory stalls. When no warps can execute memory instruction any more, the warp scheduler selects a warp for computation instruction by round robin manner. Furthermore, our proposed technique achieves high performance by using additional information about recently committed warps. According to our experimental results, our proposed technique improves GPU performance by 12.7% and 5.6% over LRR and GTO on average, respectively.

멀티코어 프로세서의 쓰레드-수준 병렬성을 활용한 AES-CCM 계산-통신 중첩화 (Computation-Communication Overlapping in AES-CCM Using Thread-Level Parallelism on a Multi-Core Processor)

  • 이은지;이성주;정용화;이명호;민병기
    • 한국정보과학회논문지:컴퓨팅의 실제 및 레터
    • /
    • 제16권8호
    • /
    • pp.863-867
    • /
    • 2010
  • 최근 멀티코어 프로세서들이 범용 PC 뿐만 아니라 임베디드 시스템에서도 탑재될 만큼 그 사용이 보편화되고 있는 상황에서, 많은 멀티미디어 응용 프로그램이 이들을 활용하여 병렬화 되고 있다. 그러나 멀티미디어 데이터의 암호화와 같이 응용 프로그램에 데이터 종속성이 내재한 경우에는 멀티코어를 이용한 효과적인 병렬처리가 어렵다는 문제가 있다. 본 논문에서는 이러한 한계를 극복하기 위하여 유휴 코어를 이용하여 계산과 통신을 중첩시키는 병렬처리 기법을 제안한다. 특히, 주어진 멀티미디어 데이터를 처리하고 전송하는 문제를 응용 프로그램 수준의 파이프라인 설계 문제로 해석하여 최적의 파이프라인 단계수를 도출하는 방법을 제안한다.

멀티코어 프로세서에서의 H.264/AVC 디코더를 위한 데이터 레벨 병렬화 성능 예측 및 분석 (Data Level Parallelism for H.264/AVC Decoder on a Multi-Core Processor and Performance Analysis)

  • 조한욱;조송현;송용호
    • 대한전자공학회논문지SD
    • /
    • 제46권8호
    • /
    • pp.102-116
    • /
    • 2009
  • 최근 멀티코어 프로세서의 이용이 증가함에 따라, 멀티코어환경에서 고성능 H.264/AVC 코덱을 구현하기 위한 다양한 병렬화 기법들이 제안되고 있다. 이러한 기법들은 병렬화 기법 적용 방식에 따라 태스크 레벨 병렬화 기법과 데이터 레벨 병렬화 기법으로 구분된다. 태스크 레벨 병렬화 기법을 이용한 파이프라인 병렬화 기법은 H.264 알고리즘을 파이프라인 단계로 나누어 구현하며, 일반적으로 화면 사이즈가 작고 복잡도가 낮은 비트스트림에 유리하다. 그러나 프로세싱 모듈별 수행시간 차이가 커서 로드밸런싱이 좋지 않고, 파이프라인 단계의 수가 제한적이라 성능 확장성에 제한이 있어 HD 비디오같이 해상도가 큰 비트스트림 처리에는 적합하지 않은 단점이 있다. 본 논문에서는 로드밸런싱 및 성능 확장성을 고려하여 매크로블록 라인 단위로 쓰레드를 할당하는 수평적 데이터 레벨 병렬화 기법을 제안하고, 이에 대한 성능 예측 수식 모델을 통하여 성능을 예상한다. 또한 성능 예측의 정확성을 검증하기 위해 JM 13.2 레퍼런스 디코더에 대한 데이터 레벨 병렬화 기법을 ARM11 MPCore 환경에서 구현하고 이에 대한 성능 검증을 수행하였다. SoCDesigner를 이용한 사이클 단위의 성능 측정 결과, 본 논문에서 제시하는 쓰레드 증가에 대한 병렬화 기법의 성능 변화를 비교적 높은 수준의 정확도로 예측 가능하였다.

슈퍼스칼라 프로세서에서 동적 분류 능력을 갖는 혼합형 데이타 값 예측기의 설계 (Design of a Hybrid Data Value Predictor with Dynamic Classification Capability in Superscalar Processors)

  • 박희룡;이상정
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제27권8호
    • /
    • pp.741-751
    • /
    • 2000
  • 슈퍼스칼라 프로세서에서 명령어 수준 병렬성(Instruction Level Parallelism)을 적극적으로 활용하기 위해서는 명령들 사이에 존재하는 제어 종속관계 및 데이타 종속관계를 극복하는 것이 필수적이다. 데이타 값 예측은 하나의 명령 결과가 생성되기 전에 미리 결과 값을 예측하고 이 예측된 결과를 사용하여 데이타 종속관계가 있는 명령들을 투기적으로 실행(speculative execution)하는 기법이다. 본 논문에서는 동적 분류 능력을 갖는 혼합형 데이타 값 예측기를 제안한다. 제안된 예측기는 최근 값 예측기, 스트라이드 예측기 및 2 단계 예측기를 결합한 혼합형으로 구성되며, 예측되는 명령은 하드웨어에 의한 동적 분류에 의해 각 예측기로 할당된다. 각 명령들의 특성에 따라 각 예측기로 실행 시에 동적 분류됨으로써 각 예측기는 기존의 혼합형 방식보다도 더욱 효과적으로 활용될 수 있다. 제안된 방식의 타당성 검증을 위해 실행구동방식(execution-driven) 시뮬레이터를 사용하여 SPECint95 벤치마크를 시뮬레이션하여 비교한다. 실험 결과 Instruction Per Cycle 비교실험에서 2 단계 예측기 보다 0.36, 혼합형 예측기 보다 0.0l8의 성능을 보였고, 제안된 방식이 기존의 혼합형 방식보다 예측 정확도가 평균 16%가 향상되었고, 하드웨어 비용을 측정한 결과 45%의 감소효과를 얻었다.

  • PDF

슈퍼스칼라 프로세서에서 데이터 값 예측기의 성능효과 (Efficient of The Data Value Predictor in Superscalar Processors)

  • 박희룡;전병찬;이상정
    • 대한전자공학회:학술대회논문집
    • /
    • 대한전자공학회 2000년도 하계종합학술대회 논문집(3)
    • /
    • pp.55-58
    • /
    • 2000
  • To achieve high performance by exploiting instruction level parallelism(ILP) aggressively in superscalar processors, value prediction is used. Value prediction is a technique that breaks data dependences by predicting the outcome of an instruction and executes speculatively it's data dependent instruction based on the predicted outcome. In this paper, the performance of a hybrid value prediction scheme with dynamic classification mechanism is measured and analyzed by using execution-driven simulator for SPECint95 benchmark set.

  • PDF

계층 자료구조의 결합과 3차원 클러스터링을 이용하여 적응적으로 부하 균형된 GPU-클러스터 기반 병렬 볼륨 렌더링 (Adaptive Load Balancing Scheme using a Combination of Hierarchical Data Structures and 3D Clustering for Parallel Volume Rendering on GPU Clusters)

  • 이원종;박우찬;한탁돈
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제33권1_2호
    • /
    • pp.1-14
    • /
    • 2006
  • 대용량 볼륨 데이타를 가시화하는 효과적인 방법인 후-정열 병렬 렌더링은 부하균형에 의해 성능이 결정된다. 기존의 정적 데이타 분할 방법은 태스크 병렬성만의 관점에서는 자기균형을 쉽게 얻을 수 있었지만, 데이타 내부의 빈 공간을 고려하지 않았기 때문에 데이타 병렬성의 관점에서는 심각한 불균형을 초래할 수 있었다. 본 논문은 태스크 병렬성과 데이타 병렬성이 함께 고려된, 적응적이며 확장적인 부하 균형 기법을 제안한다. 우리는 계층적 자료 구조인 옥트리와 BSP-트리를 효과적으로 결합하여 볼륨 데이타의 실제 영역만을 추출하여 렌더링 노드들로 균등하게 분산시켰으며, 각 렌더링 노드들에서는 3차원 클러스터링 알고리즘을 적용하여 렌더링 순서를 효과적으로 결정하였다. 제안하는 방법은 기존의 정적 데이타 분산 기법에 비해 최대 22배의 병렬성을 높였고 동기화 비용을 낮추어 렌더링 성능을 크게 향상시켰음을 실험을 통해 알 수 있었다.

슈퍼스칼라 프로세서에서 모험적 갱신을 사용한 하이브리드 결과값 예측기 (A Hybrid Value Predictor using Speculative Update in Superscalar Processors)

  • 박홍준;신영호;조영일
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제28권11호
    • /
    • pp.592-600
    • /
    • 2001
  • 슈퍼스칼라 프로세서는 성능향상을 위해 명령어 반입폭과 이슈율을 증가시키고 있다. 데이터 종속성은 ILP(Instruction-Level Parallelism)를 향상시키는데 주요 장애요소가 되고 있으며, 최근 여러 논문에서 데이터 종속성을 제거하기 위해서 명령어의 결과값을 예상하는 메커니즘이 연구되었다. 그러나 이러한 예측기들은 예상한 명령어의 실제 결과값으로 예상 테이블을 갱신하기 전에 그 명령어를 다시 예상할 때 부적절(stale)한 데이터를 사용함으로써 예상 실패율이 증가하여 프로세서의 성능을 감소시킨다. 본 논문에서는 부적절 데이터 사용을 줄여 높은 성능을 얻을 수 있는 새로운 하이브리드 예측 메커니즘을 제안한다. 제안된 하이브리드 결과값 예측기는 예상 테이블을 모험적으로 갱신할 수 있기 때문에 부적절 데이터로 인해 잘못 예상되는 명령어의 수를 효과적으로 감소시킨다. 16-이슈폭 슈퍼스칼라 프로세서에서 SPECint95 벤치마크 프로그램에 대해 모험적 갱신을 사용함으로써 모험적 갱신을 사용하지 않은 경우의 평균 예상 정확도 59%에 비해 평균 예상 정확도가 72%에 비해 평균 예상 정확도가 72%로 크게 향상되었다.

  • PDF

ILP 프로세서에서 데이터 값 예측기의 성능 평가 (The Performance evaluation of Data Value Predictor in ILP Processor)

  • 박희룡;전병찬;이상정
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 1998년도 가을 학술발표논문집 Vol.25 No.2 (3)
    • /
    • pp.21-23
    • /
    • 1998
  • 본 논문에서 ILP (Instruction Level Parallelism)의 성능향상을 위하여 데이터 값들을 미리 예측하여 병렬로 이슈(issue)하고 수행하는 기존의 데이터 값 예측기(data value predictor)를 비교 분석하여 각 예측기의 예측율을 측정하고, 2-단계 데이터 값 예측기(Two-Level Data Value Predictor)와 혼합형 데이터 값 예측기(Hydrid Data Value Predictor)에서 발생되는 aiasing 을 측정하기 위해 수정된 데이터 값 예측기를 사용하여 측정한 결과 aliasing은 50% 감소하였지만 예측율에는 영향을 미치지 못함과 데이터 값 예측기의 예측율을 측정한 결과 혼합형 데이터 값 예측기의 예측율이 2-단계 데이터 값 예측기와 스트라이드 데이터 값 예측기(Stride Data Value Predictor)에서 평균 5.7%, 최근 값 예측기(Last Data Value Predictor)보다는 평균 38%의 예측 정확도가 높음을 입증하였다.

  • PDF

Exploiting Thread-Level Parallelism in Lockstep Execution by Partially Duplicating a Single Pipeline

  • Oh, Jaeg-Eun;Hwang, Seok-Joong;Nguyen, Huong Giang;Kim, A-Reum;Kim, Seon-Wook;Kim, Chul-Woo;Kim, Jong-Kook
    • ETRI Journal
    • /
    • 제30권4호
    • /
    • pp.576-586
    • /
    • 2008
  • In most parallel loops of embedded applications, every iteration executes the exact same sequence of instructions while manipulating different data. This fact motivates a new compiler-hardware orchestrated execution framework in which all parallel threads share one fetch unit and one decode unit but have their own execution, memory, and write-back units. This resource sharing enables parallel threads to execute in lockstep with minimal hardware extension and compiler support. Our proposed architecture, called multithreaded lockstep execution processor (MLEP), is a compromise between the single-instruction multiple-data (SIMD) and symmetric multithreading/chip multiprocessor (SMT/CMP) solutions. The proposed approach is more favorable than a typical SIMD execution in terms of degree of parallelism, range of applicability, and code generation, and can save more power and chip area than the SMT/CMP approach without significant performance degradation. For the architecture verification, we extend a commercial 32-bit embedded core AE32000C and synthesize it on Xilinx FPGA. Compared to the original architecture, our approach is 13.5% faster with a 2-way MLEP and 33.7% faster with a 4-way MLEP in EEMBC benchmarks which are automatically parallelized by the Intel compiler.

  • PDF