Subscribe to our Newsletter!
By subscribing to our newsletter, you agree with our privacy terms
Home > Monitoramento de TI > Green coding: mais um colaborador para a sustentabilidade de TI
Maio 29, 2023
Em tempos em que sustentabilidade e otimização de recursos são frequentemente citados nos ambientes de TI, um conceito também está ganhando espaço, o de desenvolvimento de software verde ou green coding, no termo correspondente em inglês.
O que vinha acontecendo até algumas décadas atrás é que havia restrições tecnológicas, como poder de processamento e largura de banda limitados, que exijam dos desenvolvedores uma atenção maior para reduzir o tamanho e a complexidade dos códigos gerados. Com o avanço e a maior disponibilidade dos recursos de hardware, esse cuidado foi deixado de lado em grande parte. Hoje, com a sustentabilidade em voga, essa atenção voltou a entrar em cena na forma do green coding.
Considerado um segmento da green computing, o green coding é uma prática que busca minimizar a energia envolvida no processamento das linhas de código e assim ajudar as organizações a reduzir o consumo geral de energia e as emissões de gases de efeito estufa. Quando começaram a pensar em sustentabilidada da TI, essas organizações abordavam temas como energia verde, eficiência do hardware e tratamento de lixo eletrônico, mas só agora o desenvolvimento de software eficiente está entrando no pacote novamente.
Fundada em 2021, a Green Software Foundation está trabalhando para construir um ecossistema confiável de pessoas, padrões, ferramentas e boas práticas voltado a contribuir para o desenvolvimento de software sustentável. A intenção é mudar a cultura da criação de linhas de código de forma a tornar a sustentabilidade uma peça central para as equipes de desenvolvedores tão importante quanto desempenho, segurança, custo e acessibilidade.
Nessa empreitada, a fundação destaca que o desenvolvimento de software verde abrange seu ciclo de vida completo, ou seja, criação, operação e descarte (reutilização). Faz algumas recomendações para ajudar nesse processo concentradas em quatro áreas: opções de design e codificação, escolha da linguagem de programação, seleção de modelos de Inteligência Artificial e desenvolvimento de software.
Opções de design e codificação: (1) Manter foco e controle dos recursos com maior consumo de energia e cenários de uso comum; (2) Reduzir o uso de dados; (3) Remover recursos não utilizados; (4) Detectar e remover loops que não conseguem atingir o objetivo pretendido; (5) Adaptar o comportamento do software de aplicativos de acordo com o modo de energia do dispositivo ou outras condições de operação; (06) Limitar a precisão computacional ao nível desejado; (7) Monitorar em tempo real o consumo de energia do aplicativo para identificar módulos que podem ser otimizados.
Escolha da linguagem de programação: (8) Existem vários fatores a serem considerados, portanto a recomendação é fazer uma avaliação detalhada, levando em conta os critérios mais relevantes, como consumo de energia, velocidade e uso de memória.
Seleção de modelos de Inteligência Artificial: (9) Esses modelos podem ser mais sustentáveis se foram desenvolvidos e usados consumindo menos energia e compartilhando código reproduzível para reduzir esforços duplicados; e contarem com hardware especializado otimizado para cargas de trabalho de IA.
Desenvolvimento de software: (10) Monitorar o consumo de energia em tempo real durante o desenvolvimento, usando técnicas como análise de código dinâmico.
No início deste ano, a Microsoft publicou um white paper descrevendo seu trabalho em conjunto com a organização sem fins lucrativos de tecnologia ambiental WattTime promovida por meio da Green Software Foundation. Juntas, foram pioneiras em desenvolver o primeiro aplicativo de reconhecimento de carbono para empresas e em abrir o código-fonte das ferramentas e da arquitetura.
As duas organizações também estão contribuindo para o desenvolvimento de uma nova especificação conhecida como Software Carbon Intensity (SCI), voltada a medir o impacto de carbono dos sistemas de software. Também criaram e abriram o código do kit de desenvolvimento que ajuda executar software quando e onde a energia for mais limpa. A combinação desses dois projetos vai permitir que desenvolvedores “descarbonizem” software.
Sustentabilidade em arquiteturas de software e dados não tem sido uma prioridade para as empresas, em parte devido a vários equívocos, aponta a consultoria Mckinsey. Muitos líderes de TI acreditam que a pegada de energia do software é quase insignificante ou já está otimizada suficientemente. Por conta disso, a área de desenvolvimento de software é muitas vezes negligenciada quando se pensa em eficiência energética, incorrendo em custos desnecessários decorrentes de mais complexidade e menos desempenho.
De acordo com a Mckinsey, há cinco padrões que resultam em arquiteturas de software e dados energeticamente ineficientes. Os desenvolvedores precisam se concentrar nesse pontos a seguir que apresentam lacunas de otimização em termos de manutenção, reutilização, desempenho e funcionalidades.
Para reduzir significativamente a pegada geral do software e dos dados, é recomendado abordar as fontes subjacentes das emissões, considerando os três fatores mostrados no gráfico a seguir.
Setembro 02, 2024
Agosto 30, 2024
Agosto 23, 2024
Agosto 22, 2024
Agosto 19, 2024
Agosto 18, 2024
Agosto 17, 2024
Agosto 15, 2024
Previous
10 ferramentas essenciais de monitoramento de rede Cisco
Next
Monitoramento do servidor SQL - saiba como