Trying to figure out why mkin 1.1.0 (to be released) tests fail on winbuilder and r-hub with R-devel, I am checking locally with R-devel on Linux. I am finding that certain tests run reasonably quick when using R 4.1.2
me@computer:~/git/mkin (main)$ time Rscript -e "testthat::test_file('tests/testthat/test_tests.R', reporter = 'Progress')"
Loading required package: mkin
Loading required package: parallel
✔ | F W S  OK | Context
✔ |         9 | Hypothesis tests [9.0s]                                                                                                                                                                                               
══ Results ═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
Duration: 9.0 s
[ FAIL 0 | WARN 0 | SKIP 0 | PASS 9 ]
real    1m48,779s
user    4m37,386s
sys     3m17,240s
The additional time reported by the unix time command is spent in the setup_script.R file.
When I use locally compiled R-devel, the same tests need more than four times as much time
Loading required package: mkin
Loading required package: parallel
✔ | F W S  OK | Context
✔ |         9 | Hypothesis tests [42.4s]                                                                                                                                                                                              
══ Results ═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
Duration: 42.4 s
[ FAIL 0 | WARN 0 | SKIP 0 | PASS 9 ]
real    2m21,823s
user    5m7,507s
sys     3m14,287s
In both cases, R uses openblas-pthread, see for R 4.1.2:
me@computer:~/git/mkin (main)$ Rscript -e "sessionInfo()"
R version 4.1.2 (2021-11-01)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Debian GNU/Linux 11 (bullseye)
Matrix products: default
BLAS:   /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3
LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblasp-r0.3.13.so
locale:
 [1] LC_CTYPE=de_DE.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=de_DE.UTF-8        LC_COLLATE=de_DE.UTF-8    
 [5] LC_MONETARY=de_DE.UTF-8    LC_MESSAGES=de_DE.UTF-8   
 [7] LC_PAPER=de_DE.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=de_DE.UTF-8 LC_IDENTIFICATION=C       
attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     
loaded via a namespace (and not attached):
[1] compiler_4.1.2
and for R-devel:
me@computer:~/git/mkin (main)$ Rscript-devel -e "sessionInfo()"
R Under development (unstable) (2022-03-02 r81842)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Debian GNU/Linux 11 (bullseye)
Matrix products: default
BLAS/LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblasp-r0.3.13.so
locale:
 [1] LC_CTYPE=de_DE.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=de_DE.UTF-8        LC_COLLATE=de_DE.UTF-8    
 [5] LC_MONETARY=de_DE.UTF-8    LC_MESSAGES=de_DE.UTF-8   
 [7] LC_PAPER=de_DE.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=de_DE.UTF-8 LC_IDENTIFICATION=C       
attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     
loaded via a namespace (and not attached):
[1] compiler_4.2.0
You can try to reproduce this from my latest commit (increase cloning depth if necessary)
git clone git@github.com:jranke/mkin --depth=10
cd mkin
git checkout 77c248ca40b82ec00a756cd82f12968131f78959
Stripping down the setup script to what's really needed to run the tests from this particular file reduces the time difference:
$ git pull origin stackoverflow_71340826
$ Rscript -e "testthat::test_file('tests/testthat/test_tests.R', reporter = 'Progress')"
Loading required package: mkin
Loading required package: parallel
✔ | F W S  OK | Context
✔ |         9 | Hypothesis tests [7.8s]                                                                                                                                                                                               
══ Results ═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
Duration: 7.8 s
[ FAIL 0 | WARN 0 | SKIP 0 | PASS 9 ]
as compared to
$ Rscript-devel -e "testthat::test_file('tests/testthat/test_tests.R', reporter = 'Progress')"
Loading required package: mkin
Loading required package: parallel
✔ | F W S  OK | Context
✔ |         9 | Hypothesis tests [13.9s]                                                                                                                                                                                              
══ Results ═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════
Duration: 14.0 s
[ FAIL 0 | WARN 0 | SKIP 0 | PASS 9 ]
Any hints are appreciated.