Czemu git śmiga na macu 100x szybciej niż na Windowsie?

Odpowiedz Nowy wątek
2020-06-23 20:01

Rejestracja: 10 lat temu

Ostatnio: 8 minut temu

2

Zauważyłem taką zależność. Jak robię commity, albo pracuję z interactive rebase (git rebase -i), nie ważne czy z command line'a czy z GUI z IntelliJ'a, na macu po prostu klikam "Ok" i jest (albo klikam "Enter") i jest. To nawet nie jest 0.5 czy 0.25 sekund. Jak klikniecie myszką.

Ale jak pracuję w domu, na prywatnym kompie na windowsie, to commity już nie są takie szybkie, a git rebase -i wydaje mi się jakby był tym dłuższy im więcej commitów rebase'uję ;o

Nie mam takiego słabego kompa ten windows, np ssd mam 3500Mb/s, procesor i7'ka 7dmej generacji HQ, niedawno wymieniłem kości RAM z 10tki na 7ki (opóźnienia) Więc nie wiem z czego to może wynikać ;|

Czyżby sam git.exe był tak super wolniejszy niż unixowy odpowiednik?


Pozostało 580 znaków

2020-06-23 20:06

Rejestracja: 8 lat temu

Ostatnio: 58 sekund temu

0

Może jakieś problemy z siecią?
Kiedyś na Windows była znacząca różnica w wydajności pomiędzy 127.0.0.1 a localhost.


Szacuje się, że w Polsce brakuje 50 tys. programistów
Konkretnie w gicie była taka różnica? - Wibowit 2020-06-23 20:14
@vpiotr Nie, często developuje z samym gitem bez remotea, tylko po to żeby mieć kontrolę wersji. - TomRiddle 2020-06-24 00:02
W mysql jedno używa TCP, drugie unix socket i różne by default mają różne możliwości/uprawniennia ;) - alagner 2020-06-24 07:20
wszystkie operacje jakie wspomniał nie robią nic z siecią! Jedynie push pull fetch clone submodule ...wykorzystują sieć, reszta komend jest w 100% lokalna. - MarekR22 2020-06-24 11:05
@MarekR22: zwracam uwage, ze napisalem adres loopback! - vpiotr 2020-06-24 11:24
No to inaczej: reszta komend operuje wyłącznie na systemie plików. - MarekR22 2020-06-24 11:31

Pozostało 580 znaków

2020-06-23 20:09

Rejestracja: 3 lata temu

Ostatnio: 29 minut temu

4

Raczej nie problemy z siecią, bo lokalny rebase tez dlugo trwa.

A co do tematu. Ile tych commitów czy rebasów robisz dziennie żeby to mialo mieć znaczenie? Czy po prostu chcialeś nam oznajmić jaki to Mac jest fajny?


Keep calm and blame frontend
Dokładnie prawie taki sam post chciałem napisać :D - Pinek 2020-06-23 20:18
Na prywatnym lapku z Ubuntu mam to samo, więc raczej oznajmić jaki to Unix jest fajny ;D Ale nie, po prostu zauważyłem różnice i chciałem dopytać. Nie jestem żadnym fanbojem. - TomRiddle 2020-06-24 00:09

Pozostało 580 znaków

2020-06-23 20:20

Rejestracja: 9 lat temu

Ostatnio: 25 minut temu

4

Moze masz antywirusa ? :)

Pozostało 580 znaków

2020-06-23 20:46

Rejestracja: 12 lat temu

Ostatnio: 3 godziny temu

Lokalizacja: Warszawa

4

Windows Defender skanujący katalogi z repo?

Mam wyłączony całkiem XD - TomRiddle 2020-06-24 00:02

Pozostało 580 znaków

2020-06-23 21:21

Rejestracja: 3 lata temu

Ostatnio: 13 godzin temu

1

Podobny przypadek: mam na dual boocie Windowsa 10 i Minta 19. Na Linuxie KeePass otwiera bazę w ok. 2 sekundy, a na Windowsie w kilkadziesiąt (ta sama baza, wyłączony AV).

Pokaż pozostałe 4 komentarze
Zmienilem teraz ustawienia na takie same, wpisów mam kolo 70. koło 10 sekund mi się otwiera. - kzkzg 2020-06-23 21:58
70 wpisów 10 sekund? Windowsa na Attiny13 postawiłeś? W kilkadziesiąt sekund to można otworzyć i zamknąć kilka milionów plików albo wczytać kilkadziesiąt GB danych. - Krolik 2020-06-24 17:55
No tak, 70 wpisów przy 70000000 iteracji w 10 sekund. Koledze @Potat0x zajmuje to kilkadziesiąt sekund. Ale fakt, procesor mam słaby - Phenom II 3ghz. 2 rdzenie obciażone na 100% podczas tej operacji. - kzkzg 2020-06-24 18:17
U mnie i3-6100U - Potat0x 2020-06-24 18:52
Spoko, nie doczytałem, że to 7000000 iteracji. - Krolik 2020-06-24 19:03

Pozostało 580 znaków

2020-06-23 21:25
Moderator Kariera

Rejestracja: 2 lata temu

Ostatnio: 1 minuta temu

Lokalizacja: Poznań

0

@Potat0x: w zakresie zestawienia Win10 i Mint19 - mam taki sam zestaw, dual boot na laptopie. Bardzo wyraźnie widać różnice w prędkości działania AndroidStudio, odpalania emulatora i ogólnym komforcie użytkowania.


Naczelny forumowy hejter Apple

That game of life is hard to play, I'm gonna lose it anyway
The losing card I'll someday lay, So this is all I have to say
Pokaż pozostałe 11 komentarzy
@Potat0x: to naprawdę mocno zabolało :( - cerrato 2020-06-23 22:11
@cerrato: fajny ten docky, nie znałem, thx - TurkucPodjadek 2020-06-23 22:35
Też mam na lapku MATE. Ale to żaden argument, bo w sumie to nie widzę różnicy. Może poza tą że na Cinnamon czasem mi się zawieszał jakiś demon i blokował restart, na MATE nie. - vpiotr 2020-06-23 23:38
MATE akurat można łatwiej spersonalizować w zakresie paneli/przycisków na dole ekranu. Poza tym dla mnie MATE jest najlepszą opcją - robi to, co ma (oczywiście - pewnych rzeczy mu brakuje, jak np. przeciągania prawym klawiszem myszy) i do tego nie ma 1000 wodotrysków i gadżetów, które nie są właściwie do niczego potrzebne. - cerrato 2020-06-24 00:02

Pozostało 580 znaków

2020-06-23 21:31

Rejestracja: 6 lat temu

Ostatnio: 47 minut temu

2

To jeszcze może być coś ze sterownikami np. karty graficznej. Zasadniczo jednak Git był pisany na Linuxie i systemy tego typu lepiej sobie radzą z systemami plików i operacjami na nich. NTFS jest już dość stary w porównaniu do coraz nowszych ext. Git trzyma historię w plikach - w dużej ilości, więc jest to na korzyść Linuxów i Maka.

Swoją drogą - Ty piszesz w PHP to czemu pracujesz prywatnie na Windowsie? Ja pracuję z domu na Ubuntu, a mam Win 10 tylko do gier ;)

Trochę to dziwne, że MS nie opracował nowego systemu plików dla Windowsa. Po trochu najwyższa pora na to, bo jako jedyny używa czegoś starego. - hauleth 2020-06-23 21:47
wprowadził ReFS, exFAT, FATX i wspomniany niżej GVFS ale każdy do innego zastosowania. Do użytku domowego i dla zachowania maksymalnej wstecznej kompatybilności chyba po prostu stwierdzili że ten wystarczy i co najwyżej dodają nowe ficzery - obscurity 2020-06-23 22:02
Akurat teraz pisałem w front w Reacie i backend w pythonie :D To że mam libke w PHP nie znaczy że znam jeden język :D (jave i c# też znam). - TomRiddle 2020-06-24 00:10
@Pipes: Tam piszą o Radeon'ach, a ja mam nVidię - TomRiddle 2020-06-24 00:26

Pozostało 580 znaków

2020-06-23 21:45

Rejestracja: 1 rok temu

Ostatnio: 5 godzin temu

7

Git jest stworzony i zoptymalizowany dla linuksa/uniksa, bazuje na wielu małych pliczkach i wykonuje operacje stat wiele razy które są błyskawiczne na linux/unix ale niestety bardzo wolne na windowsie

Microsoft stworzył z tego powodu własny wirtualny system plików dla gita żeby przyspieszyć działanie gita w swoich własnych projektach - możesz wypróbować
https://vfsforgit.org/
https://github.com/microsoft/VFSForGit

Osobiście nie testowałem, ale wygląda obiecująco jeśli performance naprawdę Ci doskwiera - u mnie w firmie git jest mega wolny ale to nie wina windowsa tylko serwera bo to na operacjach serwerowych jest w moim przypadku stracona większość czasu. Brałem pod uwagę postawienie lokalnego klona repozytorium działającego jako proxy - są takie rozwiązania gotowe ale i tak wymagają sporo konfiguracji więc pewnie trochę jeszcze upłynie czasu zanim się podejmę próby


edytowany 2x, ostatnio: obscurity, 2020-06-23 21:51

Pozostało 580 znaków

2020-06-23 22:17

Rejestracja: 3 lata temu

Ostatnio: 31 sekund temu

Lokalizacja: U krasnoludów - pod górą

2

Coś jest na rzeczy
U mnie odpalone na tej samej maszynie
git 2.17.1
time git status
odpalone na folderze z ghc (to gruby projekt)

ubuntu na windows (wls)

real    0m2.414s
user    0m0.078s
sys     0m4.672s

Folder wyłączony w defenderze - innych antywirusów nie mam.

linux (pod vmware)

real    0m0.121s
user    0m0.076s
sys 0m0.085s

Może dlatego nawet nie przychodzi do głowy mi developowanie na windows.
Czasem sprawdzam tylko pod windows jak to jest z tym write once run anywhere ...

EDIT:
Nudziło mi się - i po 15tu restartach, kilku unistallach (1.5 godziny życia w plecy) - zadziałało wsl2

real    0m0.192s
user    0m0.046s
sys     0m0.067s

Czyli czasy porównywalne z ubuntu pod vmware. Coś tam jednak się zmienia.


jeden i pół terabajta powinno wystarczyć każdemu
edytowany 4x, ostatnio: jarekr000000, 2020-06-24 00:29
WSL v2 czy v1? Z tego co kiedyś czytałem to w WSL v2 właśnie zdecydowanie szybsze miały być operacje na plikach. - some_ONE 2020-06-23 22:19
raczej wsl1 - chciałem nawet zupdatować się do wsl2 (tak jak tutaj : https://ubuntu.com/blog/ubuntu-on-wsl-2-is-generally-available) nic z tego nie działa, życie jest za krótkie, żeby j....ć się z instalatorami pod windows - jarekr000000 2020-06-23 22:55

Pozostało 580 znaków

2020-06-23 22:30

Rejestracja: 15 lat temu

Ostatnio: 2 minuty temu

7

To teraz już wiemy czemu cała zawartość https://github.com/dotnet/coreclr/blob/master/src/gc/gc.cpp jest w jednym pliku - po to, żeby dało się to na Windowsie wersjonować :P


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.
lol, plik tesktowy i jest to big, see raw :D - Pinek 2020-06-24 08:54

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0