segunda-feira, 16 de março de 2015

AMD, ARM, Imagination, Samsung aliança publicar blueprints oficiais compartilhados GPU-CPU


Um esforço para chips de malha fina em conjunto gráficos, processadores e outros hardwares para impulsionar as coisas como a busca de vídeo na área de trabalho deu um passo a frente.


A Fundação HSA hoje publicada oficialmente a versão 1.0 da especificação da sua heterogênea Arquitetura do Sistema , que (se estivéssemos sendo irreverente) descreve como GPUs, DSPs e CPUs podem compartilhar a mesma memória física e passar ponteiros entre si. (A provisório versão 1.0 foi ao ar em agosto de 2014.)





Em outras palavras, compute geral, gráficos e processadores de sinal digital de cada um pode tratar diretamente RAM física de forma coerente, sem ter que passar por cima de ônibus tediosas externos e interconexões de baixo acoplamento e trabalho em dados ao mesmo tempo. A GPU e CPU pode trabalhar nos mesmos bits de memória em um aplicativo de um modo multi-threaded, por exemplo, que é suposto para aumentar o desempenho e fazer a barba uso de energia. A especificação refere-se a GPUs e DSPs como "agentes do kernel."


Há muito mais para a especificação do que isso, é claro: os blueprints apoiar modelos de 64 bits e de 32 bits, e lay out mapeamento virtual de memória, coerência de memória, transmissão de mensagens e muito mais.


O que é fundamental, porém, é que este é um padrão: system-on-chips no mundo incorporado e handheld mapeará on-die GPUs, DSPs e outros periféricos em seus mapas de memória física, embora onde registradores de dispositivo aparecer na memória irá variar muito através SoCs. Alguns chips vai manter pools de memória separado, e não coerente. Visando um novo SoC significa obtenção e grokking uma nova folha de dados.


O HSA 1,0 especificação é suposto para disputar todos que, sob uma definição, tornando a vida muito mais fácil para os programadores para produzir código portátil, e é encorajador que os grandes nomes são membros da fundação: AMD, ARM, Imagination Technologies, MediaTek, Qualcomm, Samsung, e outros. A imaginação é a biz por trás das GPUs PowerVR em vários iPhones e iPads; ARM projeta os núcleos de CPU, na grande maioria das coisas de mão; Samsung está em toda parte, e, bem, você começa o retrato.


É encorajador, porque significa a norma tem uma chance de ser aprovada em um bom número de dispositivos e computadores, atingir uma massa crítica para que os desenvolvedores de software podem justificar jogos e ferramentas de construção HSA-conformes sabendo que não é o suficiente de uma base de usuários lá fora para tirar proveito do mesmo.


Um importante ponto de tropeço aqui é a ausência de Intel e Nvidia em todo este processo, razão pela qual a AMD e seus amigos estão dirigindo sua arquitetura de memória compartilhada através das lacunas no império Invidia: smartphones, tablets, consoles futuras, e assim por diante.


Não há nenhuma palavra sobre o que exatamente vai apoiar HSA neste ou no próximo ano, além de 28nm da AMD Carrizo : este enfia quatro núcleos x86 Escavadeira e oito núcleos Radeon GPU em um pacote processador destinado a laptops touchscreen, e é HSA 1,0 compatível. Não serão lançados até o final deste ano. Estamos informados de reuniões entre os membros HSA se concentrar em questões técnicas, e deve evitar discutir anúncios de produtos e lançamentos, ou então a fundação vai começar a parecer um cartel. Dito isto, vendo HSA coisas 1.0-compliant nas prateleiras no próximo ano é provável.


Manual de referência dos programadores da especificação começa com:


A arquitetura do sistema HSA define uma base consistente para a construção de aplicações portáteis que acessam a potência eo desempenho benefícios dos agentes do kernel dedicados. Muitos destes agentes do kernel, incluindo GPUs e DSPs, são processadores capazes e flexíveis que foram estendidos com hardware especial para acelerar o código paralelo. Historicamente, esses dispositivos têm sido difíceis de programa devido a uma necessidade de linguagens de programação especializadas ou proprietárias. HSA tem como objetivo trazer os benefícios destes agentes do kernel para linguagens de programação convencionais, utilizando a sintaxe semelhante ou idêntico ao que é fornecido para programação CPUs multi-core.

Estamos informados de desenvolvedores de software podem usar C, C ++, Fortran, Java, Python e escrever aplicações HSA-conformes: o código é compilado para baixo em uma linguagem intermediária chamada HSAIL , que é então convertido por um finalizador para um binário executável para um alvo especial de hardware. De acordo com a documentação, "diferentes implementações pode optar por chamar o finalizador em vários momentos:. Estaticamente, ao mesmo tempo que o aplicativo é construído, quando o aplicativo é instalado, quando é carregado, ou mesmo durante a execução"


Software pode chamar hsa_agent_iterate_regions() para descobrir quais bits de memória estão disponíveis para o código em execução na CPU e, digamos, uma GPU. Em seguida, o software pode chamar hsa_memory_allocate() para atribuir blocos de memória partilhada nessas regiões. Este exemplo de código vai encontrar a região de um agente, alocar algum espaço de buffer compartilhado, e armazenar um sinal de mensagem nesse buffer.


Diagrama de GPU e CPU mapas de memória

GPUs e CPUs de mapeamento no mesmo espaço ... vista da AMD de HSA (clique para ampliar)



Os escritores «especificações espero que o projeto vai incentivar o uso eficiente de GPUs e CPUs, sem ter que copiar repetidamente blocos de dados mais lentas ônibus, por exemplo. A redução da complexidade também é suposto fazer baterias durar um pouco mais.


Phil Rogers, presidente da Fundação HSA e um companheiro AMD, deu The Register alguns exemplos de onde a arquitetura pode ser usado: um ser de busca de vídeo, onde o software pode executar reconhecimento de imagem em arquivos de vídeo, e categorizá-los para que eles possam ser encontrados rapidamente a partir de um banco de dados de palavras-chave, nomes de arquivos e referências de tempo.


"Algumas pessoas têm um monte de vídeo em seus PCs, e o vídeo que gravei é opaco, em termos de pesquisa, por isso, dar às pessoas uma maneira de navegar arquivos de vídeo em casa seria muito poderoso", disse ele.


"On smartphones e tablets, video chat é muito popular, mas existem limitações, como um monte de dados tem de ser copiado entre a GPU. Com HSA, que é possível fazer video chat funcionando com menor poder, manter uma vida mais longa da bateria . Um servidor poderia lidar com clientes mais simultâneas sem ficar sem memória. "


"É, na verdade, mais de um caminho evolutivo de uma revolução", Rogers acrescentou, referindo-se ao fato de que system-on-chips de hoje já mapear núcleos de GPU e núcleos de CPU para o mesmo espaço de endereço físico, forçando para se comunicar pela memória de qualquer maneira.


"Nós criamos uma arquitetura para colocar tudo junto no caminho certo. Em vez de ficar com a arquitetura legado de GPUs distintos, processadores e DSPs, nós já ficou para trás e pensamento, o que seria algo como se começássemos do zero hoje . "


A especificação 1.0 será revelado hoje (segunda-feira) em 16:30, em San Jose, Califórnia, à frente da GPU Technology Conference , a partir de terça-feira. ®







via Alimentação (Feed)

Nenhum comentário:

Postar um comentário