Placa de vídeo em CUDA



Documentos relacionados
Auditoria de senhas em hardware paralelo com o John the Ripper O impacto das tecnologias de processamento paralelo na quebra de senhas

Organização e Arquitetura de Computadores I. de Computadores

Informática I. Aula 5. Aula 5-13/05/2006 1

CONHEÇA MELHOR SEU COMPUTADOR

Tecnologia PCI express. Introdução. Tecnologia PCI Express

Curso de Instalação e Gestão de Redes Informáticas

Comparativo de desempenho do Pervasive PSQL v11


Tecnologia da Informação. Prof Odilon Zappe Jr

Sistema de Computação

Sistemas Computacionais II Professor Frederico Sauer

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

Simulador ITIL Exame de Certificação da EXIM

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 10

Sistema Operacional Correção - Exercício de Revisão

PARANÁ GOVERNO DO ESTADO

Introdução ao Aplicativo de Programação LEGO MINDSTORMS Education EV3

O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware

Lição 2: O que Faz um Canal Funcionar?

Simulador CCNA Exame de Certificação da CISCO

Processadores. Guilherme Pontes

Por que você precisa de um Processador Gráfico?

Infraestrutura: devo usar a nuvem? Prof. Artur Clayton Jovanelli

Processadores de Núcleo Duplo

Dadas a base e a altura de um triangulo, determinar sua área.

DDoS: como funciona um ataque distribuído por negação de serviço

VIRTUALIZAÇÃO CONVENCIONAL

1. NÍVEL CONVENCIONAL DE MÁQUINA

SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2

Montagem e Manutenção (Hardware) Aula 01

Operador de Computador. Informática Básica

5 Poderosos Gatilhos Mentais

Visão Geral da Arquitetura de Computadores. Prof. Elthon Scariel Dias

INSTITUTO DE EMPREGO E FORMAÇÃO PROFISSIONAL, I.P.

Aula 26: Arquiteturas RISC vs. CISC

Computador E/S, Memória, Barramento do sistema e CPU Onde a CPU Registradores, ULA, Interconexão interna da CPU e Unidade de controle.

Alarme Automotivo com mensagem para móvel utilizando Arduino

soluções inovadoras para desafios de negócios Manual explicativo do quadro do modelo de negócios passo a passo com exemplos

Montagem e Manutenção. Luís Guilherme A. Pontes

Fundamentos de Hardware. 1. Placa Mãe

BH PARK Software de Estacionamento

OBI2009 Caderno de Tarefas

Arquitetura de Rede de Computadores

Processos e Threads (partes I e II)

Sistemas Operacionais. Prof. André Y. Kusumoto

Tela Azul da Morte: o que é e como resolver Descubra o que pode causar esse travamento do Windows com a ajuda de programas gratuitos

Computador Digital Circuitos de um computador (Hardware)

1. Quem somos nós? A AGI Soluções nasceu em Belo Horizonte (BH), com a simples missão de entregar serviços de TI de forma rápida e com alta qualidade.

Estudo de Caso. Cliente: Rafael Marques. Coach: Rodrigo Santiago. Duração do processo: 12 meses

Tipos de pragas Virtuais; Como funciona os antivírus; Principais golpes virtuais; Profº Michel

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 1

Técnicas de Manutenção de Computadores

O que é Grid Computing

5 Equacionando os problemas

Sistemas Operativos. Threads. 3º ano - ESI e IGE (2011/2012) Engenheiro Anilton Silva Fernandes (afernandes@unipiaget.cv)

Registro e Acompanhamento de Chamados

Arquitetura e Organização de Computadores. Capítulo 0 - Introdução

Como melhorar o sinal da rede sem fio mudando o canal Wi-Fi do roteador

ainda é um dos grandes

CP C U P U - Un U i n da d d a e d e Ce C n e t n ral a de d e Pr P oc o es e sam a e m n e t n o o Pr P oc o es e sad a o d r o Aula 03

Hardware de Computadores

Simulador PMP - 4º Edição Exame de Certificação do PMI

FUNDAMENTOS DE HARDWARE COMO FUNCIONA UM PC? Professor Carlos Muniz

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

AULA 06 CRIAÇÃO DE USUÁRIOS

FUNDAMENTOS DE HARDWARE PLACA FAX/MODEM. Professor Carlos Muniz

Distribuidor de Mobilidade GUIA OUTSOURCING

Sistemas Operacionais

MyDrivers. Nomes: nº. Guilherme G. M. Silva 17 Nicolas Assaf 31 BANDEIRANTE

Fundamentos da Informática. História dos Computadores Prof. Hélder Almeida

10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO

Qual é o tipo de problema?

O processador é um dos elementos componentes do computador moderno, sendo responsável pelo gerenciamento de todo o computador.

PARALELIZAÇÃO DE APLICAÇÕES NA ARQUITETURA CUDA: UM ESTUDO SOBRE VETORES 1

Como Implantar Agora 03 Controles Simples e Efetivos Para Você Garantir A RASTREABILIDADE Da Sua Empresa Sem Precisar Investir em Softwares Caros!

Programação Orientada a Objeto

FUNDAMENTOS DE HARDWARE PROCESSADORES. Professor Carlos Muniz

Introdução. Introdução

Arduino e Proteus (Tutorial)

Introdução à Informática Professor: Juliano Dornelles

2 Diagrama de Caso de Uso

Como se tornar um desenvolvedor de plug-ins para AutoCAD e Revit

os botões emocionais Rodrigo T. Antonangelo

Sumário. Prefácio... xi. Prólogo A Física tira você do sério? Lei da Ação e Reação... 13

Como fazer benchmark do computador

3 Qualidade de Software

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 8

SISTEMAS OPERACIONAIS. Maquinas Virtuais e Emuladores

Estrutura de Dados Básica

FLUXO DE CAIXA: Módulo BI (Business Intelligence)

Sumário. Organização de Computadores Módulo 3. Primeira Geração Válvulas ( ) Primeira Geração Válvulas ( )

Abstrações e Tecnologias Computacionais. Professor: André Luis Meneses Silva /msn: andreluis.ms@gmail.com Página: orgearq20101.wordpress.

UNIVERSIDADE FEDERAL DE SANTA MARIA DEPARTAMENTO DE ELETRÔNICA E COMPUTAÇÃO Programa de Pós-Graduação em Informática

3. Cite o nome e características do ponto mais alto e do ponto mais baixo de uma onda?

AUTOMAÇÃO DE ESCRITÓRIOS ADE

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS

CONSTRUÇÃO DE JOGOS: FERRAMENTA ELETRÔNICA PARA ENSINO DA RESOLUÇÃO DO CUBO DE RUBIK

Transcrição:

Placa de vídeo em CUDA Matheus Costa Leone de Souza Krystian Aparacido Resumo Quando você tem um cálculo que possa ser grande demais para você realizar a mão, a primeira solução que lhe vem a cabeça é pegar uma calculadora, não é mesmo? No entanto, quando você tem uma série de cálculos extremamente complexos que poderiam te tomar horas em uma calculadora enquanto você tem poucos segundos para resolvê-los, é preciso algo muito maior. CUDA, sigla para Compute Unified Device Architecture, é uma extensão para a linguagem de programação C, a qual possibilita o uso de computação paralela. A ideia por trás disso tudo é que programadores possam usar os poderes da unidade de processamento gráfico (GPU) para realizar algumas operações mais rapidamente. Abstract When you have a calculation that can be too big for you to perform a hand, the first solution that comes to mind is to get a calculator, Is not it? However, when you have a number of extremely complex calculations that could take you hours on a calculator while you have a few seconds to solve them, we need something bigger. CUDA, which stands for Compute Unified Device Architecture, It is an extension to the C programming language, which enables the use of parallel computing. The idea behind this is that developers can use the power of the graphics processing unit (GPU) to perform some operations faster.

Introdução A computação paralela é uma forma interessante de agilizar processos grandes demais. Na verdade, esse tipo de processamento pode ser comparado com a forma em que trabalhamos. Quando temos uma tarefa muito complexa para ser resolvida, acabamos dividindo-a em afazeres menores e mais fáceis de serem terminados. Com isso, aos poucos, acabamos também conquistando o objetivo maior, composto pela soma dessas atividades reduzidas. Grosso modo, podemos dizer que é dessa maneira que a computação paralela funciona. Quando uma tarefa muito complexa é executada, ela pode ser dividida em atividades mais simples, que são distribuídas pelos núcleos de um processador ou, até mesmo, enviadas para diferentes máquinas que integram um sistema computacional maior, como um cluster. Assim, o resultado é obtido mais rapidamente. A CUDA é a plataforma de computação paralela desenvolvida pela NVIDIA, a qual tem ganhado cada vez mais notoriedade por seu desempenho. Neste artigos vamos explicar tudo sobre essa tecnologia.

Desenvolvimento Divulgação/NVIDIA Em suma, a GPU passa a operar como se fosse mais um CPU dentro máquina, aumentando a performance do sistema. Jogos de computadores costumam usar a CUDA para o cálculo de propriedades físicas, como efeitos de fogo, água e fumaça. Todavia, a tecnologia também é capaz de trabalhar com aplicações não gráficas, como softwares de criptografia e simulações biológicas. A renderização de texturas, por exemplo, não é suportada pela CUDA. Além disso, as diversas cópias realizadas entre uma memória e outra podem causar algum impacto no desempenho geral das aplicações, mas isso varia de acordo com o barramento do sistema. Outro problema a ser considerado diz respeito à compatibilidade do software desenvolvido dessa forma. Lembre-se de que a CUDA é uma tecnologia da NVIDIA e, portanto, ela só funciona com placas de vídeo fabricadas por essa empresa. Uma alternativa mais aberta seria a OpenCL, desenvolvida inicialmente pela Apple. Caso o computador não tenha uma placa NVIDIA instalada, o código CUDA funcionará corretamente. Porém, como todo o processamento será feito pelo CPU, o desempenho será bem inferior.

Como era de se esperar, a tecnologia da NVIDIA não é a solução para todos os problemas. A CUDA possui algumas limitações que devem ser levadas em conta pelos programadores ao desenvolverem seus softwares. Existem ainda alguns usos inusitados, como é o caso da empresa General Mills, que resolveu aplicar a CUDA para descobrir qual é a melhor forma de assar uma pizza congelada no forno micro-ondas. Em vez de assar milhares de pizzas, a companhia usou modelos virtuais do alimento para descobrir como elas recebiam os efeitos da radiação de micro-ondas. Foi mais rápido e mais barato realizar testes virtuais antes de partir para a prática. História No final dos anos 90, surgiu a primeira GPU da NVIDIA, quando o hardware começou a tornar-se cada vez mais programável. A partir de então pesquisadores começaram a estudar sobre o assunto, culminando na GPU de Propósito Geral (GPGPU). Entretanto a GPGPU naquela época era muito mais complexa, e poucas pessoas conseguiam trabalhar com ela, até que uma equipe de pesquisadores da Universidade de Stanford reuniu-se para melhorar a GPU. Em 2003, um grupo de pesquisadores liderado por Ian Buck desenvolveu o Brook, o primeiro modelo de programação a adotar a linguagem C em uma plataforma de computação paralela, revelam assim uma GPU como um processador de propósito geral em uma linguagem de alto nível, além de os programas em Brook serem sete vezes mais rápidos. A NVIDIA então sabia que um hardware extremamente rápido assim deveria conter ferramentas intuitivas, por isso convidou Ian Buck para trabalhar na empresa e começar a desenvolver uma solução para executar o C na GPU de forma melhor. Assim, a NVIDIA apresentou em 2006 o CUDA, a primeira solução para computação de propósito geral em GPUs. Algumas Placas que contém cuda Nvidia GeForce Nvidia GeForce Mobile Nvidia Quadro GeForce GTX TITAN GeFoce GTX 680MX Quadro K6000 GeForce GTX 690 GeForce GTX 680M Quadro K5000 GeForce GTX 650 GeForce GTX 750 GeForce GT 220

Conclusão A utilização da tecnologia CUDA, não é aplicada apenas no desenvolvimento de jogos, mas também nas áreas petrolíferas e para toda área de processamento da linguagem C e Phyton. ` Referências http://www.tecmundo.com.br/computacao-grafica/10507-nvidia-cuda-o-que-e-e-comofunciona.htm Nvidea Ian Buck OBS: Não foi encontrado os nomes dos desenvolvedores físicos da tecnologia CUDA.