Posso usar o OpenCL em um aplicativo que distribuo para a máquina de não desenvolvedor?

StackOverflow https://stackoverflow.com/questions/2315803

  •  22-09-2019
  •  | 
  •  

Pergunta

Recentemente, comecei a aprender a usar o OpenCL para acelerar alguma parte do meu código. Até agora, o ganho de velocidade é impressionante. Em um caso, o código funcionou até 50x mais rápido que na CPU. No entanto, me pergunto se pode começar a usar esse código em um ambiente de produção. O motivo é que a primeira vez que tentei executar o código de exemplo, nada funcionou. Consegui fazê -lo baixando o driver na página de download da NVIDIA OpenCL SDK (eu tenho um GeForce GTX260). Isso me deu um azul durante a instalação, mas depois disso pude executar o programa de exemplo e criar meu próprio código.

O fato de não funcionar "fora da caixa" para mim significa que os principais drivers ainda não o apóiam, apesar do fato de estar escrito especificamente que faz na página de download do driver? E o suporte da ATI? Todo mundo terá que baixar o driver especial que me deu uma tela azul na instalação?

Em resumo, o OpenCL está pronto para o código de produção?

Se alguém puder me dar alguns detalhes, gostaria de saber. Alguém conseguiu executar um programa simples em vários dispositivos diferentes sem instalar nada relacionado ao SDK?

Foi útil?

Solução

Você pode encontrar uma resposta precisa nos fóruns do OpenCL nos quadros de mensagens do Khronos Group. O grupo de trabalho OpenCL fica lá fora regularmente.

Outras dicas

Alguém conseguiu executar um programa simples em vários dispositivos diferentes sem instalar nada relacionado ao SDK?

Nop. Por exemplo, nos usuários finais de GPUs da ATI, precisam instalar o SDK da ATI Stream para executar o código OpenCL (apenas ter um driver gráfico atualizado não é suficiente).

Você pode considerar experimentar o DirectCompute (a versão da Microsoft da programação da GPU) ou fazendo seu trabalho de openCL em um Mac Snow Leopard. Essas são as duas maneiras (que eu conheço) que você pode fornecer uma solução de programação de GPU para outro usuário sem nenhum driver ou outro aborrecimento da instalação.

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