- Strona główna
- Benchmark
IDM vs GDM, timed to the millisecond.
Obie aplikacje na tym samym komputerze, pobierające dane z tego samego serwera testowego, w naprzemiennych uruchomieniach. Dziennik serwera wskazuje, kiedy każde żądanie dotarło i kiedy ostatni bajt został wysłany, więc nic nie zależy od deklaracji żadnej z aplikacji.
Wyścig
1.0×szybciej
Odtwarzane w czasie rzeczywistym na podstawie median.
Szybciej w każdym scenariuszu.
How many times faster GDM finished, from command to finished file. The whisker is the 95% interval of the ratio; the scale is logarithmic.
480 połączeń kontra 2.
Serwer, który pozwala na dwa połączenia jednocześnie. Każdy kwadrat to jedno połączenie, które widział w typowym uruchomieniu.
Uczy się limitu z odpowiedzi serwera, przestrzega go i zapamiętuje na następny raz. Zakończono w 12.6 s.
Ponawiano próby około 250 razy na sekundę, mimo odmów. Zakończono w 15,9 s.
Każde uruchomienie to kropka.
Siedem pobrań, każde uruchomione co najmniej siedem razy w obu aplikacjach. Słupek pokazuje środkową połowę wyników, a linia — medianę.
IDM potrzebuje około trzech sekund na przyjęcie pobierania z wiersza poleceń, zanim cokolwiek wyśle; pobrania przechwycone przez jego rozszerzenie przeglądarki pomijają ten krok. Dlatego „Transfer” to uczciwy widok porównujący silniki. „Od początku do końca” jest również tutaj.
Na co idzie czas
Mediana uruchomienia (od polecenia do pierwszego żądania), transferu i zakończenia każdej aplikacji, dla każdego scenariusza.
Jakie obciążenie powoduje
Median CPU time each app used during a run, and its peak memory. GDM draws its window with the GPU, which takes more memory than IDM's classic Windows controls.
Wszystkie liczby
| Scenariusz | Aplikacja | n | Od początku do końca, mediana (IQR) | 95% przedział ufności mediany | Transfer | Uruchomienie | Połączenia | Żądania | CPU | Szczytowe zużycie pamięci | p |
|---|
Raport
Mediany od początku do końca z zakresami międzykwartylowymi, stosunek z 95% przedziałem ufności oraz test Manna-Whitneya, tak jak pisze je tools/bench/report.py.
| scenariusz | Mediana IDM w ms (IQR) | GDM median ms (IQR) | IDM / GDM (95% CI) | p (Manna-Whitneya) |
|---|---|---|---|---|
| 1 GiB przez szybkie łącze lokalne | 5456 (5393–5496) | 1009 (944–1028) | 5.41× (5.21–5.89) | 0.000583 |
| 100 MiB, 2 MB/s na połączenie | 10234 (10221–10284) | 6319 (6317–6329) | 1.62× (1.61–1.63) | 0.000583 |
| 100 MiB, 150 ms opóźnienia, 4 MB/s na połączenie | 7622 (7497–7863) | 3844 (3842–3894) | 1.98× (1.92–2.05) | 0.000583 |
| 32 MiB, jedno połączenie w trzech przejściach przy 128 KB/s | 7213 (6960–7256) | 3432 (3416–3840) | 2.10× (1.81–2.13) | 0.000583 |
| 50 MiB, serwer zezwala na 2 połączenia, po 2 MB/s każde | 15864 (15810–15933) | 12568 (12563–12570) | 1.26× (1.25–1.27) | 0.000583 |
| 50 MiB, co drugie połączenie przerwane po 2 MiB, 4 MB/s | 5428 (5387–5466) | 1647 (1645–1660) | 3.30× (3.24–3.34) | 0.000583 |
| Plik 256 KiB przez szybkie łącze lokalne | 3141 (3130–3164) | 30 (28–31) | 105.90× (99.96–112.75) | 3.39e-06 |
13. generacja Intel(R) Core(TM) i5-13400F, 63.8 GB RAM, Windows-11-10.0.26200-SP0. labserver (to repozytorium), 127.0.0.1:8097, generowana zawartość. oba domyślne: 8 połączeń.
Jak mierzono
- Serwer. Serwer laboratoryjny z tego repozytorium, na 127.0.0.1, udostępniający generowaną zawartość. Dławienie, opóźnianie, odrzucanie lub przerywanie połączeń zgodnie ze scenariuszem, oraz logowanie każdego żądania z milisekundowymi czasami rozpoczęcia i zakończenia.
- Clients. IDM and GDM, both at default settings (8 connections), each given the download through the same documented command line:
/d URL /p folder /f name /n. Both save to the drive that holds IDM's temporary folder, so neither pays a cross-drive copy. - Timing. End to end: from issuing the command to the finished file under its final name, polled every millisecond on a monotonic clock. GDM renames its finished file into place; IDM creates the final file early and fills it, so for IDM the moment it reaches full size counts. Transfer: the server's first request to its last byte, read on the same clock through a calibration request before each run.
- Fairness. The apps alternate, IDM first on even runs and GDM first on odd ones, so drift on the machine hits both. One warm-up run each is discarded. Failed runs are counted, not dropped. Before every run the harness waits until the loopback is quiet: against a server that refuses extra connections IDM retries about 250 times a second, leaving thousands of closed sockets for half a minute; without the wait, whichever app ran next was timed on that backlog.
- Statystyki. Mediany z zakresami międzykwartylowymi, 95% przedziały ufności bootstrap (10 000 ponownych próbek) dla każdej mediany i dla stosunku median, oraz dwustronny test U Manna–Whitneya.
- Ograniczenia. Łącze zwrotne nie ma rzeczywistej odległości ani utraty pakietów; błędy zastępują je. Wyniki pochodzą z jednej maszyny. Uruchom to sam:
python tools/bench/bench.py, a następniepython tools/bench/report.py.
Przekonaj się sam: to nic nie kosztuje.
Download GolinksPRO Download Manager