O design digital de nossos computadores comuns é bom para leitura de e-mail e jogos, mas os computadores atuais para solução de problemas trabalham com grandes quantidades de dados. A capacidade de armazenar e processar essas informações pode levar a gargalos de desempenho devido à forma como os computadores são construídos.
A próxima revolução do computador pode ser um novo tipo de hardware, chamado de processamento em memória (PIM), um paradigma de computação emergente que mescla a memória e a unidade de processamento e faz seus cálculos usando as propriedades físicas da máquina -- não 1s ou 0s necessários para fazer o processamento digitalmente.
Na Washington University em St. Louis, pesquisadores do laboratório de Xuan "Silvia" Zhang, professor associado do Preston M. Green Department of Electrical & A Systems Engineering da McKelvey School of Engineering projetou um novo circuito PIM, que traz a flexibilidade das redes neurais para suportar a computação PIM. O circuito tem o potencial de aumentar o desempenho da computação PIM em ordens de grandeza além de suas capacidades teóricas atuais.
A pesquisa deles foi publicada on-line em 27 de outubro na revista IEEE Transactions on Computers. O trabalho foi uma colaboração com Li Jiang na Shanghai Jiao Tong University na China.
Os computadores projetados tradicionalmente são construídos usando uma arquitetura Von Neuman. Parte desse design separa a memória - onde os dados são armazenados - e o processador - onde a computação real é executada.
anúncio"Os desafios da computação hoje são intensivos em dados", disse Zhang. "Precisamos processar toneladas de dados, o que cria um gargalo de desempenho na interface do processador e da memória."
Os computadores PIM visam contornar esse problema mesclando a memória e o processamento em uma unidade.
A computação, especialmente a computação para os algoritmos de aprendizado de máquina de hoje, é essencialmente uma série complexa -- extremamente complexa -- de adições e multiplicações. Em uma unidade de processamento central digital tradicional (CPU), isso é feito usando transistores, que basicamente são portas controladas por tensão para permitir que a corrente flua ou não. Esses dois estados representam 1 e 0, respectivamente. Usando este código digital -- código binário -- uma CPU pode fazer toda e qualquer aritmética necessária para fazer um computador funcionar.
O tipo de PIM em que o laboratório de Zhang está trabalhando é chamado PIM de memória resistiva de acesso aleatório, ou RRAM-PIM. Enquanto em uma CPU os bits são armazenados em um capacitor em uma célula de memória, os computadores RRAM-PIM dependem de resistores, daí o nome. Esses resistores são a memória e o processador.
O bônus? "Na memória resistiva, você não precisa traduzir para digital ou binária. Você pode permanecer no domínio analógico." Esta é a chave para tornar os computadores RRAM-PIM muito mais eficientes.
anúncio"Se você precisar adicionar, conecte duas correntes", disse Zhang. "Se você precisa multiplicar, pode ajustar o valor do resistor."
Mas, em algum momento, as informações precisam ser traduzidas para um formato digital para interagir com as tecnologias com as quais estamos familiarizados. Foi aí que o RRAM-PIM atingiu seu gargalo - convertendo as informações analógicas em um formato digital. Em seguida, Zhang e Weidong Cao, um pesquisador associado de pós-doutorado no laboratório de Zhang, introduziram aproximadores neurais.
"Um aproximador neural é construído sobre uma rede neural que pode aproximar funções arbitrárias", disse Zhang. Dada qualquer função, o aproximador neural pode realizar a mesma função, mas melhorar sua eficiência.
Nesse caso, a equipe projetou circuitos aproximadores neurais que poderiam ajudar a eliminar o gargalo.
Na arquitetura RRAM-PIM, uma vez que os resistores em um crossbar array tenham feito seus cálculos, as respostas são traduzidas para um formato digital. O que isso significa na prática é somar os resultados de cada coluna de resistores em um circuito. Cada coluna produz um resultado parcial.
Cada um desses resultados parciais, por sua vez, deve ser convertido em informação digital no que é chamado de conversão analógico-digital, ou ADC. A conversão é intensiva em energia.
O aproximador neural torna o processo mais eficiente.
Em vez de adicionar cada coluna uma a uma, o circuito aproximador neural pode realizar vários cálculos - colunas descendentes, entre colunas ou da maneira que for mais eficiente. Isso leva a menos ADCs e maior eficiência de computação.
A parte mais importante deste trabalho, disse Cao, foi determinar até que ponto eles poderiam reduzir o número de conversões digitais que ocorrem ao longo da borda externa do circuito. Eles descobriram que os circuitos aproximadores neurais aumentaram a eficiência tanto quanto possível.
"Não importa quantas somas parciais analógicas geradas pelas colunas da matriz da barra cruzada RRAM -- 18 ou 64 ou 128 -- só precisamos de uma conversão de analógico para digital", disse Cao. "Usamos a implementação de hardware para atingir o limite inferior teórico."
Engenheiros já estão trabalhando em protótipos em larga escala de computadores PIM, mas têm enfrentado vários desafios, disse Zhang. O uso dos aproximadores neurais de Zhang e Cao pode eliminar um desses desafios - o gargalo, provando que esse novo paradigma de computação tem potencial para ser muito mais poderoso do que sugere a estrutura atual. Não apenas uma ou duas vezes mais poderoso, mas 10 ou 100 vezes mais.
"Nossa tecnologia nos permite chegar um passo mais perto desse tipo de computador", disse Zhang.