Pergunta

O Mac OS X 10.6 vem com o OpenCL, mas quantos aplicativos poderiam ter melhores desempenhos se fossem reescritos para usar o OpenCL? Que tipo de aplicações deve ser reescrito para usar o OpenCL?

Foi útil?

Solução

Minha empresa está usando o OpenCL para cálculos científicos. Embora eu não faça parte da equipe de desenvolvimento, que o usa, posso dizer algumas coisas que elas estão usando: processamento de dados em larga escala, imagine reconstrução e paralelização massivamente do código científico anteriormente escrito.

Basicamente, o OpenCL é bastante de ponta. A menos que você queira/precise lidar com isso, é melhor deixar para aqueles que precisam. Não estou tentando desencorajá -lo, mas é um produto de nicho projetado para um mercado de nicho. Você seria melhor servido estudando outras áreas de programação para fins de emprego em potencial.

Outras dicas

O OpenCL não é um botão mágico de "aumento de desempenho". Existem vários pré -requisitos que precisam ser satisfeitos para obter um impulso de desempenho, o primeiro é o hardware adequado (uma GPU da Tesla ajuda). Quanto ao software que pode se beneficiar, é qualquer software que faça muita computação paralela. Isso exclui a maioria do software "diário" e deixa aplicativos de processamento de gráficos (renderizadores, programas de manipulação de imagens), aplicativos de grande processamento de dados onde a operação pode ser paralela e aplicações científicas.

Geralmente, se você escrever um aplicativo que possa se beneficiar do OpenCL, você sabe que já se beneficiará dele;).

Primeiro de tudo, você não pode "reescrever" um aplicativo inteiro usando o OpenCL. Você ainda precisa de uma linguagem "normal" para a GUI etc.

Com o OpenCL, você pode acelerar problemas paralelos de dados muito grandes. A maioria dos problemas não se enquadra nessa categoria.

Os candidatos mais promissores são gráficos/vídeo e processamento de som. Mas todo problema que requer a mesma operação em um conjunto muito grande de dados será adequado.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top