개발자 / 글로벌 트렌드

환경 친화적인 시스템 개발의 서막

David Linthicum | InfoWorld 2024.04.02
2023년 12월, UN 기후 변화 회의 COP28에 참석하기 위해 약 200개국의 대표단 인사가 두바이에 모였다. 이 자리에서 대표단은 IEEE 보고 문서에 언급된 시급한 배출가스 저감 필요성을 논의했다. 

웹사이트 지속 가능성 평가 도구인 에코그레이더(Ecograder)에 따르면 COP28 웹사이트는 페이지 로드당 3.69g의 CO2를 방출한다. 방문자가 웹사이트를 찾을 때마다 이 수치는 누적된다. 1년 동안 월 1만 회의 뷰를 가정할 경우 배출되는 가스는 샌프란시스코에서 토론토까지 가는 편도 항공편의 배출량을 약간 상회하는 정도다. 
 
ⓒ Getty Images Bank

이와 별개로 좀 색다른 사안도 있다. 전기차(EV)는 제조 과정에서의 배출량은 더 많지만 최종적으로 운행할 때는 더 깨끗하다는 점이다. 고가의 전기차를 소유한 사람은 제조 과정에서의 탄소 발자국을 감안할 때 첫 3만~6만 마일까지는 탄소 배출량이 더 많다. 또한 대부분의 EV 충전기에 전력을 공급하는 발전소는 석탄 연소 발전소다.
 

소프트웨어는 얼마나 친환경적인가? 

소프트웨어 자체는 탄소를 배출하지 않지만 소프트웨어가 실행되는 데이터 센터는 탄소를 배출한다. 데이터 센터의 소프트웨어를 사용하는 정보 통신 기술이 배출하는 온실가스는 전 세계 온실가스 배출량의 2%~4%로 추정된다. 문서에 따르면 2040년에는 이 수치가 14%로 높아진다. 항공, 육상, 해상 교통에서 배출되는 탄소를 모두 합친 것만큼 많은 양이다. 

여기서 변화를 만들 수 있는 지점은 다음의 3가지다.

첫째, 인간은 소프트웨어를 만드는 데는 능숙하지만 하드웨어 리소스를 최적으로 활용하는 소프트웨어를 만드는 데는 서툴다. 이는 전력 소비의 비효율성으로 이어진다. 클라우드 컴퓨팅 시대에서 하드웨어 리소스는 언제든 꺼내 사용할 수 있는 거대한 컴퓨팅 풀로 여겨진다. 효율성이나 최적화에 대해서는 생각하지 않는다. 

둘째, 그동안은 전력 소비에 대해 책임 소재를 가리지 않았다. 개발자와 데브옵스 엔지니어는 부실하게 설계된 소프트웨어가 하드웨어 전력 소비에 미치는 영향을 보여주는 지표에 액세스할 수 없다. 클라우드에서는 이 같은 인사이트의 부재가 일반적으로 더 심각하다. 하드웨어를 물리적으로 구매할 필요 없이 필요에 따라 사용하는 방식이므로 하드웨어 비효율성의 비용이 겉으로 드러나지 않기 때문이다. 클라우드 핀옵스가 이 상황을 바꿀 가능성도 있지만 아직은 아니다. 

마지막으로, 효율적인 코드를 쓰도록 개발자를 교육하지 않는다. 고도로 최적화된 애플리케이션은 최적화되지 않은 애플리케이션보다 전력 소비 측면에서 500% 더 효율적일 수 있다. 지금까지는 시간이 갈수록 상황은 더 악화됐다. 과거에는 프로세서와 스토리지, 메모리의 비용이 컸고 가용성은 제한적이었기 때문에 효율적인 코드를 써야 했다. 요즘은 값도 저렴하고 언제든 사용할 수 있다. 
 

막대한 전력을 소비하는 AI로 인해 더욱 악화되는 상황 

인공지능은 현대의 가장 중요한 기술 발전이 됐다. 과거에는 불가능하다고 생각했던 솔루션이 이제는 가능하다. 그러나 진보와 발전도 좋지만 그 기저의 문제도 해결해야 한다. AI 시스템의 하드웨어 요구사항과 전력 소비에 대한 고민이 필요하다. 

GPU에는 CPU보다 더 많은 전력이 필요하다. 지금 새로운 닷컴 붐이 일어나는 중이고 GPU 기업의 주가가 치솟고 있음을 상기하자. 이 분야에서 GPU 최적화는 뒷전이다. AI 시스템을 구축하려는 경우 GPU는 필요악이다. 

기업이 자체 AI 모델의 탄소 발자국을 줄이기 위해 노력하면서 지속 가능한 AI 관행에 대한 새로운 대화가 시작됐다. 혁신의 진작과 환경적 책임을 다하는 것 사이의 균형점은 어디일까? 많은 기업과 기술 제공업체가 번지르르하게 말하고 있지만, 정작 AI에 대한 하드웨어 최적화는 아직 그다지 이뤄지지 않고 있다. 
 

지속 가능성으로 얻는 것 

AI 사용으로 상황이 더 악화되기 전인 지금이 전력 소비를 논의하기 좋은 시점이다. 환경뿐만 아니라 재무적인 영향도 있다. 뭐든 더 많은 전력이 필요한 것에는 더 많은 돈이 든다. 

지속 가능한 소프트웨어 관행을 향한 전환에서 비즈니스와 지속 가능성은 서로 떼어 놓을 수 없다. 비즈니스 측면에서 이렇다 할 이점이 없다면 이 대화가 성립할 수 있을지 의심스럽다. 윤리적 원칙과 경제적 고려 사항이 결합되면 핵심 촉매로서 지속 가능성의 중요성이 부각된다.

환경 친화적인 웹사이트와 애플리케이션을 개발하기 위해서는 개발자의 업무 윤리가 바뀌어야 한다. 에너지 소비를 줄이기 위한 기능의 필요성, 알고리즘 효율성, 코드 최적화에 대한 재평가가 개발 과정에 포함되어야 한다.  

소프트웨어 개발 프로세스 구조에도 지속 가능성 원칙을 심어야 한다. 즉, 개선된 데브옵스 프로세스와 툴체인으로 소프트웨어 효율성을 한 차원 높여야 한다. 개발자는 더 효율적이고 전력 소비량이 적은 소프트웨어의 설계자가 돼야 한다. 

환경 친화적 알고리즘 채택은 에너지 소비 절감이라는 더 넓은 범위의 전략에 부합하는 전술적 행동이다. 최근 연구에서는 효율적인 알고리즘이 성능에 거의 영향을 미치지 않으면서 개발과 운영 중에 에너지 소비를 줄여주는 것으로 나타났다. 

AI의 문제를 살펴보자. AI의 지속 가능성을 보장하려면 학습 데이터에 대해 양심적인 접근 방식을 취해야 한다. "데이터가 만사"라는 개념은 AI에서 가장 많은 전력 소비를 이끄는 측면이다. 데이터 사용을 최적화하고 알고리즘 프로세스를 개선하면 에너지 지출을 줄일 수 있음은 수십년 전부터 알려진 사실이다. 

이는 탄소 배출을 최소화한 혁신적인 AI 시스템을 구축하기 위해 개발자와 AI 엔지니어, 데이터 과학자를 교육해야 할 필요성을 잘 보여준다. 조직은 더 나은 지속 가능성 관행을 고집해야 한다. 일반적으로 제공 시간이나 비용에는 영향을 미치지 않으면서 가능하다. 

물론 교육과 툴은 더 효율적인 AI 개발을 이끌기 위해 필요한 부가적인 비용이다. 두 가지를 동시에 충족할 수는 없다. 지속 가능한 소프트웨어 관행을 목표로 추구하려면 소프트웨어 솔루션의 수명 주기 전반에 걸쳐 탄소 발자국을 측정할 수 있는 툴이 필요하다. 이러한 지표는 귀중한 인사이트를 제공하여 디지털 기술의 지속적인 발전을 보장하면서도 환경에 미치는 영향을 줄이는 관행으로 개발자를 이끈다.  

소프트웨어 산업에서 지속 가능성을 강조하는 교육 이니셔티브와 인증 프로그램의 주도로 환경 친화적인 소프트웨어 엔지니어링을 향한 추세는 갈수록 강해지고 있다. 우리는 문제를 파악하고 해결책을 고안하는 데는 매우 뛰어나지만 막상 그 해결책을 실행하는 데는 그다지 뛰어나지 않다. 

이미 최고 지속 가능성 책임자라는 직책을 가진 사람들의 수가 늘어나고 있다. 필자가 냉소적일지도 모르지만 경험으로 보면 기업은 실제 성과보다는 환경, 사회, 거버넌스(ESG) 점수와 대외 홍보에 더 초점을 두게 될 것이다. 사무실의 태양광 패널이나 EV 충전기에만 몰두할 것이 아니라 효율적인 소프트웨어 시스템을 만드는 데 우선 순위를 두어야 한다. 

지속 가능성을 위한 노력이 곧 유의미한 성과를 달성할 수 있기를 희망한다. 
editor@itworld.co.kr 
Sponsored

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.