Joule Profiler를 이용한 서버리스 함수 에너지 소비량 프로파일링
요약
본 논문은 서버리스 함수의 에너지 효율성을 경험적으로 연구하며, 다양한 실행 환경과 언어 런타임 조합을 평가했습니다. 총 1,401가지 구성을 테스트하여 프로그래밍 언어 선택의 중요성, 에너지 효율성에 영향을 미치는 요인, 그리고 가장 에너지 효율적인 배포 구성을 제시합니다.
핵심 포인트
- 서버리스 함수의 에너지 효율성을 경험적으로 분석함.
- 프로그래밍 언어 선택이 중요한 요소임을 밝힘.
- 최적의 구성은 런타임에 따라 달라지며, 짧게 살아있는 함수에 중요함.
클라우드 제공업체와 고객들은 온디맨드로 함수를 배포하고 실행하는 편리한 패러다임으로 서버리스 컴퓨팅을 광범위하게 채택했습니다. 이를 위해 서버리스 플랫폼은 함수의 코드가 단 한 줄 실행되기 전에 적절한 실행 환경을 프로비저닝해야 합니다. 이러한 환경은 컨테이너 엔진, 하이퍼바이저(hypervisors), 유니커널(unikernels), 그리고 프로그래밍 언어 런타임과 같은 여러 계층으로 구성됩니다. 문헌에서는 이러한 서버리스 플랫폼의 성능을 조사했지만, 함수를 블랙박스로 취급하며, 커뮤니티는 애플리케이션을 서버리스 함수로 패키징하는 것의 환경적 영향에 대한 핵심 통찰력이 부족합니다. 따라서 본 논문은 서버리스 플랫폼에 배포 가능한 서버리스 함수의 에너지 효율성을 경험적으로 연구합니다. 우리는 이해관계자들이 서버리스 함수 실행에 관련된 다양한 계층의 영향을 탐색할 수 있도록 실험적인 벤치마킹 환경을 설계했습니다. 이를 사용하여 9개의 실행 환경, 7개의 언어-런타임 구성, 11개의 워크로드, 그리고 3개의 입력 크기를 결합한 총 1,401가지 구성을 평가하여 세 가지 연구 질문에 답합니다: 서버리스 함수에서 가장 인기 있는 프로그래밍 언어가 가장 에너지 효율적인가? 무엇이 그들의 에너지 효율성에 가장 큰 영향을 미치는 요인인가? 이들을 배포하는 데 가장 에너지 효율적인 구성은 무엇인가? 우리의 결과는 먼저 프로그래밍 언어를 선택하고, 그다음 언어 런타임을 선택하며, 마지막으로 실행 환경을 선택해야 하며, 이는 짧게 살아있는 함수에만 중요하고 최적의 선택은 런타임에 따라 달라진다는 것을 보여줍니다. 우리의 벤치마킹 환경, 실험 아티팩트, 원시 측정값, 그리고 분석 코드는 공개적으로 이용 가능합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv Codex (cs.SE)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기