O início da criação de sistemas ambientalmente conscientes

Qual é a quantidade de carbono pela qual o seu software é responsável? Reconhecer o uso de energia e assumir a responsabilidade por ele são os primeiros passos em direção a um desenvolvimento sustentável.

Em dezembro de 2023, representantes de quase 200 nações se encontraram em Dubai para a Conferência da ONU sobre mudança climática, COP28, a fim de abordar a urgência de diminuir as emissões, conforme descrito pelo IEEE nesta publicação.
Segundo a análise de sustentabilidade feita pelo Ecograder, o site COP28 gera 3,69 gramas de CO2 a cada página carregada, o que pode resultar em emissões equivalentes a um voo de São Francisco para Toronto ao longo de um ano, se o site receber 10.000 visualizações mensais.
Aqui está um ponto importante: embora a fabricação de veículos elétricos (EVs) seja mais poluente, a condução destes veículos é eventualmente mais ecológica. Um proprietário de um carro elétrico de alto custo pode gerar mais emissões de carbono nas primeiras 30.000 a 60.000 milhas devido à pegada de carbono associada à fabricação. É importante lembrar que a maioria dos carregadores de EV ainda são alimentados por usinas que queimam carvão, o que é lamentável.
Qual é o nível de sustentabilidade do software?
Apesar de o software em si não gerar emissões, ele opera em hardware de data center que sim. A tecnologia da informação e comunicação, que também utiliza software em data centers, é responsável por aproximadamente 2% a 4% das emissões globais de gases de efeito estufa. De acordo com o texto, essa porcentagem pode chegar a 14% até 2040, o que equivale às emissões de carbono geradas pelo transporte aéreo, terrestre e marítimo juntos.
Aqui estão algumas medidas que podemos adotar:
Primeiramente, apesar de termos habilidades em escrita de software, temos dificuldades em desenvolver software que aproveite plenamente os recursos de hardware. Isso resulta em desperdício de energia. Na era da computação em nuvem, enxergamos os recursos de hardware como uma vasta reserva de capacidade computacional facilmente acessível. Não há preocupação com eficiência ou otimização necessárias.
Em segundo plano, não houve prestação de contas em relação ao uso de energia. Os profissionais de desenvolvimento e engenharia de operações não possuem informações que mostrem como o software mal elaborado afeta o consumo de energia dos equipamentos. Na computação em nuvem, essa falta de compreensão é amplificada. Os custos decorrentes da ineficiência dos equipamentos permanecem ocultos, uma vez que não é necessário adquirir fisicamente o hardware – ele é disponibilizado conforme a necessidade. A gestão financeira da nuvem pode alterar essa situação, mas ainda não o fez.
Por fim, não ensinamos programadores a criar código otimizado. Uma aplicação não otimizada pode consumir até 500% mais energia. Ao longo do tempo, percebemos que essa situação piorou. Antigamente, era crucial escrever um código eficiente devido aos custos e limitações de processadores, armazenamento e memória. Atualmente, esses recursos são facilmente acessíveis e mais baratos.
Uma inteligência artificial faminta por energia só vai complicar as coisas ainda mais.
A inteligência artificial se tornou um dos avanços tecnológicos mais significativos da atualidade, possibilitando soluções que antes eram consideradas inatingíveis. Entretanto, apesar de todos os progressos alcançados, é crucial considerar os aspectos relacionados aos requisitos de hardware e consumo de energia dos sistemas de inteligência artificial.
É importante ter em mente que as unidades de processamento gráfico (GPUs) consomem mais energia do que as unidades de processamento central (CPUs), e há um crescimento significativo no mercado das empresas que produzem GPUs. A otimização de GPUs ainda não é uma prioridade nesse cenário, sendo as GPUs vendidas como um componente essencial para quem está desenvolvendo sistemas de inteligência artificial.
Conforme as empresas se esforçam para diminuir o impacto ambiental de seus sistemas de inteligência artificial, surge um novo debate sobre a implementação de práticas sustentáveis nessa área. Onde podemos encontrar o ponto de equilíbrio entre impulsionar a inovação e assegurar a responsabilidade ambiental? Embora muitas empresas e fornecedores de tecnologia mencionem essa questão, ainda não observamos uma otimização significativa do hardware relacionado à IA. Pelo menos por enquanto.
Sustentabilidade compensa financeiramente.
Este é um momento oportuno para abordar o consumo de energia e sua crescente utilização da inteligência artificial. É importante destacar que não se trata apenas de questões ambientais, mas também de aspectos financeiros, uma vez que o aumento do consumo de energia resulta em maiores custos.
A transição para métodos de desenvolvimento de software sustentáveis está intimamente ligada aos setores de negócios e sustentabilidade. É improvável que estivéssemos discutindo isso se não houvesse vantagens comerciais atrativas, o que não é um problema. A interseção entre valores éticos e aspectos econômicos enfatiza a importância da sustentabilidade como um elemento impulsionador fundamental.
Criar sites e aplicativos sustentáveis exige que os desenvolvedores alterem sua abordagem de trabalho. É preciso reavaliar a utilização de recursos, melhorar a eficiência dos algoritmos e otimizar o código para diminuir o gasto de energia.
É necessário integrar conceitos de sustentabilidade no cerne do desenvolvimento de software, elevando a eficiência do processo por meio de melhorias em processos e ferramentas. Os desenvolvedores devem se tornar arquitetos de software mais eficazes, reduzindo o consumo de energia.
Utilizar algoritmos mais sustentáveis é uma ação estratégica que está de acordo com a meta geral de diminuir o uso de energia. Estudos recentes indicam que algoritmos eficazes conseguem diminuir o consumo de energia tanto no desenvolvimento quanto na operação, sem afetar significativamente o desempenho.
Diante da inteligência artificial, é essencial adotar uma abordagem consciente em relação aos dados de treinamento para assegurar a sustentabilidade da IA. A otimização do uso de dados e a melhoria dos processos algorítmicos podem reduzir o consumo de energia, algo que já sabemos há muitos anos.
Isso destaca a importância de capacitar profissionais de tecnologia para criarem sistemas de inteligência artificial mais sustentáveis, com menor emissão de carbono. É essencial que as empresas priorizem a adoção de práticas mais sustentáveis, as quais podem ser implementadas sem afetar o prazo de entrega ou o custo.
Sim, tanto o treinamento quanto as ferramentas são investimentos adicionais essenciais para promover o aprimoramento da inteligência artificial. É impossível obter resultados positivos sem esses recursos. A busca por práticas de programação sustentáveis requer o uso de ferramentas que possam avaliar o impacto ambiental de um software ao longo de sua existência. Essas medidas fornecem valiosas informações e direcionam os desenvolvedores para adotarem práticas que minimizem os efeitos no meio ambiente, assegurando o progresso contínuo das tecnologias digitais.
Existe um aumento na adoção da engenharia de software ambiental, impulsionada por programas de certificação e educação que destacam a importância da sustentabilidade na indústria de software. Apesar de termos habilidade para identificar problemas e propor soluções, enfrentamos dificuldades na implementação dessas soluções.
Estou começando a notar um aumento no número de cargos de liderança em sustentabilidade. Pode parecer cético, mas minha experiência indica que haverá mais foco nos indicadores ambientais, sociais e de governança (ESG) e na imagem pública do que no efetivo desempenho. Deveríamos concentrar nossos esforços na implementação de sistemas de software eficazes, em vez de apenas nos preocuparmos com a instalação de painéis solares ou carregadores para veículos elétricos no escritório.
Aqui estamos aguardando ansiosamente alcançar rapidamente resultados significativos por meio de nossos esforços em sustentabilidade.