SlideShare uma empresa Scribd logo
¸˜
                                 Introducao
                                 Bibliotecas
                                Metodologia
                                 Resultados
                                 Conclusao˜




      ¸˜
Avaliacao de uma Biblioteca de Ponto Flutuante
  para FPGA no Supercomputador Cray XD1


Vitor Gomes1,2           Andrea Charao1
                                    ˜            Haroldo de Campos Velho2

                   1
                                    ´                          ¸˜
                       LSC - Laboratorio de Sistemas de Computacao
                       UFSM - Universidade Federal de Santa Maria
      2
                       ´                          ¸˜          ´
          LAC - Laboratorio Associado de Computacao e Matematica Aplicada
                  INPE - Instituto Nacional de Pesquisas Espaciais




                                                                            1 / 11
¸˜
                           Introducao
                           Bibliotecas
                                         Contexto
                          Metodologia
                                         Ponto Flutuante e FPGAs
                           Resultados
                           Conclusao˜


Contexto



            ¸˜
     Computacao H´brida
                 ı
                           ´
     Dispositivos Reconfiguraveis - FPGAs
     Exemplo:



                            Sistema H´brido
                                     ı
                              CPU + FPGA




                                                                   2 / 11
¸˜
                                  Introducao
                                  Bibliotecas
                                                    Contexto
                                 Metodologia
                                                    Ponto Flutuante e FPGAs
                                  Resultados
                                  Conclusao˜


Ponto Flutuante e FPGAs


        Ponto Flutuante                                                       FPGA
          ˜
      Padrao IEEE 754                                           Sem suporte nativo a Ponto Flutuante
                                  ¸˜
      Utilizado em diversas aplicacoes




                  Bibliotecas de Ponto Flutuante em VHDL
                         ˜                              ˜
                        Nao usam todas as regras do padrao IEEE 754


                                                ↓

              Avaliar bibliotecas de Ponto Flutuante em VHDL

                                                                                                       3 / 11
¸˜
                            Introducao
                            Bibliotecas
                           Metodologia    Bibliotecas
                            Resultados
                            Conclusao˜


Bibliotecas


                                             ¸˜
      Diversas bibliotecas implementam operac oes de Ponto Flutuante
      em VHDL: FPLibrary, Vfloat e Xilinx FP Core


      Biblioteca escolhida: Vfloat
          Licenca GNU General Public License
                ¸
                  ¸˜     ´        ´
          Operacoes algebricas basicas
                     ˜
          Conversoes: Ponto Flutuante/Ponto Fixo e Ponto Fixo/Ponto
          Flutuante
                                    ¸˜                          ¸˜
          Flexibilidade para a definicao do tamanho da representacao:
          Simples, Duplo ou outros;



                                                                       4 / 11
¸˜
                              Introducao
                              Bibliotecas   Metodologia
                             Metodologia                     ¸˜
                                            Ambiente de Execucao
                              Resultados          ¸˜
                                            Avaliacao
                              Conclusao˜


Metodologia



          ¸˜
     Operacao Escolhida: Produto escalar
                 ¸˜    ´          ´      ´                          ¸˜
           Operacao basica na analise numerica, nucleo da multiplicacao de
                                                 ´
           matrizes e encontrada em benchmarks




               ¸˜
     Implementacao:
       1        ˆ
           Referencia: Linguagem C (gcc -ffloat-store)
       2   H´brida: Linguagem C (Comunicacao) + VHDL (Produto Escalar)
            ı                            ¸˜




                                                                             5 / 11
¸˜
                           Introducao
                           Bibliotecas   Metodologia
                          Metodologia                     ¸˜
                                         Ambiente de Execucao
                           Resultados          ¸˜
                                         Avaliacao
                           Conclusao˜


                 ¸˜
Ambiente de execucao



    Sistema H´brido lancado em Outubro
             ı         ¸
    de 2004
         ¸˜
    Inovacoes
                          ˜
        Rede de interconexao de alto
        desempenho (RapidArray)
              ˜
        Inclusao de FPGAs
                               ¸˜
    Duas abordagens de comunicacao
    entre CPUs e FPGAs:
        Push                                                    Figura: Cray XD1
        Pull




                                                                                   6 / 11
¸˜
                             Introducao
                             Bibliotecas   Metodologia
                            Metodologia                     ¸˜
                                           Ambiente de Execucao
                             Resultados          ¸˜
                                           Avaliacao
                             Conclusao˜


      ¸˜
Avaliacao



                                          ¸˜
    Para avaliar uma maior faixa de aplicacoes                     Tabela: Testes
    foram definidos 3 experimentos                                 Teste    Elementos

                     ´
    Coordenadas aleatorias normalizadas entre:                       1              1
             32                                                      2             10
        0–2
                                                                     3            100
        0 – 500                                                      4          1.000
        0–1                                                          5         10.000
           ¸˜      ´
    Avaliacao atraves do Erro Relativo entre os                      6        100.000
                                                                     7      1.000.000
                                     ¸˜
    resultados das duas implementac oes                              8     10.000.000
                                                                     9    100.000.000




                                                                                        7 / 11
¸˜
                            Introducao
                            Bibliotecas
                           Metodologia                  ´
                                          Resultados Numericos
                            Resultados
                            Conclusao˜


              ´
Resultados Numericos


                           Tabela: Erro relativo
                                              Erro relativo δ
     Teste    Elementos        0 – 232           0 – 500                0–1
        1              1                  0                      0              0
        2             10                  0                      0              0
        3            100   2, 03 ∗ 10−16                         0   1, 87 ∗ 10−16
        4          1.000   2, 08 ∗ 10−16                         0   1, 68 ∗ 10−16
        5         10.000   3, 11 ∗ 10−06       3, 29 ∗ 10−06         1, 38 ∗ 10−16
        6        100.000   4, 87 ∗ 10−06       1, 64 ∗ 10−06         7, 95 ∗ 10−06
        7      1.000.000   5, 81 ∗ 10−06       1, 53 ∗ 10−05         6, 44 ∗ 10−06
        8     10.000.000   6, 84 ∗ 10−06       1, 64 ∗ 10−05         6, 14 ∗ 10−06
        9    100.000.000   6, 88 ∗ 10−06       1, 64 ∗ 10−05         6, 08 ∗ 10−06

                                                                                     8 / 11
¸˜
                        Introducao
                        Bibliotecas
                       Metodologia                    ´
                                        Resultados Numericos
                        Resultados
                        Conclusao˜


              ´
Resultados Numericos


                                          ¸˜
                   Tabela: Tempos de execucao

                                               Tempo (µs)
         Teste    Elementos           Sistema H´brido
                                               ı                 CPU
            1              1                     2                <1
            2             10                    12                <1
            3            100                   122                <1
            4          1.000                  1290                  1
            5         10.000                 13100                 16
            6        100.000                130000                473
            7      1.000.000               1310000               4980
            8     10.000.000              13100000              49500
            9    100.000.000             131000000             589000

                                                                        9 / 11
¸˜
                           Introducao
                           Bibliotecas
                          Metodologia           ˜
                                         Conclusao
                           Resultados
                           Conclusao˜


       ˜
Conclusao


                                                                ¸˜
     Existem diferencas entre os valores obtidos pela implementac ao
                    ¸
     em C e em VHDL (Vfloat)
        ´
     O calculo do produto escalar em FPGA chega a ser centenas de
     vezes mais lento que em CPU
                          ¸˜                                ¸˜
     Necessidade de avaliacao do impacto dos erros na aplicacao.
           ¸˜
     Avaliacao outras bibliotecas em Ponto Flutuante (Ex. Xilinx FP
     core)
                                ¸˜
     Outra abordagem de comunicacao pode aumentar a velocidade
              ¸˜
     da aplicacao



                                                                       10 / 11
¸˜
                                 Introducao
                                 Bibliotecas
                                Metodologia
                                 Resultados
                                 Conclusao˜




      ¸˜
Avaliacao de uma Biblioteca de Ponto Flutuante
  para FPGA no Supercomputador Cray XD1


Vitor Gomes1,2           Andrea Charao1
                                    ˜            Haroldo de Campos Velho2

                   1
                                    ´                          ¸˜
                       LSC - Laboratorio de Sistemas de Computacao
                       UFSM - Universidade Federal de Santa Maria
      2
                       ´                          ¸˜          ´
          LAC - Laboratorio Associado de Computacao e Matematica Aplicada
                  INPE - Instituto Nacional de Pesquisas Espaciais




                                                                            11 / 11

Mais conteúdo relacionado

Destaque

Welcome To Kates Life S Kills Class2
Welcome To Kates Life S Kills Class2Welcome To Kates Life S Kills Class2
Welcome To Kates Life S Kills Class2
ke1070
 
Bio Fertilizer Test Report
Bio Fertilizer Test ReportBio Fertilizer Test Report
Bio Fertilizer Test Report
wenzhongalex
 
resume
resumeresume
resume
Jep Bal
 
Ib final project
Ib final projectIb final project
Ib final project
Manasi Deliwala
 
Global & Emerging Trends
Global & Emerging TrendsGlobal & Emerging Trends
Global & Emerging Trends
Diana V. Carriço
 
Tourism
TourismTourism
fundamental and technical analysis of equities
fundamental and technical analysis of equitiesfundamental and technical analysis of equities
fundamental and technical analysis of equities
abhishek
 
Contemporary trends
Contemporary trendsContemporary trends
Contemporary trends
Diana V. Carriço
 
How to present your design to the development team so they build it right
How to present your design to the development team so they build it rightHow to present your design to the development team so they build it right
How to present your design to the development team so they build it right
Kal Walkden
 
Dinesh _RESUME Updated
Dinesh _RESUME UpdatedDinesh _RESUME Updated
Dinesh _RESUME Updated
Dinesh Ambati
 
5 مؤلفۀ کلیدی هوش هیجانی
5 مؤلفۀ کلیدی هوش هیجانی5 مؤلفۀ کلیدی هوش هیجانی
5 مؤلفۀ کلیدی هوش هیجانیreza kaboli
 
Fotos Sergio Cabezas
Fotos Sergio CabezasFotos Sergio Cabezas
Fotos Sergio Cabezas
biblio2011
 

Destaque (13)

Welcome To Kates Life S Kills Class2
Welcome To Kates Life S Kills Class2Welcome To Kates Life S Kills Class2
Welcome To Kates Life S Kills Class2
 
Bio Fertilizer Test Report
Bio Fertilizer Test ReportBio Fertilizer Test Report
Bio Fertilizer Test Report
 
resume
resumeresume
resume
 
Ib final project
Ib final projectIb final project
Ib final project
 
Global & Emerging Trends
Global & Emerging TrendsGlobal & Emerging Trends
Global & Emerging Trends
 
Tourism
TourismTourism
Tourism
 
fundamental and technical analysis of equities
fundamental and technical analysis of equitiesfundamental and technical analysis of equities
fundamental and technical analysis of equities
 
Contemporary trends
Contemporary trendsContemporary trends
Contemporary trends
 
How to present your design to the development team so they build it right
How to present your design to the development team so they build it rightHow to present your design to the development team so they build it right
How to present your design to the development team so they build it right
 
Kfc
KfcKfc
Kfc
 
Dinesh _RESUME Updated
Dinesh _RESUME UpdatedDinesh _RESUME Updated
Dinesh _RESUME Updated
 
5 مؤلفۀ کلیدی هوش هیجانی
5 مؤلفۀ کلیدی هوش هیجانی5 مؤلفۀ کلیدی هوش هیجانی
5 مؤلفۀ کلیدی هوش هیجانی
 
Fotos Sergio Cabezas
Fotos Sergio CabezasFotos Sergio Cabezas
Fotos Sergio Cabezas
 

Semelhante a Apresentacao WSCAD 2008

Redes 03 - rede
Redes   03 - redeRedes   03 - rede
Redes 03 - rede
Christopher Cerqueira
 
Linux e zephyr conversando no mesmo SoC
Linux e zephyr conversando no mesmo SoCLinux e zephyr conversando no mesmo SoC
Linux e zephyr conversando no mesmo SoC
Embarcados
 
Sistemas embarcados principais_plataformas_e_recursos
Sistemas embarcados principais_plataformas_e_recursosSistemas embarcados principais_plataformas_e_recursos
Sistemas embarcados principais_plataformas_e_recursos
Gustavo Ferreira Palma
 
OpenLDAP: Porque utilizá-lo
OpenLDAP: Porque utilizá-loOpenLDAP: Porque utilizá-lo
OpenLDAP: Porque utilizá-lo
Paulo Renato Lopes Seixas
 
LinuxCon 2010: Tutorial - Reverse Engineering on GNU/Linux Systems
LinuxCon 2010: Tutorial - Reverse Engineering on GNU/Linux SystemsLinuxCon 2010: Tutorial - Reverse Engineering on GNU/Linux Systems
LinuxCon 2010: Tutorial - Reverse Engineering on GNU/Linux Systems
Fernando Mercês
 
Produtividade em Integração de Aplicações com Apache Camel
Produtividade em Integração de Aplicações com Apache CamelProdutividade em Integração de Aplicações com Apache Camel
Produtividade em Integração de Aplicações com Apache Camel
Alessandro Kieras
 
Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...
Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...
Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...
Adriano Tavares
 
Sistemas Distribuídos: RMI, CORBA e SOA
Sistemas Distribuídos: RMI, CORBA e SOASistemas Distribuídos: RMI, CORBA e SOA
Sistemas Distribuídos: RMI, CORBA e SOA
Líus Fontenelle Carneiro
 
Frameworks Opensource: ferramentas para desenvolvimento rápido de aplicações Web
Frameworks Opensource: ferramentas para desenvolvimento rápido de aplicações WebFrameworks Opensource: ferramentas para desenvolvimento rápido de aplicações Web
Frameworks Opensource: ferramentas para desenvolvimento rápido de aplicações Web
Jairo Junior
 
SQLAlchemy - A magia do mapeamento objeto relacional.
SQLAlchemy - A magia do mapeamento objeto relacional.SQLAlchemy - A magia do mapeamento objeto relacional.
SQLAlchemy - A magia do mapeamento objeto relacional.
Ramiro Luz
 
UFPA PPGCC LPRAD 2014-02 - Edinaldo La-Roque - OPNET - Apresentacao do Simula...
UFPA PPGCC LPRAD 2014-02 - Edinaldo La-Roque - OPNET - Apresentacao do Simula...UFPA PPGCC LPRAD 2014-02 - Edinaldo La-Roque - OPNET - Apresentacao do Simula...
UFPA PPGCC LPRAD 2014-02 - Edinaldo La-Roque - OPNET - Apresentacao do Simula...
Edinaldo La-Roque
 
Eripi2018 p4 tutorial
Eripi2018 p4 tutorialEripi2018 p4 tutorial
Eripi2018 p4 tutorial
Nathan Saraiva
 
XML-RPC + Python + Banco de Dados - Fernando Massen
XML-RPC + Python + Banco de Dados - Fernando MassenXML-RPC + Python + Banco de Dados - Fernando Massen
XML-RPC + Python + Banco de Dados - Fernando Massen
Tchelinux
 
PLCduino - A PLC using Arduino platform
PLCduino - A PLC using Arduino platformPLCduino - A PLC using Arduino platform
PLCduino - A PLC using Arduino platform
Renato Mintz
 
Phpreact flisol-fb-2014
Phpreact flisol-fb-2014Phpreact flisol-fb-2014
Phpreact flisol-fb-2014
Adler Medrado
 
Ferramentas de Programação Paralela para Arquiteturas Multicore
Ferramentas de Programação Paralela para Arquiteturas MulticoreFerramentas de Programação Paralela para Arquiteturas Multicore
Ferramentas de Programação Paralela para Arquiteturas Multicore
Helton Ritter
 
Skytools, pgbouncer e plproxy
Skytools, pgbouncer e plproxySkytools, pgbouncer e plproxy
Skytools, pgbouncer e plproxy
Fernando Ike
 
Webinar: Explorando o SimulIDE - Simulador de Circuitos Eletrônicos Open Source
Webinar:  Explorando o SimulIDE - Simulador de Circuitos Eletrônicos Open SourceWebinar:  Explorando o SimulIDE - Simulador de Circuitos Eletrônicos Open Source
Webinar: Explorando o SimulIDE - Simulador de Circuitos Eletrônicos Open Source
Embarcados
 
Cursos Season
Cursos Season Cursos Season
Cursos Season
SeasonInformatica
 
Treinamentos Avançados em Informática
Treinamentos Avançados em InformáticaTreinamentos Avançados em Informática
Treinamentos Avançados em Informática
Eder Carneiro
 

Semelhante a Apresentacao WSCAD 2008 (20)

Redes 03 - rede
Redes   03 - redeRedes   03 - rede
Redes 03 - rede
 
Linux e zephyr conversando no mesmo SoC
Linux e zephyr conversando no mesmo SoCLinux e zephyr conversando no mesmo SoC
Linux e zephyr conversando no mesmo SoC
 
Sistemas embarcados principais_plataformas_e_recursos
Sistemas embarcados principais_plataformas_e_recursosSistemas embarcados principais_plataformas_e_recursos
Sistemas embarcados principais_plataformas_e_recursos
 
OpenLDAP: Porque utilizá-lo
OpenLDAP: Porque utilizá-loOpenLDAP: Porque utilizá-lo
OpenLDAP: Porque utilizá-lo
 
LinuxCon 2010: Tutorial - Reverse Engineering on GNU/Linux Systems
LinuxCon 2010: Tutorial - Reverse Engineering on GNU/Linux SystemsLinuxCon 2010: Tutorial - Reverse Engineering on GNU/Linux Systems
LinuxCon 2010: Tutorial - Reverse Engineering on GNU/Linux Systems
 
Produtividade em Integração de Aplicações com Apache Camel
Produtividade em Integração de Aplicações com Apache CamelProdutividade em Integração de Aplicações com Apache Camel
Produtividade em Integração de Aplicações com Apache Camel
 
Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...
Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...
Produtividade em integração de aplicações com apache camel tdc2012-são paulo-...
 
Sistemas Distribuídos: RMI, CORBA e SOA
Sistemas Distribuídos: RMI, CORBA e SOASistemas Distribuídos: RMI, CORBA e SOA
Sistemas Distribuídos: RMI, CORBA e SOA
 
Frameworks Opensource: ferramentas para desenvolvimento rápido de aplicações Web
Frameworks Opensource: ferramentas para desenvolvimento rápido de aplicações WebFrameworks Opensource: ferramentas para desenvolvimento rápido de aplicações Web
Frameworks Opensource: ferramentas para desenvolvimento rápido de aplicações Web
 
SQLAlchemy - A magia do mapeamento objeto relacional.
SQLAlchemy - A magia do mapeamento objeto relacional.SQLAlchemy - A magia do mapeamento objeto relacional.
SQLAlchemy - A magia do mapeamento objeto relacional.
 
UFPA PPGCC LPRAD 2014-02 - Edinaldo La-Roque - OPNET - Apresentacao do Simula...
UFPA PPGCC LPRAD 2014-02 - Edinaldo La-Roque - OPNET - Apresentacao do Simula...UFPA PPGCC LPRAD 2014-02 - Edinaldo La-Roque - OPNET - Apresentacao do Simula...
UFPA PPGCC LPRAD 2014-02 - Edinaldo La-Roque - OPNET - Apresentacao do Simula...
 
Eripi2018 p4 tutorial
Eripi2018 p4 tutorialEripi2018 p4 tutorial
Eripi2018 p4 tutorial
 
XML-RPC + Python + Banco de Dados - Fernando Massen
XML-RPC + Python + Banco de Dados - Fernando MassenXML-RPC + Python + Banco de Dados - Fernando Massen
XML-RPC + Python + Banco de Dados - Fernando Massen
 
PLCduino - A PLC using Arduino platform
PLCduino - A PLC using Arduino platformPLCduino - A PLC using Arduino platform
PLCduino - A PLC using Arduino platform
 
Phpreact flisol-fb-2014
Phpreact flisol-fb-2014Phpreact flisol-fb-2014
Phpreact flisol-fb-2014
 
Ferramentas de Programação Paralela para Arquiteturas Multicore
Ferramentas de Programação Paralela para Arquiteturas MulticoreFerramentas de Programação Paralela para Arquiteturas Multicore
Ferramentas de Programação Paralela para Arquiteturas Multicore
 
Skytools, pgbouncer e plproxy
Skytools, pgbouncer e plproxySkytools, pgbouncer e plproxy
Skytools, pgbouncer e plproxy
 
Webinar: Explorando o SimulIDE - Simulador de Circuitos Eletrônicos Open Source
Webinar:  Explorando o SimulIDE - Simulador de Circuitos Eletrônicos Open SourceWebinar:  Explorando o SimulIDE - Simulador de Circuitos Eletrônicos Open Source
Webinar: Explorando o SimulIDE - Simulador de Circuitos Eletrônicos Open Source
 
Cursos Season
Cursos Season Cursos Season
Cursos Season
 
Treinamentos Avançados em Informática
Treinamentos Avançados em InformáticaTreinamentos Avançados em Informática
Treinamentos Avançados em Informática
 

Apresentacao WSCAD 2008

  • 1. ¸˜ Introducao Bibliotecas Metodologia Resultados Conclusao˜ ¸˜ Avaliacao de uma Biblioteca de Ponto Flutuante para FPGA no Supercomputador Cray XD1 Vitor Gomes1,2 Andrea Charao1 ˜ Haroldo de Campos Velho2 1 ´ ¸˜ LSC - Laboratorio de Sistemas de Computacao UFSM - Universidade Federal de Santa Maria 2 ´ ¸˜ ´ LAC - Laboratorio Associado de Computacao e Matematica Aplicada INPE - Instituto Nacional de Pesquisas Espaciais 1 / 11
  • 2. ¸˜ Introducao Bibliotecas Contexto Metodologia Ponto Flutuante e FPGAs Resultados Conclusao˜ Contexto ¸˜ Computacao H´brida ı ´ Dispositivos Reconfiguraveis - FPGAs Exemplo: Sistema H´brido ı CPU + FPGA 2 / 11
  • 3. ¸˜ Introducao Bibliotecas Contexto Metodologia Ponto Flutuante e FPGAs Resultados Conclusao˜ Ponto Flutuante e FPGAs Ponto Flutuante FPGA ˜ Padrao IEEE 754 Sem suporte nativo a Ponto Flutuante ¸˜ Utilizado em diversas aplicacoes Bibliotecas de Ponto Flutuante em VHDL ˜ ˜ Nao usam todas as regras do padrao IEEE 754 ↓ Avaliar bibliotecas de Ponto Flutuante em VHDL 3 / 11
  • 4. ¸˜ Introducao Bibliotecas Metodologia Bibliotecas Resultados Conclusao˜ Bibliotecas ¸˜ Diversas bibliotecas implementam operac oes de Ponto Flutuante em VHDL: FPLibrary, Vfloat e Xilinx FP Core Biblioteca escolhida: Vfloat Licenca GNU General Public License ¸ ¸˜ ´ ´ Operacoes algebricas basicas ˜ Conversoes: Ponto Flutuante/Ponto Fixo e Ponto Fixo/Ponto Flutuante ¸˜ ¸˜ Flexibilidade para a definicao do tamanho da representacao: Simples, Duplo ou outros; 4 / 11
  • 5. ¸˜ Introducao Bibliotecas Metodologia Metodologia ¸˜ Ambiente de Execucao Resultados ¸˜ Avaliacao Conclusao˜ Metodologia ¸˜ Operacao Escolhida: Produto escalar ¸˜ ´ ´ ´ ¸˜ Operacao basica na analise numerica, nucleo da multiplicacao de ´ matrizes e encontrada em benchmarks ¸˜ Implementacao: 1 ˆ Referencia: Linguagem C (gcc -ffloat-store) 2 H´brida: Linguagem C (Comunicacao) + VHDL (Produto Escalar) ı ¸˜ 5 / 11
  • 6. ¸˜ Introducao Bibliotecas Metodologia Metodologia ¸˜ Ambiente de Execucao Resultados ¸˜ Avaliacao Conclusao˜ ¸˜ Ambiente de execucao Sistema H´brido lancado em Outubro ı ¸ de 2004 ¸˜ Inovacoes ˜ Rede de interconexao de alto desempenho (RapidArray) ˜ Inclusao de FPGAs ¸˜ Duas abordagens de comunicacao entre CPUs e FPGAs: Push Figura: Cray XD1 Pull 6 / 11
  • 7. ¸˜ Introducao Bibliotecas Metodologia Metodologia ¸˜ Ambiente de Execucao Resultados ¸˜ Avaliacao Conclusao˜ ¸˜ Avaliacao ¸˜ Para avaliar uma maior faixa de aplicacoes Tabela: Testes foram definidos 3 experimentos Teste Elementos ´ Coordenadas aleatorias normalizadas entre: 1 1 32 2 10 0–2 3 100 0 – 500 4 1.000 0–1 5 10.000 ¸˜ ´ Avaliacao atraves do Erro Relativo entre os 6 100.000 7 1.000.000 ¸˜ resultados das duas implementac oes 8 10.000.000 9 100.000.000 7 / 11
  • 8. ¸˜ Introducao Bibliotecas Metodologia ´ Resultados Numericos Resultados Conclusao˜ ´ Resultados Numericos Tabela: Erro relativo Erro relativo δ Teste Elementos 0 – 232 0 – 500 0–1 1 1 0 0 0 2 10 0 0 0 3 100 2, 03 ∗ 10−16 0 1, 87 ∗ 10−16 4 1.000 2, 08 ∗ 10−16 0 1, 68 ∗ 10−16 5 10.000 3, 11 ∗ 10−06 3, 29 ∗ 10−06 1, 38 ∗ 10−16 6 100.000 4, 87 ∗ 10−06 1, 64 ∗ 10−06 7, 95 ∗ 10−06 7 1.000.000 5, 81 ∗ 10−06 1, 53 ∗ 10−05 6, 44 ∗ 10−06 8 10.000.000 6, 84 ∗ 10−06 1, 64 ∗ 10−05 6, 14 ∗ 10−06 9 100.000.000 6, 88 ∗ 10−06 1, 64 ∗ 10−05 6, 08 ∗ 10−06 8 / 11
  • 9. ¸˜ Introducao Bibliotecas Metodologia ´ Resultados Numericos Resultados Conclusao˜ ´ Resultados Numericos ¸˜ Tabela: Tempos de execucao Tempo (µs) Teste Elementos Sistema H´brido ı CPU 1 1 2 <1 2 10 12 <1 3 100 122 <1 4 1.000 1290 1 5 10.000 13100 16 6 100.000 130000 473 7 1.000.000 1310000 4980 8 10.000.000 13100000 49500 9 100.000.000 131000000 589000 9 / 11
  • 10. ¸˜ Introducao Bibliotecas Metodologia ˜ Conclusao Resultados Conclusao˜ ˜ Conclusao ¸˜ Existem diferencas entre os valores obtidos pela implementac ao ¸ em C e em VHDL (Vfloat) ´ O calculo do produto escalar em FPGA chega a ser centenas de vezes mais lento que em CPU ¸˜ ¸˜ Necessidade de avaliacao do impacto dos erros na aplicacao. ¸˜ Avaliacao outras bibliotecas em Ponto Flutuante (Ex. Xilinx FP core) ¸˜ Outra abordagem de comunicacao pode aumentar a velocidade ¸˜ da aplicacao 10 / 11
  • 11. ¸˜ Introducao Bibliotecas Metodologia Resultados Conclusao˜ ¸˜ Avaliacao de uma Biblioteca de Ponto Flutuante para FPGA no Supercomputador Cray XD1 Vitor Gomes1,2 Andrea Charao1 ˜ Haroldo de Campos Velho2 1 ´ ¸˜ LSC - Laboratorio de Sistemas de Computacao UFSM - Universidade Federal de Santa Maria 2 ´ ¸˜ ´ LAC - Laboratorio Associado de Computacao e Matematica Aplicada INPE - Instituto Nacional de Pesquisas Espaciais 11 / 11