Khronos Group anuncia OpenCL 3.0, com mais liberdade para desenvolvedores

[ad_1]

Novo padrão recua em algumas exigências e permite utilizar versão antiga

A Khronos Group - um consórcio acessível de mais de 150 empresas líderes da indústria, que trabalha na geração de padrões avançados de interoperabilidade -, acaba de anunciar as especificações do OpenCL 3.0. Esse novo padrão parece não trazer muitas evoluções, mas sim, alguns recuos. O grupo pretende deixar que as empresas sejam mais livres na adoção dessa versão, podendo optar por quais funcionalidades querem adotar.

Entre as empresas participantes do grupo estão a AMD, Intel e NVIDIA. Esse padrão é desimpedido (Open Computing Language) e é responsável por unir a programação paralela, permitindo a melhoria da velocidade de resposta. Essa versão está revendo alguns conceitos anteriormente estabelecidos, permitindo que sejam opcionais. O grupo está "atrasando" o OpenCL, revertendo a API principal para o OpenCL 1.2.

Essa medida foi adotada depois do lançamento da OpenCL 2.2. Nenhuma empresa adotou o padrão. A atualização não agradou as empresas, que acabaram não o utilizando. Com isso, há uma desvalorização do projeto, o que ameaço a sua extinção. 

Levando os problemas em consideração, a Khronos Group resolveu recuar. Todos os aplicativos OpenCL 1.2 continuarão sendo executados inalterados em qualquer dispositivo OpenCL 3.0. Ou por outra, todos os recursos do OpenCL 2.X são compatíveis na novidade especificação unificada.

Isso significa que todas as implementações atuais do OpenCL 2.X, que atualizam para o OpenCL 3.0, vão poder continuar a ser fornecidas com a funcionalidade existente, com totalidade compatibilidade com versões anteriores. Todos os recursos da API do OpenCL 2.X podem ser consultados, e o OpenCL C 3.0 os adiciona para consultar os recursos opcionais do linguagem. A Khronos Group abriu uma caixa de Feedback, para que os desenvolvedores contribuam com o padrão, antes que as especificações sejam finalizadas.

Resumindo, o grupo deseja voltar ao que funcionou. A versão 1.2 foi a que teve ampla confirmação, portanto o padrão irá voltar a essa especificação. Para não ignorar os avanços que teve desde o lançamento dessa versão, que foi em 2011, a empresa também está permitindo que novas definições sejam incorporadas, se adequando às necessidades das fabricantes, tornando opcional.

O OpenCL 1.2 é fundamentado na linguagem de programação C "puro". É considerado pelos desenvolvedor um código mais limpo, sem grandes adições. É uma API de computação paralela de insignificante nível, que atende diferentes necessidades, podendo ser usadas desde dispositivos incorporados até as GPUs mais robustas, para supercomputadores.

Devido a isso, o OpenCL 1.2 é a base para o 3.0. Todos os recursos extras, que foram lançados posteriormente, são considerado adições. Assim, o desenvolvedor fica livre para escolher quais serão usados e quais não farão secção do seu padrão. 

Até o momento o padrão exigia que o usuário usasse todo o padrão, para ter aproximação à alguma de suas funcionalidades. Caso o desenvolvedor quisesse usar o padrão 1.2, mas gostaria de fazer soma de recursos presentes na versão 2.1, por exemplo, seria necessário usar todo o padrão 2.1 e despovoar o 1.2. Isso fazia com que os desenvolvedores abandonassem todo o OpenCL. Agora, isso poderá ser feito. O padrão 1.2 pode ser usado porquê base e, algumas outras funcionalidades vão poder ser resgatadas de outras versões, porquê adições.

O objetivo medial do OpenCL 3.0 é dar maior liberdade para os desenvolvedores. Dessa forma, pretende resgatar os adeptos ao padrão, fazendo com que ele seja usual novamente.

Via: Anandtech, TechPowerUp

[ad_2]
Manancial Notícia -> :Fonte da Notícia -> Clique Aqui