Towards Demystifying Intra-Function Parallelism in Serverless Computing

Metadane

  • Autorzy: Michael Kiener, Mohak Chadha, Michael Gerndt
  • Rok: 2021
  • Źródło: arXiv preprint / konferencja (TU München)
  • arXiv: 2110.12090
  • PDF: https://arxiv.org/pdf/2110.12090v3
  • Status: to-read
  • Kategoria główna: Systems
  • Podkategorie: Serverless Computing, Parallelism, Performance, Cost Optimization
  • Tagi: #serverless #faas #parallelism #performance #cost-optimization #aws-lambda #google-cloud #vcpu #project:js-runtime-energy

Streszczenie

Praca analizuje wpływ zrównoleglenia wewnątrz jednej funkcji (intra-function parallelism) na wydajność i koszty w AWS Lambda, Google Cloud Functions (GCF) i Google Cloud Run (GCR). Autorzy badają korelację między alokowanymi vCPU a dostępnymi rdzeniami CPU i pokazują, że użytkownicy często nie wiedzą, że muszą zrównoleglić kod by skorzystać z dodatkowych vCPU.

Kontekst dla JE-1: zrozumienie jak serverless platforms alokują CPU i jak to wpływa na pomiary energii. vCPU != fizyczny rdzeń — implikacje dla RAPL.


Kluczowe Wnioski

  • Liczba dostępnych rdzeni nie zawsze równa się liczbie alokowanych vCPU
  • Bez zrównoleglenia: dodatkowe vCPU (i wyższa cena) nie przekładają się na wydajność
  • Zrównoleglenie może przynieść oszczędności kosztów do 81% na AWS Lambda
  • Różnice między platformami: AWS Lambda vs GCF vs GCR różnie eksponują vCPU
  • Implikacja dla energii: więcej vCPU = więcej energii nawet przy idle

Metodologia

  • Platformy: AWS Lambda, Google Cloud Functions (GCF), Google Cloud Run (GCR)
  • Workloady: compute-intensive (matrix multiply, hashing) — dobrze skalują się z paralelizmem
  • Metryki: czas wykonania, koszt ($ per invocation), liczba dostępnych rdzeni
  • Eksperyment: różne konfiguracje memory/vCPU × różna liczba wątków

Główne Koncepcje

  • vCPU (virtual CPU): abstrakcja CPU przydzielana funkcji serverless — może nie odpowiadać 1:1 fizycznemu rdzeniu
  • Intra-function parallelism: wątki/procesy wewnątrz jednej funkcji (vs inter-function = wiele instancji)
  • Memory-proportional vCPU: AWS Lambda przydziela vCPU proporcjonalnie do skonfigurowanej pamięci
  • Cost-performance trade-off: więcej vCPU = wyższy koszt, ale shorter execution time → net savings?

Wyniki

PlatformaMax oszczędność kosztówWymagane wątki
AWS Lambda81%~6 wątków
GCF49%~4 wątki
GCR69.8%~8 wątków

Przydatne Cytaty

“By parallelizing serverless workloads, we observed cost savings up to 81% for AWS Lambda, 49% for GCF, and 69.8% for GCR.” (Abstract)

“The number of available cores to a function/container instance does not always equal the number of allocated vCPUs.” (Abstract)


Datasety

  • AWS Lambda, GCF, GCR — commercial platforms (własne eksperymenty)

Powiązane Tematy

  • Metodologia pomiarowa (#JE-3): pomiar energii w środowiskach chmurowych
  • GreenCourier (Chadha 2023) — ten sam autor, carbon-aware scheduling
  • Cold Start Review (Golec 2024)

Notatki

Elementów w folderze: 0.