
탄소배출 제로 차량, 생분해성 플라스틱으로 만든 친환경 포장재 등 전 분야에서 '친환경'이 대세로 떠오르고 있다. 앱 개발 등 코딩 및 프로그래밍 역시 더 적은 전력으로 효율을 높일 수 있는 친환경 개발이 중요해지고 있다.
Google의 경우, 에너지 소비가 지난 몇 년 동안 증가하여 2020년에는 15.4테라와트시(Terawatt hour)에 도달했으며 이는 2019년에 960만 유럽 가정에 전력을 공급하기에 충분한 양이다. Google뿐만 아니라 대부분의 국가에서 에너지 소비가 계속 증가할 가능성이 매우 높아 에너지 최적화가 중요사안으로 떠오르고 있다. 세계에서 생산되는 에너지의 80%가 환경 파괴의 주범이 될 수 있는 화석 연료에서 발생하기 때문이다. 이와 관련 소프트웨어의 전력 효율성 역시 고려해야 기후변화에 대처할 수 있다는 의견이 대두되고 있다.
외신인 techxplore에 따르면, 자동 디버깅은 친환경 코딩의 핵심 키가 될 수 있다. 코딩은 필연적으로 버그를 발생시키며, 디버깅 행위 자체가 소프트웨어의 에너지 효율을 높이기 때문이다. 특히 프로그램 디버깅에서 가장 비용이 많이 들고 시간이 많이 소요되는 활동 중 하나는 SFL(Software Fault Localization)이다.
INESC TEC의 연구원인 Francisco Ribeiro는 "우리는 소프트웨어 버그를 유발한 수정 사항에 대한 의미론적 정보를 제공하는 기술을 개발했다”면서 “이 기술을 구현하는 도구는 공개적으로 사용할 수 있으며 Morpheus 라고 한다"라고 말했다.
자동 디버깅은 APR(자동 프로그램 복구)의 모든 것으로 Meta와 같은 기업들은 이 분야에 대한 연구를 활발히 진행하고 있다. APR과 관련하여 포르투갈 연구원 그룹은 6,000개 이상의 잘못된 프로그램에 대한 연구에서 27%의 수리율을 얻었다.
보다 호율적인 프로그래밍 언어를 찾는 것도 친환경 코딩 방법 중 하나다. 시스템 및 컴퓨터 공학, 기술 및 과학 연구소(INESC TEC)와 민호 대학의 연구원 그룹은 유사한 작업을 수행하는 데 더 많은 에너지가 필요한 프로그래밍 언어를 찾기 위해 현미경 아래에 프로그래밍 언어를 배치했다. 그 결과 27개 프로그래밍 언어의 순위를 제공한다.
INESC TEC의 연구원이자 Minho 대학의 교수인 João Saraiva는 "개발자는 이 정보를 사용하여 목표 시나리오에 가장 적합한 프로그래밍 언어를 결정할 수 있다. 이 언어는 배터리, 시간 및 메모리 제한과 같은 여러 제약 조건에 따라 달라질 수 있다"라고 말했다.
[ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]