Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Windows checkout abysmally slow compared to Linux #1293

Open
maxgerhardt opened this issue Apr 15, 2023 · 7 comments
Open

Windows checkout abysmally slow compared to Linux #1293

maxgerhardt opened this issue Apr 15, 2023 · 7 comments

Comments

@maxgerhardt
Copy link

maxgerhardt commented Apr 15, 2023

A simple

    steps:
    - uses: actions/checkout@v3

Is taking 44 seconds on Windows Server 2022 (windows-latest), while it takes 1 second on Linux (ubuntu-latest). That's 44 times slower.

See run here.

Something can't be right here. It's taking an extraordinarily long time between the start and the first "Syncing repository" message and a whopping 5 seconds to do a git init which should be almost instant.

Since #1246 got merged and I am specifying checkout@v3 to get the latest v3 version, it should not be that issue. #1186 does not apply because it's about Windows Server 2019.

Windows:
grafik

Linux:
grafik

@fhammerl
Copy link
Contributor

@maxgerhardt Thanks for reporting this. Is checkout on windows-latest this slow every time or is it intermittent?
I forked your repo and ran the same workflow, but checkout ran under 10s consistently.

@maxgerhardt
Copy link
Author

I had two runs at the time of report and they were both 1m53s each (so both slow). I will rerun now.

@maxgerhardt
Copy link
Author

The first 2 runs were <10 seconds, the third run again took 1m25s for the checkout :(

image

https://github.com/Community-PIO-CH32V/ch32v003fun/actions/runs/4707304404/jobs/8377094057

@coderkevdev
Copy link

I am experiencing this as well. Moved our self-hosted Windows runner to an EC2 from an AZR VM, and the checkout went from ~4s to 1m30s.
The EC2 runner instance checkout seems to be having an issue checking the version, so it falls back to the REST API: wf_new.txt
Where the previous AZR runner instance sees the version and uses git directly: wf_old.txt

Both machines have git 2.38 installed and visible in the path:

C:>git --version
git version 2.38.1.windows.1

@wojpawlik
Copy link

@PureKrome
Copy link

Not sure if this is related .. but .. windows machines show woeful I/O compared to their linux versions. I'm not suggesting this is an OS issue but maybe the infrastructure/hardware/I/O allocated to windows is subpar compared to those allocated to linux. (not sure about mac images).

this was detected when comparing nuget restore command (aka. download all the packages that this application requires). On windows images is was substantially slower.

So maybe that's the case here, also? It's an I/O / hardware problem?

@Glitch31415
Copy link

Glitch31415 commented Jul 28, 2024

i don't know if it's related, but my project uses a lot of git-related actions often, and it works fine in linux but when i tried to move it over to a windows pc it was unbearably slow and unable to do anything, no matter the hardware.

something i noticed, though: windows running in a vm on a linux host is perfectly fine

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants