São as operações usadas em CUDA exceto transferência de dados?

Praticamente todas as placas de vídeo da Nvidia atuais têm um selo informando que ela é possui núcleos de processamento CUDA, algo muito procurado por programadores de aplicações de alto desempenho, mas que ao mesmo tempo confunde o resto dos usuários. Muitos entusiastas por carros reconhecem esse nome como sinônimo de "muscle cars" fabricados entre 1960 e 1970, mas o que essa sigla significa no mundo da informática?

Acrônimo de Compute Unified Device Architecture, o CUDA é uma engine de computação desenvolvida pela Nvidia para permitir que programadores utilizem todo o poder de processamento de suas placas de vídeo (GPUs) em algoritmos otimizados para utilizar recursos de computação paralela. Suportando várias linguagens de programação, como C, C++, Java, Fortran e Python, essa tecnologia não obriga o programador a aprender uma nova linguagem para criar seus programas, já que oferece uma camada de "tradução" entre a que ele já sabe (como Java, por exemplo) e faz o código uilizar os recursos da placa de vídeo através do uso de bibliotecas de linguagem.

Muitos podem se perguntar o motivo de programadores se darem o trabalho de otimizar seus algoritmos para utilizar computação paralela, já que o poder dos processadores atuais chegaram em um nível tão alto que é difícil imaginar algo que eles não consigam lidar. Algumas aplicações, como processamento de vídeo, análises sísmicas, simulações de dinâmica dos fluidos e previsão do tempo, possuem uma quantidade tão absurda de dados para serem processados que somente através desse recurso é possível conseguir o resultado desejado em um tempo hábil.

Esses cálculos normalmente são simples e repetitivos, ideal para as placas de vídeo, visto que essas possuem uma quantidade muito maior de processadores ("apenas" 1536 em uma Nvidia GTX 680 contra 8 de um AMD Bulldozer FX-8150) e memórias muito mais velozes (atualmente os melhores modelos vem com chips GDDR5, versus DDR3).

Além disso, a utilização de GPUs para processar uma quantidade massiva de dados é mais vantajosa tanto do ponto de vista do consumo elétrico quanto na compra do equipamento utilizando como parâmetro.

Tri-SLI... Muito muito poder de fogo

Com os exemplos de utilização descritos acima, fica difícil entender como um usuário comum pode tirar proveito dessa tecnologia, mas o fato é que ela não está tão longe de nós. Alguns programas, como o Arcsoft Totalmedia e o Xilisoft Video Converter já são otimizados para utilizar todos os núcleos CUDA disponíveis na GPU. Se você possui uma placa de vídeo Nvidia com esse recurso, vai observar uma grande diferença de performance no que deseja fazer.

Possui uma placa Nvidia com a tecnologia CUDA? Então faça o download dos programas acima e manipule vídeos com muito mais facilidade!

Grátis

5 pág.

São as operações usadas em CUDA exceto transferência de dados?

  • Denunciar


Pré-visualização | Página 1 de 1

1a 
 Questão 
Acerto: 1,0 / 1,0 
 
Em relação ao modelo cliente-servidor, considere as afirmações a seguir. 
I) É a arquitetura de sistemas distribuídos mais amplamente utilizada. 
II) Cliente e servidor residem em computadores separados. 
III) O servidor pode iniciar a sessão de comunicação. 
Selecione a alternativa correta: 
 
 
Apenas a afirmação II está correta. 
 
As afirmações II e III estão corretas. 
 
As afirmações I e II estão corretas. 
 
Todas as afirmações estão corretas. 
 Apenas a afirmação I está correta. 
Respondido em 23/09/2021 16:51:54 
 
Explicação: 
A resposta certa é: Apenas a afirmação I está correta. 
 
 
2a 
 Questão 
Acerto: 1,0 / 1,0 
 
Em relação a arquitetura cliente-servidor, considere as afirmações a seguir. 
I) Os papéis e as responsabilidades de um sistema de computação podem ser 
distribuídos entre vários computadores independentes que são conhecidos por si só por 
meio de uma rede. 
II) Todos os dados são armazenados nos servidores, que geralmente possuem controles 
de segurança muito maiores do que a maioria dos clientes. 
III) Funciona com vários clientes diferentes com capacidades diferentes. 
Selecione a alternativa correta: 
 
 
As afirmações I e II estão corretas. 
 
Apenas a afirmação II está correta. 
 
As afirmações II e III estão corretas. 
 Todas as afirmações estão corretas. 
 
Apenas a afirmação I está correta. 
Respondido em 23/09/2021 16:53:12 
 
Explicação: 
A resposta certa é: Todas as afirmações estão corretas. 
 
 
3a 
 Questão 
Acerto: 0,0 / 1,0 
 
Em relação ao modelo mestre-escravo, considere as afirmações a seguir. 
I) A arquitetura mestre-escravo tem baixa tolerância a erros. 
II) O mestre pode sofrer problemas de saturação de comunicações. 
III) É adequada para sistemas de tempo real. 
Selecione a alternativa correta: 
 
 
Apenas a afirmação II está correta. 
 
Apenas a afirmação I está correta. 
 As afirmações II e III estão corretas. 
 
Todas as afirmações estão corretas. 
 As afirmações I e II estão corretas. 
Respondido em 23/09/2021 16:56:05 
 
Explicação: 
A resposta certa é: As afirmações II e III estão corretas. 
 
 
4a 
 Questão 
Acerto: 1,0 / 1,0 
 
Em relação aos conceitos de sincronização de processos, selecione a alternativa correta. 
I. Deadlock (ou impasse) ocorre quando muitos processos estão esperando por um 
recurso compartilhado (seção crítica), que está sendo mantido por algum outro 
processo. 
II. Espera ocupada ocorre quando um processo está esperando para entrar na seção 
crítica, mas outros processos a monopolizam, e o primeiro processo é forçado a esperar 
indefinidamente. 
III. Inversão de prioridade ocorre quando um processo de alta prioridade está na seção 
crítica e é interrompido por um processo de média prioridade. 
 
 
Apenas a afirmação II está correta. 
 
As afirmações I e II estão corretas. 
 As afirmações I e III estão corretas. 
 
As afirmações II e III estão corretas. 
 
Apenas a afirmação I está correta. 
Respondido em 23/09/2021 16:53:48 
 
Explicação: 
A resposta certa é: As afirmações I e III estão corretas. 
 
 
 
5a 
 Questão 
Acerto: 1,0 / 1,0 
 
Assim como nos sistemas operacionais, os sistemas distribuídos também têm deadlock. 
Um deadlock distribuído ocorre quando os processos espalhados por diferentes 
computadores em uma rede aguardam eventos que não ocorrerão. Existem três tipos 
de deadlock distribuído: 
 
 Deadlock fantasma, deadlock de recurso, deadlock de comunicação. 
 
Deadlock de comunicação, deadlock fantasma, deadlock de espera. 
 
Deadlock fantasma, deadlock de espera, deadlock de comunicação. 
 
Deadlock de espera, deadlock de recurso, deadlock de comunicação. 
 
Deadlock de recurso, deadlock fantasma, deadlock de espera. 
Respondido em 23/09/2021 16:55:36 
 
Explicação: 
A resposta certa é: Deadlock fantasma, deadlock de recurso, deadlock de comunicação. 
 
 
6a 
 Questão 
Acerto: 1,0 / 1,0 
 
Em relação aos conceitos de variáveis compartilhadas, selecione a alternativa correta. 
I. Considere um ambiente com um processo executando vários threads. As variáveis 
compartilhadas são aquelas que podem ser lidas ou alteradas por qualquer thread, e as 
variáveis privadas são de uso exclusivo de um único thread. 
II. O modelo no qual há um thread mestre e uma coleção de threads de trabalho 
(possivelmente vazia em seu início) é chamado de thread dinâmico. 
III. O modelo no qual os threads são executados até que todo o trabalho seja concluído 
é denominado de modelo de thread estático. 
 
 Todas as afirmações estão corretas. 
 
As afirmações II e III estão corretas. 
 
Apenas a afirmação II está correta. 
 
As afirmações I e II estão corretas. 
 
Apenas a afirmação I está correta. 
Respondido em 23/09/2021 16:56:35 
 
Explicação: 
A resposta certa é: Todas as afirmações estão corretas. 
 
 
7a 
 Questão 
Acerto: 1,0 / 1,0 
 
A programação OpenMP trata de qual tipo de metodologia de programação? 
 
 Método de desenvolvimento de paralelismo explícito, usado em arquiteturas de 
múltiplos processadores sobre um único barramento para acesso a memória. 
 
Utilizada para desenvolvimento com APIs Pthreads em Unix. 
 
Metodologia aplicada para envio de mensagens em sistemas distribuídos. 
 
Utilizada para passagem de mensagens em clusters de processamento paralelo. 
 
APIs muito utilizadas para programação de arquiteturas baseadas em código 
móvel. 
Respondido em 23/09/2021 16:57:05 
 
Explicação: 
A resposta certa é: Método de desenvolvimento de paralelismo explícito, usado em 
arquiteturas de múltiplos processadores sobre um único barramento para acesso a memória. 
 
 
8a 
 Questão 
Acerto: 1,0 / 1,0 
 
(UFLA - 2018 - Analista de Tecnologia da Informação) 
Existem bibliotecas de funções, procedimentos e métodos que são incorporadas a uma 
linguagem de programação para comunicação entre threads ou entre processos a 
viabilizar a paralelização. Considere uma API que realize somente criação de processos 
para explorar paralelismo na execução de um programa. Essa API será a: 
 
 MPI (Message Passing Interface) 
 
Cilk++ 
 
POSIX 
 
CUDA (Compute Unified Device Architecture) 
 
OpenMP 
Respondido em 23/09/2021 16:57:16 
 
Explicação: 
A resposta certa é: MPI (Message Passing Interface) 
 
 
9a 
 Questão 
Acerto: 1,0 / 1,0 
 
São as operações usadas em CUDA, exceto: 
 
 
Transferência de dados. 
 
Alocação de memória. 
 
Liberação de memória. 
 Alto grau de acoplamento. 
 
Lançamento do kernel. 
Respondido em 23/09/2021 17:02:59 
 
Explicação: 
A resposta certa é: Alto grau de acoplamento. 
 
 
10a 
 Questão 
Acerto: 1,0 / 1,0 
 
Sobre o Kubernetes, marque a alternativa correta: 
 
 Permite armazenar e gerenciar informações confidenciais, como senhas, tokens 
OAuth e chaves SSH. 
 
Fornece serviços em nível de aplicação, tais como middleware. 
 
É um sistema PaaS (plataforma como serviço) tradicional e completo. 
 
Implanta código-fonte e constrói sua aplicação. 
 
Dita soluções de logging, monitoramento ou alerta. 
Respondido em 23/09/2021 17:02:07 
 
Explicação: 
A resposta certa é: Permite armazenar e gerenciar informações confidenciais, como senhas, 
tokens OAuth e chaves SSH.

São as operações usadas em CUDA exceto?

Essa API será a: MPI (Message Passing Interface) Cilk++ POSIX CUDA (Compute Unified Device Architecture) OpenMP Respondido em 23/09/2021 16:57:16 Explicação: A resposta certa é: MPI (Message Passing Interface) 9a Questão Acerto: 1,0 / 1,0 São as operações usadas em CUDA, exceto: Transferência de dados.

São as operações usadas em CUDA?

Utilizando CUDA, podem ser utilizados os núcleos da GPU para o processamento das iterações do loop de forma totalmente paralela, ou seja, ao mesmo tempo. Cada iteração do loop será executada separadamente em cada ​core (núcleo) de forma paralela.

São aplicações do Pthreads exceto?

5a Questão (Ref.: 202006996672) São aplicações do Pthreads, exceto: Utilização em sistemas não-preemptivos. Reduzir o tamanho de uma aplicação, uma vez que threads ocupam menos espaço em relação aos processos.

O que é o OpenShift Virtualization passei direto?

É um sistema operacional que permite a virtualização do sistema Openshift. Respondido em 16/09/2021 13:02:26 Explicação: A resposta certa é: É uma funcionalidade do Red Hat OpenShift que possibilita aos desenvolvedores incorporarem máquinas virtuais tradicionais a fluxos de trabalho no OpenShift Container Platform.