$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

SIMD 명령어 기반 HEVC RExt 복호화기 고속화
SIMD Instruction-based Fast HEVC RExt Decoder 원문보기

방송공학회논문지 = Journal of broadcast engineering, v.20 no.2, 2015년, pp.224 - 237  

목정수 (광운대학교 컴퓨터공학과) ,  안용조 (광운대학교 컴퓨터공학과) ,  류호찬 (광운대학교 컴퓨터공학과) ,  심동규 (광운대학교 컴퓨터공학과)

초록
AI-Helper 아이콘AI-Helper

본 논문은 HEVC RExt (High Efficiency Video Coding Range Extension)을 위한 SIMD (Single Instruction Multiple Data) 명령어 기반의 고속 복호화 방법을 소개한다. RExt의 화면 내 예측, 보간필터, 역-양자화, 역-변환, 클리핑 모듈들은 반복적인 산술 연산 혹은 논리 연산을 수행하는 구조로써 SIMD 명령어 집합을 적용하기 적합한 모듈로 분류할 수 있다. 본 논문은 RExt의 증가한 비트 심도를 고려하여 화면 내 예측, 보간필터, 역-양자화, 역-변환, 클리핑 모듈을 SSE (Streaming SIMD Extension) 명령어 집합을 이용하여 연산하는 방법을 소개한다. 또한, 256비트 레지스터를 사용할 수 있는 AVX2 (Advanced Vector eXtension 2) 명령어 집합을 이용하여 보간필터, 역-양자화, 클리핑 모듈의 연산을 효율적으로 연산하는 방법을 제안한다. 본 논문에서 제안하는 SIMD 명령어 기반의 고속 복호화 방법은 HEVC 참조 소프트웨어 HM 16.0을 기반으로 자체 개발한 HEVC RExt 복호화기에서 기존의 순차적 연산 방식 대비 평균 12%의 속도향상을 얻을 수 있었다.

Abstract AI-Helper 아이콘AI-Helper

In this paper, we introduce the fast decoding method with the SIMD (Single Instruction Multiple Data) instructions for HEVC RExt (High Efficiency Video Coding Range Extensions). Several tools of HEVC RExt such as intra prediction, interpolation, inverse-quantization, inverse-transform, and clipping ...

주제어

AI 본문요약
AI-Helper 아이콘 AI-Helper

* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.

문제 정의

  • 본 논문에서는 HEVC 버전 2 표준으로 완료된 RExt 복호화기를 SIMD 명령어를 이용하여 효율적으로 고속화하는 방법에 대해 소개한다. HEVC RExt 복호화기에서 SIMD 명령어를 적용하기 적합한 연산 및 기능 모듈을 살펴보고 MMX (MultiMedia eXtension) 및 SSE(Streaming SIMD Extension) 명령어 집합을 통한 고속화와 AVX2 (Advanced Vector eXtension 2) 명령어 집합을 이용한 연산 방법에 대해 소개한다.
  • AVX2 명령어 집합은 인텔 아키텍쳐 x86 명령어 집합의 확장으로 MMX 및 SSE 명령어 집합이 사용하던 128비트 레지스터를 256비트 레지스터로 확장하였으며 정수/부동소수점 SIMD 연산이 가능하여 SSE 명령어 집합 대비 최대 2배의 속도 향상 효과를 얻을 수 있다[13]. 따라서 본 논문은 HEVC RExt 복호화기에서 반복적인 산술 연산 혹은 논리 연산을 수행하는 역-양자화, 보간 필터, 클리핑 (clipping) 연산을 AVX2 명령어 집합을 이용하여 연산을 수행하였으며, 본 장에서는 AVX2 명령어 집합의 특징 및 각 기능 모듈을 효율적으로 연산하는 방법을 소개한다.
  • 본 논문에서 제안하는 HEVC RExt을 위한 AVX2 명령어 구현을 다루기에 앞서, AVX2 명령어 집합과 SSE 명령어 집합의 일부 연산 방식의 차이에 대하여 소개한다. 기존의 SSE 명령어 집합은 128비트 레지스터 내부에서 산술연산, 조합, pack 확장 및 축소 등의 다양한 연산이 가능하였으며 이는 HEVC의 다양한 기능 모듈에서 효율적으로 사용될 수 있었다.
  • 특히, 다양한 고속화 및 병렬화 기법중 SIMD (Single Instruction Multiple Data) 명령어는 단일 명령으로 다중 데이터를 처리하는 데이터 수준의 병렬화기법으로 CPU 및 GPU를 이용한 멀티스레딩 (multi threading) 방법에 비해 하드웨어의 영향을 적게 받으며 반복적인 산술 연산 혹은 논리 연산을 수행하는 구조에서 효율적이다. 본 논문에서는 HEVC 버전 2 표준으로 완료된 RExt 복호화기를 SIMD 명령어를 이용하여 효율적으로 고속화하는 방법에 대해 소개한다. HEVC RExt 복호화기에서 SIMD 명령어를 적용하기 적합한 연산 및 기능 모듈을 살펴보고 MMX (MultiMedia eXtension) 및 SSE(Streaming SIMD Extension) 명령어 집합을 통한 고속화와 AVX2 (Advanced Vector eXtension 2) 명령어 집합을 이용한 연산 방법에 대해 소개한다.
  • 본 논문은 실시간 HEVC RExt 복호화기 연구의 일환으로 SIMD 명령어 기반의 HEVC RExt 복호화기 고속화 방법에 대해 살펴보았다. SIMD 명령어는 단일 명령으로 다중 데이터를 처리하는 데이터 수준의 병렬화 기법으로 반복적인 산술 연산 혹은 논리 연산을 수행하는 구조에서 효율적이다.
  • 본 장에서는 HEVC RExt 복호화기에서 SIMD 명령어 중 MMX와 SSE 명령어 집합을 이용하여 데이터 수준 병렬화를 적용하기 적합한 부분을 살펴보고 효율적인 적용 방법에 대해서 소개한다. 전술한 바와 같이 SIMD 명령어를 이용한 고속화는 동일한 연산을 반복적으로 수행하는 구조에 적합하며 HEVC RExt 복호화기에 적용하기 적합한 기능 모듈은 화면 내 예측 (Intra prediction), 보간 필터 (Interpolation), 역-양자화 (Inverse quantization), 역-변환 (Inverse transform) 등이 있다.
본문요약 정보가 도움이 되었나요?

질의응답

핵심어 질문 논문에서 추출한 답변
AVX2 명령어의 특징을 고려하여 효율적으로 연산하기 위한 두 가지 연산 수행 방법은? 본 논문은 이러한 특징을 고려하여 효율적으로 연산하기 위해 두 가지 방법을 사용해서 연산을 수행하였다. 첫 번째 방법은 데이터의 로드 및 산술 연산은 AVX2 명령어를 이용하고 pack 확장 및 축소를 강제 캐스팅을 통해 SSE 명령어 집합을 이용하여 연산하는 방법이며, 두 번째 방법은 AVX2 명령어 집합의 pack 확장 및 축소의 특징을 고려하여 데이터의 로드를 선택적으로 수행하는 방법이다. 두 방법 모두 기존의 SSE 명령어 집합을 이용한 연산에 비해 속도 향상을 얻을 수 있었지만 첫 번째 방법은 AVX2 명령어 집합과 SSE 명령어 집합을 혼합하여 사용함으로 인한 컴파일러의 성능 저하 및 AVX2 명령어 집합을 효율적으로 사용하지 못하는 문제점으로 인하여 두 번째 방법 대비 평균 19%정도의 성능 저하가 있었다.
SIMD 명령어란 무엇인가? 본 논문은 실시간 HEVC RExt 복호화기 연구의 일환으로 SIMD 명령어 기반의 HEVC RExt 복호화기 고속화 방법에 대해 살펴보았다. SIMD 명령어는 단일 명령으로 다중 데이터를 처리하는 데이터 수준의 병렬화 기법으로 반복적인 산술 연산 혹은 논리 연산을 수행하는 구조에서 효율적이다. HEVC RExt의 화면 내 예측, 보간필터, 역-양자화, 역-변환 등의 기능 모듈은 SIMD 명령어를 이용한 데이터 수준의 병렬화를 적용하기 적합한 구조이며 본 논문은 SSE 및 AVX2 명령어 집합을 이용하여 전체 복호화 시간을 평균 12% 향상시켰다.
HEVC의 기능을 다양한 방식으로 확장시키는 표준화에는 어떤 것이 있는가? HEVC는 가변 블록 크기, 쿼드 트리 구조, 다양한 예측모드 등을 포함하며 일반적으로 널리 사용되는 YUV 4:2:0 색차 샘플링과 최대 10비트 심도 지원을 목적으로 하여 2013년 1월에 버전 1 표준 개발이 완료되었다[3] . HEVC 버전 1 표준화가 완료된 이후 HEVC의 기능을 다양한 방식으로 확장시키는 표준화가 진행되었으며 대표적으로 SHVC(Scalable HEVC), MV-HEVC (Multi-view HEVC), HEVC-RExt (HEVC Range Extension) 등이 있다. 이 중 HEVC RExt은 최대 16비트 심도의 영상 및 YUV 4:0:0/4:2:0/4:2:2/4:4:4 색차 샘플링 지원을 통해 풍부한 색차 정보 표현과 높은 비트 심도 지원을 목적으로 한다[4].
질의응답 정보가 도움이 되었나요?

참고문헌 (14)

  1. B. Bross, W. Han, G. Sullivan, J. Ohm, and T. Wiegand, “High Efficiency Video Coding (HEVC) Text Specification Draft 10,” document JCTVC-L1003_v34, Geneva, CH, Jan. 2013. 

  2. B. Li, G. and G. Sullivan, “Comparison of Compression Performance of HEVC Draft 10 with AVC High Profile,” JCTVC-M0329, Incheon, Korea, April. 2013. 

  3. G. J. Sullivan, J. Ohm, W. Han, and T. Wiegand, “Overview of the High Efficiency Video Coding ( HEVC ) Standard,” IEEE Trans. on CSVT., vol. 22, no. 12, pp. 1649-1668, Dec. 2012. 

  4. J. Boyce, J. Chen, Y. Chen, D. Flynn, M. M. Hannuksela, M. Naccari, C. Rosewarne, K. Sharman, J. Sole, G. J. Sullivan, T. Suzuki, G. Tech, Y.-K. Wang, K. Wegner, Y. Ye, “Draft high efficiency video coding (HEVC) version 2, combined format range extensions (RExt), scalability (SHVC), and multi-view (MV-HEVC) extensions,” JCTVC-R1013, Sapporo, JP, July, 2014 

  5. C. Rosewarne, K. Sharman, M. Naccari, G. Sullivan, “HEVC Range extensions test model 6 encoder description,” JCTVC-P1013, San Jose, US, Jan. 2014 

  6. Y.J. Ahn, W.J. Han, and D.G. Sim, “Study of decoder complexity for HEVC and AVC standards based on tool-by-tool comparison”, SPIE Applications of Digital Image Processing XXXV, Proceedings of SPIE, vol. 8499, pp. 8499-32, San Diego, USA, Aug. 2012. 

  7. C. Chi, M. Alvarez-Mesa, J. Lucas, B. Juurlink, and T. Schierl, “Parallel HEVC decoding on multi- and many-core architectures,” Journal of Signal Processing Systems, vol. 71, no. 3, pp. 247-260, June, 2013. 

  8. H. Jo, D. Sim, “Hybrid Parallelization for HEVC Decoder,” Image and Signal Processing (CISP)., vol. 1, pp. 170-175, Dec. 2013. 

  9. Chi, C. C., Alvarez-Mesa, M., Bross, B., Juurlink, B., and Schierl, T, “SIMD acceleration for HEVC decoding,” IEEE Trans. on CSVT., no. 99, Oct. 2014 

  10. T. Hwang, Y. Ahn, J. Ryu, D. Sim, “Optimized Implementation of Interpolation Filter for HEVC Encoder,” Journal of The Institute of Electronics Engineers of Korea, vol. 50, no. 10, pp. 199-203, October, 2013 

  11. W-H. Chen, C. H. Smith, and S. C. Fralick, “A fast computational algorithm for the discrete cosine transform,” IEEE Trans. on Commun., vol. 25, no. 9, pp. 1004-1009, Sep. 1977. 

  12. T. Hwang, Y. Ahn, D. Sim, “SIMD instruction-based HEVC encoder optimization,” IPIU, Feb. 2013 

  13. Intel, “Intel Advanced Vector Extensions Programming Reference,” Technical Report 319433-011, Intel, June, 2011. 

  14. D.Flynn, C.Rosewarnem “Common test condition and software reference configurations for HEVC range extensions,” document JCTVC-L1006_v2, Geneva, Jan. 2013 

저자의 다른 논문 :

LOADING...

관련 콘텐츠

오픈액세스(OA) 유형

BRONZE

출판사/학술단체 등이 한시적으로 특별한 프로모션 또는 일정기간 경과 후 접근을 허용하여, 출판사/학술단체 등의 사이트에서 이용 가능한 논문

저작권 관리 안내
섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로