• 제목/요약/키워드: EEMBC

검색결과 8건 처리시간 0.019초

Polaris-1 보드 상에서 EEMBC 벤치마크 동작 구현 (Implementation of running an EEMBC Benchmark on Polaris-1 Board)

  • 박기성;이호균;김선욱
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2010년도 춘계학술발표대회
    • /
    • pp.86-88
    • /
    • 2010
  • MPSoC 는 저렴한 하드웨어 비용으로 신속하게 데이터를 처리할 수 있어 고성능 멀티미디어 프로그램, 이동통신기기, 텔레매틱스, 모바일 엔터테인먼트 기기에 맞는 솔루션을 제공하고 있다. 본 논문은 이러한 MPSoC 연구의 일환으로 ADChips 의 EISC 프로세서와 Zaram 의 DSP 를 이용하여 개발된 Polaris-1 보드에서 EEMBC 벤치마크 프로그램을 EISC 프로세서인 Empress 에서 동작할 수 있도록 하는 구현에 대한 연구를 소개한다. 본 논문에서 제시한 하나의 프로세서에 작업을 할당하는 방법을 확장함으로써, MPSoC 의 멀티코어를 사용하기 위한 프로그램을 개발 할 수 있을 것이다. 또한, 앞으로 지속적으로 연구될 Polaris-1 보드의 연구기반을 마련하였다고 볼 수 있다.

글로벌 캐시를 이용한 네트워크 병렬 프로세서 구조 연구 (Study of Parallel Network Processor using Global Cache)

  • 박재원;정원영;김현필;이정희;이용석
    • 한국통신학회논문지
    • /
    • 제36권1B호
    • /
    • pp.80-85
    • /
    • 2011
  • 현재 광대역 통합망의 사용으로 인해 확장된 망을 사용하는 트래픽의 양이 많아지고, 어플리케이션의 발달로 인해 트래픽의 종류도 증가하고 있다. 특히 IPTV, VOD, 온라인 게임 등의 멀티미디어 속성을 가진 트래픽의 증가가 두드러지고 있다. 이러한 멀티미디어 트래픽은 페이로드의 크기가 클 뿐만 아니라 실시간 처리를 요하기 때문에 라우터에서 트래픽 속성에 따라 차등한 대역폭을 지원하는 연구가 진행 중에 있다. 트래픽의 속성을 정확히 구분하기 위해선 어플리케이션 계층을 분석하여야 하는데, 기존의 네트워크 프로세서 구조에선 L2-4 처리와 L7처리를 순차적으로 처리하고 있다. 본 논문에서는 L2-4와 L7을 병렬로 처리하기 위해 글로벌 캐시를 둔 새로운 병렬 네트워크 프로세서 구조를 제안한다. 제안하는 구조를 검증하기 위해 기존의 네트워크 시스템과 제안한 구조의 네트워크 시스템을 SystemC로 모델링하였으며, L2-4, L7 처리 시간을 측정하기 위해 EEMBC-와 SNORT를 이용하여 동일한 시스템에서 시뮬레이션 하였다. 멀티미디어 속성의 동일한 트래픽이 연속적으로 입력될 경우 제안한 구조에서 약 85%의 성능 향상을 보였다.

임베디드 응용 프로그램 성능 분석 (Performance Analysis of Embedded Applications)

  • 김선욱;오재근;한영선;최홍욱;김철우
    • 대한전자공학회:학술대회논문집
    • /
    • 대한전자공학회 2003년도 하계종합학술대회 논문집 Ⅲ
    • /
    • pp.1355-1358
    • /
    • 2003
  • This paper presents performance analysis of the embedded application, called EEMBC consisting of 5 categories and total 34 applications. We measured various performance metrics, such as code sizes, TLP(Thread Level Parallelism) using OpenMP API and ILP(Instruction Level Parallelism) on ARM-modeled SimpleScalar in detail. We show that the embedded applications have the similar characteristics as integer applications to deliver low ILP and TLP in our environment. They have many small loops, which result in large instruction overhead in TLP and loop control overhead in ILP.

  • PDF

GCC based Compiler Construction for Compact DSP32

  • Cho, Myeong-Jin;Lee, Ho-Kyoon;Huong, Giang Nguyen Thi;Kim, Seon-Wook;Han, Young-Sun;Um, Jung-Young
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2011년도 춘계학술발표대회
    • /
    • pp.43-45
    • /
    • 2011
  • Very Long Instruction Word (VLIW) executes multiple instructions in parallel. In order to exploit higher performance, i.e., higher parallelism, VLIW compiler groups as many instructions into one word as possible. In this paper, we show how to construct a VLIW C compiler based on GCC for CDSP32 (Compact Digital Signal Processor 32-bit) which is an embedded DSP processor to issue two instructions in one VLIW. Also, we evaluated the compiler on EEMBC benchmark; the experiment result showed that the total number of dynamic instructions of the VLIW compiler was reduced by 18% on average over without VLIW instruction scheduling.

Empress 프로세서를 위한 DFA 기반 명령어 스케줄링 (DFA based Instruction Scheduling for Empress Processor)

  • 정동하;이호균;김선욱;김관영
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2011년도 춘계학술발표대회
    • /
    • pp.11-13
    • /
    • 2011
  • 최근 스마트 폰, 타블렛 PC 등 고성능 모바일 기기에 대한 시장수요가 증가함에 따라 임베디드 프로세서에 대한 성능 최적화가 활발히 이루어지고 있다. 고성능 멀티미디어 시스템을 대상으로 설계된 Empress 프로세서는 다수의 기능 유닛을 포함하고 있어 명령어 스케줄링을 통해 성능 향상을 기대할 수 있으나 기존의 컴파일러는 이를 지원하지 않고 있다. 본 연구에서는 GNU C 컴파일러를 이용하여 Empress 프로세서를 위한 DFA 기반의 명령어 스케줄링 최적화를 구현하였다. 그 결과 EEMBC 벤치마크를 이용한 성능 분석에서 실행시간 기준 평균 8%의 향상이 있음을 확인하였다.

Performance Comparison between LLVM and GCC Compilers for the AE32000 Embedded Processor

  • Park, Chanhyun;Han, Miseon;Lee, Hokyoon;Cho, Myeongjin;Kim, Seon Wook
    • IEIE Transactions on Smart Processing and Computing
    • /
    • 제3권2호
    • /
    • pp.96-102
    • /
    • 2014
  • The embedded processor market has grown rapidly and consistently with the appearance of mobile devices. In an embedded system, the power consumption and execution time are important factors affecting the performance. The system performance is determined by both hardware and software. Although the hardware architecture is high-end, the software runs slowly due to the low quality of codes. This study compared the performance of two major compilers, LLVM and GCC on a32-bit EISC embedded processor. The dynamic instructions and static code sizes were evaluated from these compilers with the EEMBC benchmarks.LLVM generally performed better in the ALU intensive benchmarks, whereas GCC produced a better register allocation and jump optimization. The dynamic instruction count and static code of GCCwere on average 8% and 7% lower than those of LLVM, respectively.

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

GCC2Verilog Compiler Toolset for Complete Translation of C Programming Language into Verilog HDL

  • Huong, Giang Nguyen Thi;Kim, Seon-Wook
    • ETRI Journal
    • /
    • 제33권5호
    • /
    • pp.731-740
    • /
    • 2011
  • Reconfigurable computing using a field-programmable gate-array (FPGA) device has become a promising solution in system design because of its power efficiency and design flexibility. To bring the benefit of FPGA to many application programmers, there has been intensive research about automatic translation from high-level programming languages (HLL) such as C and C++ into hardware. However, the large gap of syntaxes and semantics between hardware and software programming makes the translation challenging. In this paper, we introduce a new approach for the translation by using the widely used GCC compiler. By simply adding a hardware description language (HDL) backend to the existing state-of- the-art compiler, we could minimize an effort to implement the translator while supporting full features of HLL in the HLL-to-HDL translation and providing high performance. Our translator, called GCC2Verilog, was implemented as the GCC's cross compiler targeting at FPGAs instead of microprocessor architectures. Our experiment shows that we could achieve a speedup of up to 34 times and 17 times on average with 4-port memory over PICO microprocessor execution in selected EEMBC benchmarks.