Skip to content

Scala 3.5.0 runner takes 4X longer to start than scala-cli runner on Windows #21551

Closed as not planned
@soronpo

Description

@soronpo

Compiler version

v3.5.0

Minimized code

hello.sc

println("hello")

timeit.bat

@echo off
@setlocal

set start=%time%

:: Runs your command
cmd /c %*

set end=%time%
set options="tokens=1-4 delims=:.,"
for /f %options% %%a in ("%start%") do set start_h=%%a&set /a start_m=100%%b %% 100&set /a start_s=100%%c %% 100&set /a start_ms=100%%d %% 100
for /f %options% %%a in ("%end%") do set end_h=%%a&set /a end_m=100%%b %% 100&set /a end_s=100%%c %% 100&set /a end_ms=100%%d %% 100

set /a hours=%end_h%-%start_h%
set /a mins=%end_m%-%start_m%
set /a secs=%end_s%-%start_s%
set /a ms=%end_ms%-%start_ms%
if %ms% lss 0 set /a secs = %secs% - 1 & set /a ms = 100%ms%
if %secs% lss 0 set /a mins = %mins% - 1 & set /a secs = 60%secs%
if %mins% lss 0 set /a hours = %hours% - 1 & set /a mins = 60%mins%
if %hours% lss 0 set /a hours = 24%hours%
if 1%ms% lss 100 set ms=0%ms%

:: Mission accomplished
set /a totalsecs = %hours%*3600 + %mins%*60 + %secs%
echo command took %hours%:%mins%:%secs%.%ms% (%totalsecs%.%ms%s total)

Output

> timeit scala-cli run hello.sc
hello
command took 0:0:0.64 (0.64s total)

> timeit scala-cli run hello.sc
hello
command took 0:0:0.63 (0.63s total)

> timeit scala-cli run hello.sc
hello
command took 0:0:0.68 (0.68s total)

> timeit scala run hello.sc
hello
command took 0:0:4.57 (4.57s total)

> timeit scala run hello.sc
hello
command took 0:0:4.57 (4.57s total)

> timeit scala run hello.sc
hello
command took 0:0:4.47 (4.47s total)

Expectation

The performance should be roughly the same

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions