- Главная
- Сравнение
IDM против MDM, с точностью до миллисекунды.
Оба приложения на одном ПК, загрузка с одного тестового сервера, в чередующихся запусках. Журнал сервера показывает, когда каждый запрос поступил и когда последний байт был отправлен, поэтому ничто не зависит от показаний ни одного из приложений.
Гонка
в 1.0 разабыстрее
Воспроизведено в реальном времени по медианным значениям.
Быстрее в любом сценарии.
Во сколько раз быстрее MDM завершил работу, от команды до готового файла. Усы показывают 95% интервал отношения; шкала логарифмическая.
480 соединений против 2.
Сервер, который позволяет два соединения одновременно. Каждый квадрат — это одно соединение, которое он видел в типичном запуске.
Узнает лимит из ответа сервера, придерживается его и запоминает для следующего раза. Завершено за 12.6 с.
Повторял попытки около 250 раз в секунду, несмотря на отказы. Завершено за 15.9 с.
Каждый запуск — это точка.
Семь загрузок, каждая запущена как минимум семь раз обоими приложениями. Столбец — это средняя половина запусков, линия — медиана.
IDM требуется около трех секунд, чтобы принять загрузку из командной строки, прежде чем он что-либо отправит; загрузки, перехваченные расширением браузера, пропускают этот шаг. Вот почему «Передача» — это честный взгляд на работу движка. «От начала до конца» также здесь.
Куда уходит время
Медиана запуска (от команды до первого запроса), передачи и завершения для каждого приложения, по сценарию.
Что это стоит компьютеру
Медианное время ЦП, использованное каждым приложением во время выполнения, и пиковая память. MDM отрисовывает свое окно с помощью ГП, что занимает больше памяти, чем классические элементы управления Windows в IDM.
Все числа
| Сценарий | Приложение | n | От начала до конца, медиана (IQR) | 95% ДИ медианы | Передача | Запуск | Соединения | Запросы | ЦП | Пиковая память | p |
|---|
Отчет
Медианы от начала до конца с межквартильными диапазонами, отношение с 95% интервалом и критерий Манна–Уитни, как их пишет tools/bench/report.py.
| сценарий | Медиана IDM, мс (IQR) | Медиана MDM, мс (IQR) | IDM / MDM (95% ДИ) | p (Манн-Уитни) |
|---|---|---|---|---|
| 1 ГиБ по быстрому локальному каналу | 5456 (5393–5496) | 1009 (944–1028) | 5.41× (5.21–5.89) | 0.000583 |
| 100 МиБ, 2 МБ/с на соединение | 10234 (10221–10284) | 6319 (6317–6329) | 1.62× (1.61–1.63) | 0.000583 |
| 100 МиБ, задержка 150 мс, 4 МБ/с на соединение | 7622 (7497–7863) | 3844 (3842–3894) | 1.98× (1.92–2.05) | 0.000583 |
| 32 МиБ, одно соединение в трёх обходах по 128 КБ/с | 7213 (6960–7256) | 3432 (3416–3840) | 2.10× (1.81–2.13) | 0.000583 |
| 50 МиБ, сервер разрешает 2 соединения, по 2 МБ/с каждое | 15864 (15810–15933) | 12568 (12563–12570) | 1.26× (1.25–1.27) | 0.000583 |
| 50 МиБ, каждое второе соединение обрывается после 2 МиБ, 4 МБ/с | 5428 (5387–5466) | 1647 (1645–1660) | 3.30× (3.24–3.34) | 0.000583 |
| Файл 256 КиБ по быстрому локальному каналу | 3141 (3130–3164) | 30 (28–31) | 105.90× (99.96–112.75) | 3.39e-06 |
13th Gen Intel(R) Core(TM) i5-13400F, 63.8 GB RAM, Windows-11-10.0.26200-SP0. labserver (этот репозиторий), 127.0.0.1:8097, сгенерированный контент. Оба по умолчанию: 8 соединений.
Как проводились измерения
- Сервер. Лабораторный сервер из этого репозитория, на 127.0.0.1, предоставляющий сгенерированный контент. Он регулирует, задерживает, отклоняет или обрывает соединения в соответствии со сценарием и регистрирует каждый запрос с миллисекундным временем начала и окончания.
- Клиенты. IDM и MDM, оба с настройками по умолчанию (8 соединений), каждому загрузка предоставлялась через одну и ту же документированную командную строку:
/d URL /p folder /f name /n. Оба сохраняют на диск, где находится временная папка IDM, поэтому ни один не тратит время на копирование между дисками. - Измерение времени. От начала до конца: от выдачи команды до готового файла под его окончательным именем, опрос каждую миллисекунду по монотонным часам. MDM переименовывает готовый файл на место; IDM создает окончательный файл заранее и заполняет его, поэтому для IDM учитывается момент достижения полного размера. Передача: от первого запроса сервера до последнего байта, считывается по тем же часам через калибровочный запрос перед каждым запуском.
- Справедливость. Приложения чередуются, IDM первым в четных запусках и MDM первым в нечетных, так что дрейф на машине затрагивает оба. Один "разогревочный" запуск каждого отбрасывается. Неудачные запуски учитываются, а не отбрасываются. Перед каждым запуском система ожидает, пока "петля" не станет тихой: против сервера, который отказывает в дополнительных соединениях, IDM повторяет попытки около 250 раз в секунду, оставляя тысячи закрытых сокетов на полминуты; без ожидания, любое приложение, запущенное следующим, измерялось бы с учетом этого отставания.
- Статистика. Медианы с межквартильными диапазонами, 95% доверительные интервалы бутстрапа (10 000 повторных выборок) для каждой медианы и для отношения медиан, а также двусторонний U-тест Манна-Уитни.
- Ограничения. Петлевое соединение не имеет реального расстояния или потери пакетов; ошибки заменяют их. Результаты получены на одной машине. Запустите это сами:
python tools/bench/bench.py, затемpython tools/bench/report.py.
Убедитесь сами: это бесплатно.
Загрузить Mister Download Manager