LINUX.ORG.RU

gzip vs pigz. Intel HT vs AMD bulldozer modules.

 , , , ,


0

1

Привет. Хочу попросить сделать простенький тест.

Берем какую-нибудь директорию samples с ~1Gb файлов (точный размер не принципиален, имхо).

Далее:

$ time ( tar cf - samples | gzip > samples.1.tar.gz )

real	0m47.366s  # <----- Это значение T1
user	0m44.179s
sys	0m2.272s

$ time ( tar cf - samples | pigz > samples.2.tar.gz )

real	0m24.721s  # <----- Это значение T2
user	1m14.785s
sys	0m2.578s

На моем Intel Core i3 370M @ 2.40GHz с Hyper-Threading (4 потока) отношение T2 / T1 ~ 0.5, т.е. по сути, увеличение производительности в 2 раза, а не в 4.

Прошу особенно проверить владельцев модульных процессоров с архитектурами Piledriver/Bulldozer, интересно будет ли увеличение производительности в pigz кратно количеству ядрев или модулей. Спасибо.

Deleted

1. файлы надо класть в раму (tmpfs)
2. дропать кэши перед каждым проходом
тогда о бенче только может идти речь, а здесь вполне возможен упор в носитель

megabaks ★★★★
()

И? С чего там должно быть 4x?

wakuwaku ★★★★
()

gzip - это алиас для pigz
потому так:

 time $( tar cf - * | gzip > samples.1.tar.gz )

real    0m24.730s
user    1m33.351s
sys     0m0.749s
time $( tar cf - * | \gzip > samples.1.tar.gz )

real    1m7.042s
user    1m6.387s
sys     0m1.342s
сброс кэшей перед кадым проходом
дира в раме - скорость 1.3гига/сек (tmpfs)
4 реальных ядра на Q9400 (разгон 2.6 -> 3.2)

megabaks ★★★★
()
Ответ на: комментарий от megabaks

Задротство. Если б это был всепоглощающий мегабенч, официально угнетающий интел/амд и вызывающий батхерт... А так, тьфу, две команды вбить и все дела. Я сам прогнал не раз, и на маленьких данных (десятки мегабайт), которые наверняка помещаются в дефолтные кеши линукса. У меня ~0.5 получается время с pigz на 2-х ядрах/4-х потоках.

Deleted
()

На amd-FX8350 практически линейный рост скорости упаковки pigz-ом при увеличении количества ядер от 1 до 8.

King_Carlo ★★★★★
()
Ответ на: комментарий от megabaks

Воот. Спасибо. Да, все по науке у тебя. Ну, а я получаю кусок полезной инфы.

Deleted
()
Ответ на: комментарий от megabaks

Твой здравый смысл не противоречит моим наблюдениям. Я считаю, что в данном случае сброс кешей и tmpfs - это влияния меньшего порядка, чем то, что я пытаюсь померить. Инструкция с большим количество шагов привлечет меньше внимания. Профессионалы же сделают так, как велит здравый смысл, и сброс кешей и tmpfs это гуд, и я учел это. Спасибо. Читающие ветку дальше, чем первый пост, и не знающие про кеши и tmpfs теперь просвятятся, да )

Deleted
()

На моем Intel Core i3 370M @ 2.40GHz с Hyper-Threading (4 потока) отношение T2 / T1 ~ 0.5, т.е. по сути, увеличение производительности в 2 раза, а не в 4.

где тег «я познаю мир»?

emulek
()
Ответ на: комментарий от emulek

Перечисли задачи, которые масштабируются на HT, и которые не масштабируются, пожалуйста. [я познаю мир]

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)

Берем какую-нибудь директорию samples с ~1Gb файлов (точный размер не принципиален, имхо).

размер да, не принципиален. Принципиален размер окна. Если каждый из потоков пожрёт M байт, и эти M везут в кеш внутри процессора, то выигрыш будет примерно такой, как число этих кешей. Видать у тебя по 1 кешу на ядро(а не на поток HT), и окно влезло в кеш. Вот у тебя вдвое быстрее.

emulek
()
Ответ на: комментарий от Deleted

Перечисли задачи, которые масштабируются на HT, и которые не масштабируются, пожалуйста.

ну там где чисто вычисления, те может и масштабируются. Зависит от CPU. Вроде как биткоины масштабируются(хотя толку от этого всё равно никакого, сам понимаешь).

HT в десктопе полезно на iP4, т.к. сильно отзывчивость повышает старых десктопов. Зачем оно тебе — я не знаю.

emulek
()

gzip

real 1m19.387s

pigz

real 0m14.443s

cpu

AMD FX(tm)-8320 Eight-Core Processor

Не в 8 раз, потому что Turbo Core. Кэши сбрасывал. Данных гиг с хвостиком.

redgremlin ★★★★★
()
Ответ на: комментарий от emulek

Зачем оно тебе — я не знаю.

Мне HT не нужен. Мне интересно, как pigz масштабируются на разных процессорах-архитектурах. Пока на счет intel подтверждаются предположения, что ht для pigz не годен, нужны реальные ядра.

Deleted
()
Ответ на: комментарий от Deleted

Пока на счет intel подтверждаются предположения, что ht для pigz не годен, нужны реальные ядра.

ну это как-бы следует из того, что я писал выше.

И да, про AMD я не в курсе.

emulek
()
[roman@debian:~]$ time ( tar cf - Video | gzip > samples.1.tar.gz )

real    1m20.897s
user    1m0.144s
sys     0m3.084s
[roman@debian:~]$ time ( tar cf - Video | pigz > samples.2.tar.gz )

real    0m33.070s
user    1m6.740s
sys     0m2.920s

intel core i7. Ускорение в 3 раза, вместо 4х. ssd был узким местом.

roman77 ★★★★★
()
Последнее исправление: roman77 (всего исправлений: 2)
Ответ на: комментарий от Deleted

что ht для pigz не годен, нужны реальные ядра.

Дык зависит от того, во что все упирается. В цпу, или в hdd/ssd

roman77 ★★★★★
()
Ответ на: комментарий от roman77

Спасибо.

i7 какой? Бывают двуядерные (мобильные которые). Косвенно могу судить, что у тебя 4 ядра.

Да, может упираться в hdd, это понятно... Полезен ли HT для pigz интересует меня.

Deleted
()

turbo corn vs hype threading

anonymous
()
Ответ на: комментарий от pony

Лалка поселковая он, чего непонятного.

anonymous
()
Ответ на: комментарий от pony

- Signal the end of options, cause all remaining args to be assigned to the positional parameters.

megabaks ★★★★
()
22 декабря 2014 г.
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.