Ir ao conteúdo
  • Cadastre-se

Tudo o que você precisa saber sobre blockchain


     28.677 visualizações    Outros    2 comentários
Tudo o que você precisa saber sobre blockchain

História e evolução da mineração do Bitcoin

Em 2009, quando o Bitcoin passou a funcionar, era possível fazer o processo de mineração com o processador de um computador de mesa. O Bitcoin, no entanto, é programado para que a média do intervalo de tempo em que seus blocos sejam resolvidos demore dez minutos e a medida que mais pessoas forem minerando, mais poder computacional é auferido à rede, ocasionando a necessidade da rede compensar aumentando a dificuldade do processo em que cada bloco é resolvido para que o intervalo de tempo médio se mantenha o mesmo.

Por isso, com o tempo, processadores não deram mais conta de render ao menos seu consumo de eletricidade, principalmente por que chips gráficos (GPUs) começaram a ser usadas na mineração e a microarquitetura de um único processador gráfico conseguia o desempenho de vários processadores tradicionais juntos.

No entanto, especificamente o algoritmo SHA256 (o algoritmo do Bitcoin) não precisa de muita memória para ser processado e nem processadores gráficos são projetados com a única finalidade de minerar Bitcoin. Tecnicamente, a mineração do Bitcoin usava apenas uma das extensões do conjunto de instruções presentes na microarquitetura dos processadores gráficos; em outras palavras GPUs não são feitas para computar apenas SHA256, embora possam. Na perspectiva da engenharia, isso pode ser encarado como um gargalo de desempenho, uma vez que os processadores gráficos poderiam ser projetados apenas com extensões de um conjunto de instruções otimizados para processar vários objetos de dados dentro do SHA256, em vez de dispor de recursos que nunca seriam usados nesta tarefa, em sua microarquitetura.

Extensões de um conjunto de instruções podem ser entendidos como configurações de transistores designadas para processar um formato específico de dados. A depender de quais instruções estiverem contidas em um "conjunto" tem-se uma extensão. Essas instruções são descritas em código pelo desenvolvedor da CPU ou GPU, e têm como objetivo aumentar o desempenho de uma unidade de processamento quando as mesmas operações são realizadas em cima de um aparato lógico, que neste caso é o SHA256. Alguns exemplos de extensões são SSE, AVX, MMX, FMA etc. Em outras palavras, como a mineração é um processo repetitivo, apenas algumas extensões eram usadas para que as operações em cima do SHA256 fossem executadas.

Este fato por si só não é um problema, pois muitos processos em um computador de mesa comum realmente não usam todas as extensões de um processador. O problema é que muitos processadores foram comprados apenas com a finalidade de minerar. Isso significa que os mineradores também estavam pagando por recursos que nunca seriam usados.

Da falta de especificidade dos equipamentos utilizados na mineração do Bitcoin, até então, fez surgir o ímpeto de que alternativas fossem criadas. O emprego de chips programáveis (FPGAs) na mineração do Bitcoin foi o resultado disso. FPGA é um conjunto de unidades lógicas. De maneira análoga e superficial, CPUs e GPUs são casos específicos de um conjunto de portas lógicas interconectadas, por meio de programação, com a finalidade de desempenhar a função de uma unidade de processamento computacional (CPU) ou gráfico (GPU).

O "pulo do gato" com os FPGA é que um programador pode descrever, através de código, a interconexão das unidades lógicas deste equipamento de forma que ele se torne desde um simples somador até um processador. Uma vez que foi descoberto que os FPGAs poderiam ser programados para realizar operações do SHA256 muito mais eficientemente que processadores de vídeo (GPU), estes tornaram-se obsoletos para a mineração.

Com a filosofia de usar FPGAs dedicados à mineração de Bitcoin, a necessidade, adesão e experiência com o manuseio destes dispositivos progrediu de maneira em que seria mais interessante vendê-los sem a possibilidade de edição do que esses dispositivos processariam. Essa pequena mudança abre mais espaço para otimização do código e do chip, pois o equipamento não precisa mais ser manufaturado considerando-se que deve servir a um uso generalizado. O resultado dessa restrição no FPGA torna-o um ASIC que é, em inglês, uma abreviação para "circuito integrado para uso específico".

O ASIC pode ser encarado como uma evolução natural do FPGA projetado especificamente para processar SHA256. O ASIC usado para mineração é um caso específico dos FPGAs com uma programação e até microarquitetura projetadas especificamente para minerar.

Em 2014, com o desenvolvimento do Ethereum, surgiu o Ethash como o primeiro algoritmo "resistente a ASIC". Depois veio o Equihash, do Zcash, ambos algoritmos que fazem uso intensivo do tipo de memórias usadas em GPUs. Esses dois algoritmos têm uma boa parcela da responsabilidade pela fama que criptomoedas ganharam ultimamente. A seguir veremos aplicações dessa tecnologia que vão muito além do escopo do trading.

  • Curtir 6

Artigos similares


Comentários de usuários

Respostas recomendadas



Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!