• 제목/요약/키워드: 쉐이더 명령어

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

가변길이 SIMD구조 쉐이더 명령어 및 컴파일러 설계 (Design of Compiler & Variable-Length Instructions for SIMD Structured Shader)

  • 곽재창;박태룡
    • 한국정보통신학회논문지
    • /
    • 제14권12호
    • /
    • pp.2691-2697
    • /
    • 2010
  • 본 논문에서는 3차원 그래픽 쉐이더 3.0 API를 지원하는 쉐이더 명령어 및 컴파일러를 설계하고 그 결과를 평가한다. 기존의 명령어와는 달리 가변길이의 명령어 구조를 제안하고 명령어의 길이를 줄여 SIMD(Single Instruction Multiple Data)구조의 그래픽 프로세서의 하드웨어 크기를 줄일 수 있다. 가변길이 및 2 페이즈 구조의 명령어를 지원하며 ESSL(ES Shading Language) 수준에서 쉐이더 프로그램이 가능한 쉐이더 컴파일러의 설계를 수행하였다. 명령어와 컴파일러 설계 결과를 검증하기 위하여 크로노스그룹에서 제안하는 Conformance Test를 수행하였다. 그 결과로 제공하는 기본 GL 쉐이더의 기능 16개를 비교하여 보았을 때 전체 평균 37%가 줄어드는 것을 알 수 있다.

3D 그래픽 프로세서에서 효율적인 명령어를 위한 가변길이 명령어 설계 (Design of a Variable-Length Instruction for the Effective Usability Instruction in 3D Graphics Processor)

  • 김우영;이보행;이광엽;곽재창
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국해양정보통신학회 2008년도 춘계종합학술대회 A
    • /
    • pp.281-284
    • /
    • 2008
  • 최근 OpenGL ES 2.0이 개정됨에 따라 모바일 기기에 Shader 3.0모델을 지원 가능한 프로세서가 요구된다. 이 쉐이더 3.0 모델의 지원과 관련하여 명령어의 길이의 증가가 필요하고, 이는 메모리 용량의 증가를 초래한다. 본 논문에서는 가변길이 구조와 유닛구조를 채택한 새로운 명령어 구조를 제안한다. 이 명령어 구조는 쉐이더 3.0 모델을 지원하고 명령어 필드 낭비를 줄일 수 있도록 최대 4개의 32비트 유닛 명령어가 가변적으로 조합되어 수행된다.

  • PDF

저전력 모바일 장치를 위한 완전 프로그램 가능형 쉐이더 프로세서 (A Fully Programmable Shader Processor for Low Power Mobile Devices)

  • 정형기;이주석;박태룡;이광엽
    • 전기전자학회논문지
    • /
    • 제13권2호
    • /
    • pp.253-259
    • /
    • 2009
  • 본 논문에서는 전용하드웨어를 사용하지 않는 새로운 구조의 범용 그래픽 쉐이더 프로세서를 제안한다. 최근 모바일 기기에서는 고성능을 유지하면서 저전력의 작은 크기를 가지는 그래픽 프로세서를 요구한다. 제안하는 쉐이더 프로세서는 OpenGL ES 2.0 그래픽 파이프라인 전체를 쉐이더 명령어로 실행할 수 있는 GP-GPU 구조를 갖는다. 프로그램을 구현하여 하나의 프로세서로 모든 그래픽 파이프라인 처리가 가능하기 때문에 Rasterization Unit과 같은 별도의 전용 하드웨어를 필요로 하지 않는다. 따라서 쉐이더 프로세서 하나로 Fully Programmable 3D Graphics Engine 구현이 가능하며 기존 쉐이더 프로세서에 비해 하드웨어 크기를 60% 줄였다.

  • PDF

OpenGL ES 2.0 API 기반 가변길이 명령어 설계 (Design of a Variable-Length Instruction based on a OpenGL ES 2.0 API)

  • 이광엽
    • 전기전자학회논문지
    • /
    • 제12권2호
    • /
    • pp.118-123
    • /
    • 2008
  • 최근 Khronos에서 OpenGL ES 2.0 API 표준을 배포 하면서 임베디드 시스템의 그래픽 프로세서에서 능률적인 쉐이더 프로그램이 가능하게 되었다. 그 결과 모바일 기기에서도 OpenGL ES 2.0을 지원하는 그래픽 프로세서를 요구하게 되었다. OpenGL ES 2.0을 지원하기 위해서 명령어의 길이의 증가가 요구되고, 이는 메모리 용량의 증가를 초래한다. 본 논문에서는 효율적으로 명령어를 사용하는 새로운 명령어를 제안한다. 이 명령어는 가변 길이 방법과 유닛구조를 채택한 명령어 구조이다. 제안된 명령어 구조는 OpenGL ES 2.0 API를 지원하고 명령어 필드 낭비를 줄일 수 있도록 최대 4개의 32비트 유닛 명령어가 가변적으로 조합되어 수행된다.

  • PDF

메모리 전송 효율을 개선한 programmable Fragment 쉐이더 설계 (A Design of Programmable Fragment Shader with Reduction of Memory Transfer Time)

  • 박태룡
    • 한국정보통신학회논문지
    • /
    • 제14권12호
    • /
    • pp.2675-2680
    • /
    • 2010
  • 3D 그래픽을 처리하는 연산 과정에는 고정적인 연산만을 수행하는 영역과 Shader 등과 같은 명령어에 의한 프로그래밍이 요구되는 영역이 구분되어 있다. 이러한 3D 파이프라인의 특성을 고려하여 fixed 구조로 설계한 graphics hardware와 명령어 기반의 programmable hardware를 혼합한 구조로 설계하면 효율적인 그래픽 처리가 가능하다. 본 논문에서는 이러한 혼합 구조에 적합한 OpenGL ES(Open Graphics Library Embedded System) 2.0을 지원하는 Fragment Shader를 설계하였다. fixed hardware와 Shader간 데이터 입출력으로 인해 발생할 수 있는 전체 파이프라인의 지연을 줄일 수 있도록 내부 인터페이스를 최적화하였으며 Shader 내부 레지스터 그룹을 interleaved 구조로 설계하여 레지스터 면적과 처리 속도를 개선하였다.

듀얼 페이즈 명령어 파이프라인구조의 쉐이더 프로세서 설계 (A Design of a Shader Processor based on a dual-phase pipeline architecture)

  • 정형기;남기훈;이광엽
    • 전기전자학회논문지
    • /
    • 제12권4호
    • /
    • pp.246-254
    • /
    • 2008
  • 본 논문에서는 멀티 스레드와 듀얼 페이즈 명령어 파이프라인을 가진 4way SIMD 프로세서를 설계하였다. 8개의 스레드가 round-robin 방식으로 실행되어, 해저드를 발생시키지 않는다. 또한 듀얼 페이즈 기능은 1개의 코어가 2개의 프로세서처럼 동작하도록 명령어를 최대 4개를 입력 받아 처리한다. 이 가변 명령어 구조는 1차와 2차 페이즈로 나뉘어 명령어를 수식할 수 있으며, 이 기능을 통해 분기명령이나 어드레싱 명령을 단일 클럭에 수행할 수 있도록 한다. 이 프로세서는 명령어 수행 시간을 일반적인 SIMD 구조에 비하여 50% 이하로 단축시킬 수 있으며, 최대 2배의 성능향상을 보이고 25%까지 코드 크기를 줄일 수 있다..

  • PDF

프로그래밍이 가능한 GPU 상에서의 버텍스 프로그래밍의 최적화 기법 (Optimization Technique for Vertex Programming on Programmable GPU)

  • 오진상;임인성
    • 한국컴퓨터그래픽스학회논문지
    • /
    • 제8권3호
    • /
    • pp.25-34
    • /
    • 2002
  • 최근 프로그래밍이 가능한 그래픽스 프로세서(GPU)의 등장은 렌더링 속도의 향상은 물론 기존의 GPU가 할 수 없었던 다양한 그래픽스 계산을 효과적으로 수행할 수 있도록 해주고 있다. 이로 인하여 기존에 CPU 상에서 수행해야만 했던 그래픽스 계산들의 일부를 GPU 상에서 수행하도록 해주는 기법들에 대한 연구가 활발히 진행되고 있다. 본 논문에서는 선형식에 기반을 둔 여러 응용 문제들을 GPU 상에서 효율적으로 구현할 수 있도록 도와주는 쉐이더 코드 최적화 기법을 제안한다. 이 기법은 SIMD 형태의 병렬 처리 능력을 가진 버텍스 쉐이더의 명령어에 맞게 고안되었다. 본 기법의 활용 가능성을 보이기 위하여 미분 방정식을 풀기 위한 4차 런지-쿠타 방법, 선형방정식을 풀기 위한 가우스-자이델 방법, 자연스러운 유체 모델링을 위한 파동 방정식 등의 문제에 적용하여 보았다. 본 논문에서 제안한 최적화 기법은 버텍스 쉐이더 용 컴파일러 구현에 쓰일 수 있으며, 향후 프로그래밍이 가능한 GPU 상에서의 실시간 그래픽스 소프트웨어 개발에 유용하게 사용될 수 있을 것이다.

  • PDF

GPGPU를 위한 쉐이더 명령어기반 멀티 스레드 관리 기법 (Method of Multi Thread Management based on Shader Instruction for Mobile GPGPU)

  • 이광엽;박태룡
    • 전기전자학회논문지
    • /
    • 제16권4호
    • /
    • pp.310-315
    • /
    • 2012
  • 본 논문에서는 모바일환경에 최적화 된 멀티 스레드 모바일 GPGPU를 설계하고, 멀티 스레드로 구성된 모바일 프로세서에서의 효과적인 스레드 관리 기법을 검증한다. 스레드의 제어에는 별도의 하드웨어 없이 소프트웨어 명령어를 기반으로 설계하였다. 스레드 관리 기법의 검증은 차선 검출 알고리즘을 구현하여 nVidia의 CUDA Architecture와 설계한 GPGPU의 스레드 관리 효율을 비교 분석한다. 스레드 효율에서는 CUDA와 비교했을 때 최대 2배까지 높은 효율을 보인다.