Ads 468x60px

segunda-feira, 21 de novembro de 2011

Divida a carga da CPU com o novo OpenCL

O Khronos Group ratificou a versão 1.2 do padrão OpenCL (Open Computing Language). Desenvolvido sob a liderança de diversos representantes da indústria, o padrão define interfaces de programação paralela para aplicativos que podem ser executados em diferentes processadores compatíveis com o OpenCL. Além da aceleração de gráficos 2D e 3D, o padrão OpenCL foi desenvolvido para permitir que aplicativos gerais pudessem utilizar o poder de computação de processadores gráficos, dividindo os cálculos computacionais através de múltiplos processadores gráficos e CPUs. O OpenCL usa um subconjunto do dialeto C99, com certificação ISO, acréscido de extensões de programação paralela.
O OpenCL 1.2 foi desenvolvido para ser compatível com as versões anteriores do padrão (OpenCL 1.0 e 1.1). Uma novidade é a habilidade de particionar um dispositivo para o controle direto da designação de trabalhos para unidades específicas de computação ou usar recursos de hardware compartilhados, como cache, de forma efetiva. O OpenCL permite que programas sejam compilados separadamente, e seus objetos vinculados separadamente, trazendo a flexibilidade dos compiladores tradicionais para o OpenCL e permitindo a criação de bibliotecas OpenCL.
Outros destaques incluem o suporte de "superfícies" com as interfaces do Microsoft DirectX 9/11 e funções de processamento avançado de imagens. Por exemplo, imagens 1D e 2D podem ser criadas a partir de texturas OpenGL usando uma extensão OpenCL. Mais informações podem ser encontradas no documento de especificação, que possui mais de 370 páginas. Um bom panorama dos aspectos mais importantes do OpenGL está disponível no cartão de referência rápida da OpenCL API 1.2.
A versão 1.0 desse padrão foi lançada em dezembro de 2008, seguida pela versão 1.1 em Junho de 2010. Mais de 30 empresas, incluindo a AMD, ARM, Intel e NVIDIA contribuíram para o desenvolvimento do novo padrão.
Fonte: h-online, em inglês.

0 comentários: