[Rd] Windows Rgui.exe 4.2.0: Call of txtProgressBar() slows down dramatically after subsequent calls

Paulo Barata pb @end|ng |rom |n|o||nk@com@br
Thu May 19 22:34:35 CEST 2022


There runs of Tobias' foo function on different versions of R that I 
have installed here.

R version 4.1.1 Patched (2021-09-30 r80997)
elapsed time of three trials: 1.31 / 1.33 / 1.35

R version 4.1.2 Patched (2021-11-02 r81131)
elapsed time of three trials: 1.34 / 1.34 / 1.34

R version 4.1.3 Patched (2022-03-10 r81878)
elapsed time of three trials: 1.33 / 1.34 / 1.37

R version 4.2.0 Patched (2022-05-17 r82371 ucrt)
elapsed time of three trials: 7.14 / 17.56 / 27.21

Platform is always: x86_64-w64-mingw32/x64 (64-bit)
RGui.exe running on Windows 10 Professional 64-bit (build 19044.1706)

Not only, as Tobias has shown, there is an increasing time among the 
three trials in R 4.2.0 Patched, but also the average time for each of 
the 4.1.X Patched versions (with nearly constant time each) is well 
smaller than the first trial with R 4.2.0 Patched.

Regards,

Paulo Barata

(Rio de Janeiro - Brazil)

----------------------------------------------------------

On 19/05/2022 15:37, Tobias Schoch wrote:
> The issue appears in Rgui.exe version 4.2.0 (called "new" version; see bottom). The issue does NOT appear with Rterm.exe (same R version).
> 
> I provide a minimal example (foo) below. If I run function foo 3 times in a row, the execution time increases considerably (although it should not).
> 
> 1st foo call: 5 seconds
> 2nd foo call: 13 seconds
> 3rd foo call: 20 seconds
> 
> The execution time keeps increasing when I call foo more often. In addition, Rgui.exe becomes laggy in taking input from the keyboard.
> 
> Sometimes, but rarely, I observe that Rgui.exe terminates with "Error: C stack usage is too close to the limit". Unfortunately, I cannot reproduce the stack error consistently.
> 
> On the "old" Rgui.exe version 4.1.2, execution time stays roughly constant over consecutive calls of foo (as expected). Unfortunately, I do not have a running 4.1.3 version; thus, I cannot tell how it behaves there.
> 
> Do you have any clue why this happens?
> 
> Kind regards,
> Tobias
> 
> 
> #------------------------------
> # minimal working example: interestingly, the issue does not occur
> # when 'style = 1' in txtProgressBar()
> foo <- function(n)
> {
>      p_bar <- txtProgressBar(style = 3)
>      for (i in 1:n) {
>          Sys.sleep(0.01)
>          setTxtProgressBar(p_bar, i / n)
>      }
>      close(p_bar)
> }
> # 1st call
> system.time(foo(100))
> # 2nd call
> system.time(foo(100))
> # 3rd call
> system.time(foo(100))
> #------------------------------
> 
> 
> My R versions:
> 
> "Old" Rgui.exe
>      R version 4.1.2 (2021-11-01)
>      Platform: x86_64-w64-mingw32/x64 (64-bit)
>      Running under: Windows 10 x64 (build 19044)
> 
> "New" Rgui.exe
>      R version 4.2.0 (2022-04-22 ucrt)
>      Platform: x86_64-w64-mingw32/x64 (64-bit)
>      Running under: Windows 10 x64 (build 19044)
> 
> 
> ------------------------------------------------------------------
> Fachhochschule Nordwestschweiz FHNW
> Hochschule für Wirtschaft
> Institute for Competitiveness and Communication
> Empirische Wirtschafts- und Sozialforschung
> 
> Prof. Dr. Tobias Schoch
> Riggenbachstrasse 16
> CH-4600 Olten
> Schweiz / Switzerland
> ------------------------------------------------------------------
> T +41 62 957 21 02
> Mail tobias.schoch using fhnw.ch
> http://www.fhnw.ch/de/personen/tobias-schoch
> 
> ______________________________________________
> R-devel using r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel



More information about the R-devel mailing list