Computação Paralela Com Arquitetura De Processamento Gráfico Cuda Aplicada a Um Codificador De Vídeo H.264

Computação Paralela Com Arquitetura De Processamento Gráfico Cuda Aplicada a Um Codificador De Vídeo H.264

CENTRO UNIVERSITÁRIO UNIVATES CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE ENGENHARIA DE CONTROLE E AUTOMAÇÃO AUGUSTO LIMBERGER LENZ COMPUTAÇÃO PARALELA COM ARQUITETURA DE PROCESSAMENTO GRÁFICO CUDA APLICADA A UM CODIFICADOR DE VÍDEO H.264 Lajeado 2012 ) u d b / r b . s e t a v i n u . w w w / / : p PROCESSAMENTO GRÁFICOAPLICADA A CUDA UM t COMPUTAÇÃO DE COMARQUITETURA PARALELA t h ( S E T A CODIFICADOR DEH.264 VÍDEO CODIFICADOR V I N U AUGUSTO LIMBERGERAUGUSTO LENZ a d l a t i g i Lajeado Área de concentração: Computação paralela concentração: Computação de Área e Controle Automação. para a obtenção do título de bacharel em Engenharia de Universitário UNIVATES, como parte dos requisitos Centro de Ciências Exatas e Tecnológicas do TrabalhoCentro de Conclusão de Curso apresentado ao ORIENTADOR: ORIENTADOR: 2012 D a c e t o i l b i Ronaldo Hüsemann B – U D B ) u d b / r b . s e t a v i n u . w w w / / : p PROCESSAMENTO GRÁFICOAPLICADA A CUDA UM t COMPUTAÇÃO DE COMARQUITETURA PARALELA t Banca Examinadora: h ( S Mestre pelo PPGCA/UNISINOS –SãoLeopoldo, Brasil peloMestre PPGCA/UNISINOS Prof. pela–Campinas,Mestre FEEC/UNICAMP Brasil Prof. E T Coordenador docursoEngenhariade de Controle Automação e A Maglan CristianoMaglan Diemer Marcelo Gomensoro de Malheiros CODIFICADOR DEH.264 VÍDEO CODIFICADOR V I N U AUGUSTO LIMBERGERAUGUSTO LENZ _______________________________ a d l Prof. Orientador: ____________________________________ Doutor pelo PPGEE/UFRGS – Porto Alegre, –Porto PPGEE/UFRGS Brasil Doutor pelo Prof. a t i g Ronaldo Hüsemann Ronaldo i Rodrigo Porto Wolff pelo Orientador e pela Examinadora. pela Banca e pelo Orientador Automação do CETEC e aprovado em sua forma final título de bacharelEste trabalho foi julgado adequado empara a obtenção do Engenharia de Controle e D , UNIVATES a c e t , UNIVATES o i l b i , UNIVATES B – U Lajeado, de Junho 2012. D B ) u d b / r b . s e t a v i n u . w w w / importância educação. da / : p t t Dedico este trabalho ao meu pai, Edu, e a minha mãe, Ivone, por acreditarem na h ( S E T A V I N U a d l a t i g i D a c e t o i l b i B – U D B ) u d b / r b . s e t a v i n u . w w w / trabalhar em de projetos pela pesquisae amizade ao cultivada desse período. longo transcorrer realização da desse trabalhodemais e atividades da graduação. Schwingel / : p t t À Aos de colegas amizade curso, pela companhia e durantedesta odecorrer jornada. Aos colegas do Laboratório de Engenharia Aplicada: Ao professor À minha família, pelo apoio, incentivo e compreensão nos momentos difíceis, no h ( Luisa e S Marco Gobbi pelas contribuiçõesMarco Gobbipelas nodesenvolvimento trabalho. desse E portodo carinho compreensão. oamor, e T A V Ronaldo Hüsemann I N U a AGRADECIMENTOS d l a t i g i , pela sua orientação, pelas oportunidades de D a c e t o i l b i B Anderson Giacomolli – U D B , Diego ) u d b / r b . s e t a v i n u . w w w / integrado ao software de referência para validação e testes. Os resultados obtidos apontam um foi a implementação do módulo computacional, situado no codificador intraquadro,forma aque acelerar afoi codificação e aliviar a carga da CPU principal. O primeiro estudo de caso davídeo NVIDIA.Dessaalgoritmos paralelizáveis empresa forma, são executados de GPU na implementar módulos do codificador H.264 em tecnologia em arquiteturas de computadores no contexto da codificação deCUDA, vídeo. O objetivo específico é presente nas placas de Este trabalho investiga a utilização de processadores gráficos (GPUs) como coprocessadores Palavras-chaves: Codificação de Vídeo, Computação Paralela, CodificaçãoPalavras-chaves: deVídeo,Computação GPGPU, CUDA. 5,7vezes de torno vídeos para alta de definição. obtidos na estimação de movimento apontam para um aumento na velocidade de execução em foi proposto e implementado, além da estimação de movimento. implementaçãoUm algoritmo de busca adequado à arquiteturado paralela em questão cálculo de SAD. Osdefinição. Noresultados segundo estudo de caso foiganho abordado deo codificadorcerca interquadrosde através 3,9da vezes no tempo de execução deste módulo para vídeos de alta / : p t t h ( S E T A V I N U a d l a t i RESUMO g i D a c e t o i l b i B – U D B ) u d b / r b . s e t a v i n u . w w w / validation and testing. Thesituated resultsin theshow intra-framea ofencoder, speedupthe that main ofCPU. was The 3.9firstintegrated case algorithms have been implemented on the GPU accelerateto the encoding and reduce the load timesintostudy was theinthe implementationreference the of softwarecomputational executionmodules of the H.264 encoder in CUDA, present module, in NVIDIA video cards. Thus, parallelizable for of computer architectures in the context of video encoding. The specificThis goal workis toinvestigates implement the use of graphical processing units (GPUs) as co-processors for Keywords: Video Coding, Parallel Computing, GPGPU, ParallelCUDA. Computing, Keywords: Coding, Video speedup a in executionshow of5.7times the forhigh-definition videos. architecture was proposed and implemented, in addition to the SAD calculation. The results encoder was approached through motion estimation. A search algorithm suitable for parallel computational module for high-definition video. In the second case study, the inter-frame / : p t t h ( S E T A V I N U a d l a t ABSTRACT i g i D a c e t o i l b i B – U D B SUMÁRIO ) u d b / 1 INTRODUÇÃO...................................................................................................................15 r 2 UNIDADE DE PROCESSAMENTO GRÁFICO............................................................19 b . s 2.1 Histórico das GPUs......................................................................................................19 e t 2.1.1 Primeira geração...................................................................................................20 a 2.1.2 Segunda geração....................................................................................................20 v i 2.1.3 Terceira Geração...................................................................................................21 n 2.1.4 Quarta geração......................................................................................................21 u . 2.1.5 Quinta geração......................................................................................................22 w 2.2 Pipeline gráfico tradicional.........................................................................................22 w 2.3 Processamento de propósito geral em GPU...............................................................23 w / / 2.4 Visão Geral da CUDA..................................................................................................23 : 2.5 Arquitetura de hardware............................................................................................25 p t t 2.6 Modelo de programação..............................................................................................27 h 2.6.1 Função Kernel.......................................................................................................27 ( 2.6.2 Hierarquia de threads...........................................................................................28 S 2.6.3 Hierarquia de memória........................................................................................29 E T 2.7 Detalhamento dos espaços de memória......................................................................31 A 2.7.1 Registradores e memória local.............................................................................31 V 2.7.2 Memória compartilhada.......................................................................................31 I N 2.7.3 Memória global.....................................................................................................32 U 2.7.4 Memória de textura e superfície..........................................................................33 a 2.7.5 Memória de constantes.........................................................................................34 d 3 CODIFICAÇÃO DE VÍDEO.............................................................................................35 l a 3.1 Vídeo digital..................................................................................................................35 t i 3.2 Compressão de vídeo...................................................................................................36 g i 3.3 Introdução ao H.264....................................................................................................37 D 3.4 Descrição do codec H.264............................................................................................37 a 3.4.1 Predição intraquadro............................................................................................38 c e 3.4.2 Transformadas diretas e inversas........................................................................40 t o 3.4.2.1 Transformada discreta de cossenos..................................................................41 i l 3.4.2.2 Transformada de Hadamard............................................................................44 b i 3.4.3 Quantização...........................................................................................................45 B 3.4.4 Estimativa de movimento.....................................................................................48 – 3.4.4.1 Algoritmos de busca...........................................................................................50 U 3.4.4.2 Critérios de similaridade...................................................................................53

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    83 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us