lidavidm commented on code in PR #958:
URL: https://github.com/apache/arrow-go/pull/958#discussion_r4021623103


##########
.github/workflows/benchmark.yml:
##########
@@ -23,44 +23,109 @@ on:
     paths:
       - ".github/workflows/benchmark.yml"
       - "ci/scripts/bench.sh"
+      - "ci/scripts/bench_shard.sh"
       - "ci/scripts/bench_adapt.py"
   workflow_dispatch:
 permissions:
   contents: read
 jobs:
+  setup:
+    runs-on: ubuntu-latest
+    outputs:
+      matrix: ${{ steps.shards.outputs.matrix }}
+    steps:
+      - name: Checkout repository
+        uses: actions/[email protected]
+      - name: Compute benchmark shards
+        id: shards
+        run: echo "matrix=$(bash ci/scripts/bench_shard.sh 6)" >> 
"$GITHUB_OUTPUT"
   benchmark:
+    needs: setup
     runs-on: ubuntu-latest
+    # The slowest shard (./arrow/array) takes ~40m, so 90m leaves headroom for
+    # runner variance while still failing a pathological benchmark ~4x sooner
+    # than the 6h GitHub default.
+    timeout-minutes: 100

Review Comment:
   comment/value mismatch



##########
.github/workflows/benchmark.yml:
##########
@@ -23,44 +23,109 @@ on:
     paths:
       - ".github/workflows/benchmark.yml"
       - "ci/scripts/bench.sh"
+      - "ci/scripts/bench_shard.sh"
       - "ci/scripts/bench_adapt.py"
   workflow_dispatch:
 permissions:
   contents: read
 jobs:
+  setup:
+    runs-on: ubuntu-latest
+    outputs:
+      matrix: ${{ steps.shards.outputs.matrix }}
+    steps:
+      - name: Checkout repository
+        uses: actions/[email protected]
+      - name: Compute benchmark shards
+        id: shards
+        run: echo "matrix=$(bash ci/scripts/bench_shard.sh 6)" >> 
"$GITHUB_OUTPUT"
   benchmark:
+    needs: setup
     runs-on: ubuntu-latest
+    # The slowest shard (./arrow/array) takes ~40m, so 90m leaves headroom for
+    # runner variance while still failing a pathological benchmark ~4x sooner
+    # than the 6h GitHub default.
+    timeout-minutes: 100
     strategy:
+      fail-fast: false
       matrix:
-        go: ['1.26.1']
-        arch: ['amd64']
+        include: ${{ fromJson(needs.setup.outputs.matrix) }}
     steps:
       - name: Checkout repository
         uses: actions/[email protected]
         with:
           submodules: recursive
-      - name: Set up Python
+      - name: Install Go for Benchmarks
+        uses: actions/[email protected]
+        with:
+          go-version: '1.26.1'

Review Comment:
   We can't take this from go.mod?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to