On 07/04/2025 16:34, Christian Franke via Cygwin-apps wrote:
Jon Turney via Cygwin-apps wrote:
On 15/09/2024 16:11, Jon Turney via Cygwin-apps wrote:
On 13/09/2024 18:33, Christian Franke via Cygwin-apps wrote:
I would like to contribute stress-ng. Also present in Debian, Fedora, FreeBSD, Ubuntu, ...

I was thinking about adding a step to our CI to run stress-ng, as it seems quite good at finding some kinds of regressions.

I wonder if you could suggest a suitable set of options to invoke it with?


Attached is an enhanced version of my local script used to test stress- ng before packaging. I agree that it should provide some more comments :-)

Many thanks.

I posted the patches to incorporate this in our CI here: https://cygwin.com/pipermail/cygwin-patches/2025q2/013646.html

I'm not crazy about using pskill, not least because because it's a bit awkward to get into place.

It seems like we should have our own equivalent, but even if implemented, '/usr/bin/kill -f -PGID' seems unlikely to work if the process is hard stuck.

(I guess some scripting to grovel over the process tree and /usr/bin/kill -f all the processes with a matching name is possible?)

Perhaps the '--keep-name' option should be used, if we're going to kill by process name?


I note that the test 'clock' fails in the CI environment:

    > stress-ng: 23:25:43.13 debug: [1338] invoked with 'stress-ng -v -M 
--oomable --timestamp --verify --temp-path 
/cygdrive/c/Users/RUNNER~1/AppData/Local/Temp/stress-ng.1237.5.d -t 5 --log-file 
/cygdrive/d/a/cygwin/cygwin/logs/clock --clock 2' by user 197108 'runneradmin'
    > stress-ng: 23:25:43.14 debug: [1338] stress-ng 0.18.12
    > stress-ng: 23:25:43.15 debug: [1338] system: CYGWIN_NT-10.0-20348 
fv-az2222-241 3.7.0-api-358.x86_64 2025-04-10 23:13 UTC x86_64, gcc 12.4.0, Cygwin 
libc, little endian
    > stress-ng: 23:25:43.15 debug: [1338] RAM total: 16.0G, RAM free: 13.8G, 
swap free: 2.9G
    > stress-ng: 23:25:43.15 debug: [1338] temporary file path: 
'/cygdrive/c/Users/runneradmin/AppData/Local/Temp/stress-ng.1237.5.d'
    > stress-ng: 23:25:43.15 debug: [1338] 4 processors online, 4 processors 
configured
    > stress-ng: 23:25:43.15 info:  [1338] setting to a 5 secs run per stressor
    > stress-ng: 23:25:43.15 debug: [1338] cache allocate: using defaults, 
cannot determine cache level details
    > stress-ng: 23:25:43.15 debug: [1338] cache allocate: shared cache buffer 
size: 2048K
    > stress-ng: 23:25:43.15 info:  [1338] dispatching hogs: 2 clock
    > stress-ng: 23:25:43.15 debug: [1338] starting stressors
    > stress-ng: 23:25:43.17 debug: [1338] 2 stressors started
    > stress-ng: 23:25:43.41 debug: [1340] clock: [1340] started (instance 0 on 
CPU 2)
    > stress-ng: 23:25:43.43 debug: [1341] clock: [1341] started (instance 1 on 
CPU 2)
    > stress-ng: 00:00:00.-99 fail:  [1340] clock: clock_settime was able to 
set an invalid negative time for timer 'CLOCK_REALTIME'
    > stress-ng: 00:00:00.-99 fail:  [1340] clock: clock_settime was able to 
set an invalid negative time for timer 'CLOCK_REALTIME_COARSE'
    > stress-ng: 00:00:00.-99 fail:  [1341] clock: clock_settime was able to 
set an invalid negative time for timer 'CLOCK_REALTIME'
    > stress-ng: 00:00:00.-99 fail:  [1341] clock: clock_settime was able to 
set an invalid negative time for timer 'CLOCK_REALTIME_COARSE'
    > stress-ng: 23:25:48.39 debug: [1340] clock: [1340] exited (instance 0 on 
CPU 2)
    > stress-ng: 23:25:48.39 error: [1338] clock: [1340] terminated with an 
error, exit status=2 (stressor failed)
    > stress-ng: 23:25:48.39 debug: [1338] clock: [1340] terminated (stressor 
failed)
    > stress-ng: 23:25:48.40 debug: [1341] clock: [1341] exited (instance 1 on 
CPU 2)
    > stress-ng: 23:25:48.40 error: [1338] clock: [1341] terminated with an 
error, exit status=2 (stressor failed)
    > stress-ng: 23:25:48.40 debug: [1338] clock: [1341] terminated (stressor 
failed)
    > stress-ng: 23:25:48.40 debug: [1338] metrics-check: all stressor metrics 
validated and sane
    > stress-ng: 23:25:48.41 metrc: [1338] stressor       bogo ops real time  
usr time  sys time   bogo ops/s     bogo ops/s CPU used per       RSS Max
    > stress-ng: 23:25:48.41 metrc: [1338]                           (secs)    
(secs)    (secs)   (real time) (usr+sys time) instance (%)          (KB)
    > stress-ng: 23:25:48.41 metrc: [1338] clock            158338      4.97    
  1.48      7.11     31888.38       18428.54        86.52         19992
    > stress-ng: 23:25:48.41 info:  [1338] skipped: 0
    > stress-ng: 23:25:48.41 info:  [1338] passed: 0
    > stress-ng: 23:25:48.41 info:  [1338] failed: 2: clock (2)
    > stress-ng: 23:25:48.41 info:  [1338] metrics untrustworthy: 0
    > stress-ng: 23:25:48.41 info:  [1338] unsuccessful run completed in 5.25 
secs

Reply via email to