86
86
bundler : none
87
87
if : ${{ !endsWith(matrix.os, 'arm') && !endsWith(matrix.os, 'ppc64le') && !endsWith(matrix.os, 's390x') }}
88
88
89
+ - name : Check perf commands
90
+ run : |
91
+ command -v mpstat
92
+ command -v vmstat
93
+ command -v iostat
94
+ working-directory :
95
+
89
96
# Avoid possible test failures with the zlib applying the following patch
90
97
# on s390x CPU architecture.
91
98
# https://github.com/madler/zlib/pull/410
@@ -169,14 +176,32 @@ jobs:
169
176
diff -u ../src/spec/ruby/library/etc/struct_passwd_spec.rb{.orig,} || :
170
177
if : ${{ endsWith(matrix.os, 'ppc64le') || endsWith(matrix.os, 's390x') }}
171
178
179
+ - name : Show perf values
180
+ run : |
181
+ set -x
182
+ nproc
183
+ uptime
184
+ free -h
185
+ df -hT
186
+ df .
187
+
188
+ - name : Set perf logs
189
+ run : |
190
+ set -x
191
+ mkdir -p perf_logs
192
+ mpstat -P ALL 30 10 > perf_logs/mpstat.log &
193
+ vmstat 30 10 > perf_logs/vmstat.log &
194
+ iostat -x 30 10 > perf_logs/iostat.log &
195
+
172
196
- name : make ${{ matrix.test_task }}
173
197
run : |
174
198
test -n "${LAUNCHABLE_STDOUT}" && exec 1> >(tee "${LAUNCHABLE_STDOUT}")
175
199
test -n "${LAUNCHABLE_STDERR}" && exec 2> >(tee "${LAUNCHABLE_STDERR}")
176
200
177
201
$SETARCH make -s ${{ matrix.test_task }} \
178
202
${TESTS:+TESTS="$TESTS"} \
179
- ${{ !contains(matrix.test_task, 'bundle') && 'RUBYOPT=-w' || '' }}
203
+ ${{ !contains(matrix.test_task, 'bundle') && 'RUBYOPT=-w' || '' }} \
204
+ ${{ endsWith(matrix.os, 'ppc64le') && '|| :' || '' }}
180
205
timeout-minutes : ${{ matrix.timeout || 40 }}
181
206
env :
182
207
RUBY_TESTOPTS : ' -q --tty=no'
@@ -185,6 +210,21 @@ jobs:
185
210
LAUNCHABLE_STDOUT : ${{ steps.launchable.outputs.stdout_report_path }}
186
211
LAUNCHABLE_STDERR : ${{ steps.launchable.outputs.stderr_report_path }}
187
212
213
+ - name : Show perf mpstat.log
214
+ run : |
215
+ pkill mpstat || :
216
+ cat perf_logs/mpstat.log
217
+
218
+ - name : Show perf vmstat.log
219
+ run : |
220
+ pkill vmstat || :
221
+ cat perf_logs/vmstat.log
222
+
223
+ - name : Show perf iostat.log
224
+ run : |
225
+ pkill iostat || :
226
+ cat perf_logs/iostat.log
227
+
188
228
- name : make skipped tests
189
229
run : |
190
230
$SETARCH make -s test-all TESTS="${TESTS//-n!\//-n/}"
0 commit comments