Skip to content

Commit

Permalink
Experiment 14 - Chunk size
Browse files Browse the repository at this point in the history
- AWS: Read 1B for every 2kB, 12kB, 24kB, for exactly 1024 bytes
- Azure: Read 1B for every 2kB, 12kB, 24kB, for exactly 1024 bytes
  • Loading branch information
ypwong99 committed Feb 20, 2024
1 parent 3c06fa5 commit 6be1cde
Show file tree
Hide file tree
Showing 14 changed files with 534 additions and 114 deletions.
6 changes: 3 additions & 3 deletions .github/workflows/bandwidth-entire-experiment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ name: Bandwidth experiments (Read entire)

on:
workflow_dispatch:
push:
branches:
- ypwong99/temp-experiment-image-sizes
# push:
# branches:
# - ypwong99/temp-experiment-image-sizes

jobs:
build_client:
Expand Down
222 changes: 111 additions & 111 deletions .github/workflows/chunk-size-experiment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ name: Chunk size experiments

on:
workflow_dispatch:
# push:
# branches:
# - ypwong99/temp-experiment-image-sizes
push:
branches:
- ypwong99/temp-experiment-image-sizes

jobs:
build_client:
Expand Down Expand Up @@ -39,130 +39,77 @@ jobs:
path: ${{ env.working-directory }}/build.tar
retention-days: 1

# aws-chunk:
# needs: build_client
# runs-on: [ self-hosted, aws ]
# strategy:
# fail-fast: false
# matrix:
# name: [ aws-chunk-4-kbytes, aws-chunk-8-kbytes, aws-chunk-16-kbytes, aws-chunk-32-kbytes ]
# env:
# working-directory: src
# AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY }}
# AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_KEY }}
#
# steps:
# - name: Check out code into the Go module directory
# uses: actions/checkout@v4
# with:
# ref: ypwong99/temp-experiment-image-sizes
#
# - name: Configure AWS credentials using EASE lab account
# uses: aws-actions/configure-aws-credentials@v4
# with:
# aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY }}
# aws-secret-access-key: ${{ secrets.AWS_SECRET_KEY }}
# aws-region: us-west-1
#
# - name: Set up Node.js 16.16.0
# uses: actions/setup-node@v3
# with:
# node-version: 16.16.0
#
# - name: Download client artifact
# uses: actions/download-artifact@v3
# with:
# name: STeLLAR-build
#
# - name: Untar client build
# working-directory: ${{ env.working-directory }}
# run: tar --strip-components=1 -xvf ../build.tar -C .
#
# - name: Run experiment ${{ matrix.name }}
# working-directory: ${{ env.working-directory }}
# env:
# AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY }}
# AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_KEY }}
# run: ./stellar -a 356764711652 -o latency-samples -c ../experiments/chunk/${{ matrix.name }}.json
#
# - uses: actions/upload-artifact@v3
# with:
# name: ${{ matrix.name }}
# path: ${{ env.working-directory }}/latency-samples

# azure-chunk:
# needs: build_client
# runs-on: [ self-hosted, azure ]
# timeout-minutes: 600
# strategy:
# fail-fast: false
# matrix:
# name: [ azure-chunk-4-kbytes, azure-chunk-8-kbytes, azure-chunk-16-kbytes, azure-chunk-32-kbytes ]
# env:
# working-directory: src
# AZURE_SUBSCRIPTION_ID: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
# AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
# AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
# AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }}
#
# steps:
# - name: Check out code into the Go module directory
# uses: actions/checkout@v4
# with:
# ref: ypwong99/temp-experiment-image-sizes
#
# - name: Set up Node 16.16.0
# uses: actions/setup-node@v3
# with:
# node-version: 16.16.0
#
# - name: Download client artifact
# uses: actions/download-artifact@v3
# with:
# name: STeLLAR-build
#
# - name: Untar client build
# working-directory: ${{ env.working-directory }}
# run: tar --strip-components=1 -xvf ../build.tar -C .
#
# - name: Run experiment ${{ matrix.name }}
# working-directory: ${{ env.working-directory }}
# run: ./stellar -c ../experiments/chunk/${{ matrix.name }}.json
#
# - uses: actions/upload-artifact@v3
# with:
# name: ${{ matrix.name }}
# path: ${{ env.working-directory }}/latency-samples

gcr-chunk:
aws-chunk:
needs: build_client
runs-on: [ self-hosted, gcr ]
timeout-minutes: 600
runs-on: [ self-hosted, aws ]
strategy:
fail-fast: false
matrix:
name: [ gcr-chunk-32-kbytes, gcr-chunk-64-kbytes ]
name: [ aws-chunk-2-kbytes, aws-chunk-12-kbytes, aws-chunk-24-kbytes ]
env:
working-directory: src
DOCKER_HUB_USERNAME: ${{ secrets.DOCKER_HUB_USERNAME }}
DOCKER_HUB_ACCESS_TOKEN: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_KEY }}

steps:
- name: Check out code into the Go module directory
uses: actions/checkout@v4
with:
ref: ypwong99/temp-experiment-image-sizes

- id: auth
name: Configure GCR credentials
uses: google-github-actions/auth@v1
- name: Configure AWS credentials using EASE lab account
uses: aws-actions/configure-aws-credentials@v4
with:
credentials_json: ${{ secrets.GCR_CREDENTIALS }}
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_KEY }}
aws-region: us-west-1

- name: Set up gcloud
uses: google-github-actions/setup-gcloud@v1
- name: Set up Node.js 16.16.0
uses: actions/setup-node@v3
with:
node-version: 16.16.0

- name: Download client artifact
uses: actions/download-artifact@v3
with:
version: ">= 363.0.0"
name: STeLLAR-build

- name: Untar client build
working-directory: ${{ env.working-directory }}
run: tar --strip-components=1 -xvf ../build.tar -C .

- name: Run experiment ${{ matrix.name }}
working-directory: ${{ env.working-directory }}
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_KEY }}
run: ./stellar -a 356764711652 -o latency-samples -c ../experiments/chunk/${{ matrix.name }}.json

- uses: actions/upload-artifact@v3
with:
name: ${{ matrix.name }}
path: ${{ env.working-directory }}/latency-samples

azure-chunk:
needs: build_client
runs-on: [ self-hosted, azure ]
timeout-minutes: 600
strategy:
fail-fast: false
matrix:
name: [ azure-chunk-2-kbytes, azure-chunk-12-kbytes, azure-chunk-24-kbytes ]
env:
working-directory: src
AZURE_SUBSCRIPTION_ID: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }}

steps:
- name: Check out code into the Go module directory
uses: actions/checkout@v4
with:
ref: ypwong99/temp-experiment-image-sizes

- name: Set up Node 16.16.0
uses: actions/setup-node@v3
Expand All @@ -186,3 +133,56 @@ jobs:
with:
name: ${{ matrix.name }}
path: ${{ env.working-directory }}/latency-samples

# gcr-chunk:
# needs: build_client
# runs-on: [ self-hosted, gcr ]
# timeout-minutes: 600
# strategy:
# fail-fast: false
# matrix:
# name: [ gcr-chunk-32-kbytes, gcr-chunk-64-kbytes ]
# env:
# working-directory: src
# DOCKER_HUB_USERNAME: ${{ secrets.DOCKER_HUB_USERNAME }}
# DOCKER_HUB_ACCESS_TOKEN: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}
#
# steps:
# - name: Check out code into the Go module directory
# uses: actions/checkout@v4
# with:
# ref: ypwong99/temp-experiment-image-sizes
#
# - id: auth
# name: Configure GCR credentials
# uses: google-github-actions/auth@v1
# with:
# credentials_json: ${{ secrets.GCR_CREDENTIALS }}
#
# - name: Set up gcloud
# uses: google-github-actions/setup-gcloud@v1
# with:
# version: ">= 363.0.0"
#
# - name: Set up Node 16.16.0
# uses: actions/setup-node@v3
# with:
# node-version: 16.16.0
#
# - name: Download client artifact
# uses: actions/download-artifact@v3
# with:
# name: STeLLAR-build
#
# - name: Untar client build
# working-directory: ${{ env.working-directory }}
# run: tar --strip-components=1 -xvf ../build.tar -C .
#
# - name: Run experiment ${{ matrix.name }}
# working-directory: ${{ env.working-directory }}
# run: ./stellar -c ../experiments/chunk/${{ matrix.name }}.json
#
# - uses: actions/upload-artifact@v3
# with:
# name: ${{ matrix.name }}
# path: ${{ env.working-directory }}/latency-samples
23 changes: 23 additions & 0 deletions experiments/chunk/aws-chunk-12-kbytes.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"Provider": "aws",
"Runtime": "python3.9",
"SubExperiments": [
{
"Title": "aws-chunk-12-kbytes",
"Function": "hellopy-read-per-12288-bytes",
"Handler": "main.lambda_handler",
"PackageType": "Zip",
"PackagePattern": "main.py",
"Bursts": 500,
"BurstSizes": [
1
],
"IATSeconds": 600,
"DesiredServiceTimes": [
"0ms"
],
"Parallelism": 50,
"FunctionImageSizeMB": 100
}
]
}
23 changes: 23 additions & 0 deletions experiments/chunk/aws-chunk-2-kbytes.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"Provider": "aws",
"Runtime": "python3.9",
"SubExperiments": [
{
"Title": "aws-chunk-2-kbytes",
"Function": "hellopy-read-per-2048-bytes",
"Handler": "main.lambda_handler",
"PackageType": "Zip",
"PackagePattern": "main.py",
"Bursts": 500,
"BurstSizes": [
1
],
"IATSeconds": 600,
"DesiredServiceTimes": [
"0ms"
],
"Parallelism": 50,
"FunctionImageSizeMB": 100
}
]
}
23 changes: 23 additions & 0 deletions experiments/chunk/aws-chunk-24-kbytes.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"Provider": "aws",
"Runtime": "python3.9",
"SubExperiments": [
{
"Title": "aws-chunk-24-kbytes",
"Function": "hellopy-read-per-24576-bytes",
"Handler": "main.lambda_handler",
"PackageType": "Zip",
"PackagePattern": "main.py",
"Bursts": 500,
"BurstSizes": [
1
],
"IATSeconds": 600,
"DesiredServiceTimes": [
"0ms"
],
"Parallelism": 50,
"FunctionImageSizeMB": 100
}
]
}
23 changes: 23 additions & 0 deletions experiments/chunk/azure-chunk-12-kbytes.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"Provider": "azure",
"Runtime": "python3.8",
"SubExperiments": [
{
"Title": "azure-chunk-12-kbytes",
"Function": "hellopy-read-per-12288-bytes",
"Handler": "main.main",
"PackageType": "Zip",
"PackagePattern": "main.py",
"Bursts": 500,
"BurstSizes": [
1
],
"IATSeconds": 600,
"DesiredServiceTimes": [
"0ms"
],
"Parallelism": 50,
"FunctionImageSizeMB": 100
}
]
}
23 changes: 23 additions & 0 deletions experiments/chunk/azure-chunk-2-kbytes.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"Provider": "azure",
"Runtime": "python3.8",
"SubExperiments": [
{
"Title": "azure-chunk-2-kbytes",
"Function": "hellopy-read-per-2048-bytes",
"Handler": "main.main",
"PackageType": "Zip",
"PackagePattern": "main.py",
"Bursts": 500,
"BurstSizes": [
1
],
"IATSeconds": 600,
"DesiredServiceTimes": [
"0ms"
],
"Parallelism": 50,
"FunctionImageSizeMB": 100
}
]
}
Loading

0 comments on commit 6be1cde

Please sign in to comment.