LINUX.ORG.RU
ФорумTalks

txz в слаке


0

0

Коэффициент сжатия это конечно круто, но.... блин, ну почему же так медленно-то? разница чуть ли не в два-три раза на распаковке (

root@slackhome:/home/ndtimofeev# time installpkg slackware64-current/slackware64-current/slackware64/l/qt-r964497-x86_64-1.txz
Verifying package qt-r964497-x86_64-1.txz.
Installing package qt-r964497-x86_64-1.txz [ADD]:
PACKAGE DESCRIPTION:
# Qt (a multi-platform C++ graphical user interface toolkit)
#
# Qt is a complete and well-developed object-oriented framework for
# developing graphical user interface (GUI) applications using C++.
#
Executing install script for qt-r964497-x86_64-1.txz.
Package qt-r964497-x86_64-1.txz installed.


real    0m18.816s
user    0m13.077s
sys     0m4.400s

root@slackhome:/home/ndtimofeev# mkdir test
root@slackhome:/home/ndtimofeev# tar xf slackware64-current/slackware64-current/slackware64/l/qt-r964497-x86_64-1.txz -C test/
root@slackhome:/home/ndtimofeev# cd test
root@slackhome:/home/ndtimofeev/test# makepkg -c n -l y ../qt-r964497-x86_64-1.tgz > /dev/null
root@slackhome:/home/ndtimofeev/test# time installpkg ../qt-r964497-x86_64-1.tgz
Verifying package qt-r964497-x86_64-1.tgz.
Installing package qt-r964497-x86_64-1.tgz:
PACKAGE DESCRIPTION:
# Qt (a multi-platform C++ graphical user interface toolkit)
#
# Qt is a complete and well-developed object-oriented framework for
# developing graphical user interface (GUI) applications using C++.
#
Executing install script for qt-r964497-x86_64-1.tgz.
Package qt-r964497-x86_64-1.tgz installed.


real    0m18.998s
user    0m7.780s
sys     0m4.156s

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

Я тоже так думал... но, видимо, лишь относительно bz2

aix27249
() автор топика
Ответ на: комментарий от UserUnknown

Вообще, по идее - умеет: у xz есть опция --threads=N, а в git-версии даже есть автоопределение количества ядер на проце. Однако заставить это заиспользовать мне так и не удалось: то ли это работает лишь на очень больших архивах (может быть, ограничения из-за алгоритма), то ли просто еще не доделали - глубоко в сорцы пока залезал.

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

>хм.... очень интересные результаты. Пойду копать и искать что я делаю не так

На всякий случай можно померяться пенисайзами:
root@slackhome:/home/ndtimofeev/test# cat /proc/cpuinfo
processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 15
model           : 47
model name      : AMD Athlon(tm) 64 Processor 3200+
stepping        : 2
cpu MHz         : 2010.344
cache size      : 512 KB
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt lm 3dnowext 3dnow up rep_good pni lahf_lm
bogomips        : 4020.68
TLB size        : 1024 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp tm stc

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

Ну у меня близко по производительности, только ядра два и 32-битный (CoreDuo 2Ghz

processor       : 0                                                             
vendor_id       : GenuineIntel                                                  
cpu family      : 6                                                             
model           : 14                                                            
model name      : Genuine Intel(R) CPU            1500  @ 2.00GHz               
stepping        : 8                                                             
cpu MHz         : 1997.254                                                      
cache size      : 2048 KB                                                       
physical id     : 0                                                             
siblings        : 2                                                             
core id         : 0                                                             
cpu cores       : 2                                                             
apicid          : 0                                                             
initial apicid  : 0                                                             
fdiv_bug        : no                                                            
hlt_bug         : no                                                            
f00f_bug        : no                                                            
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 6
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx constant_tsc bts pni monitor vmx est tm2 xtpr pdcm
bogomips        : 3996.94
clflush size    : 64
power management:

aix27249
() автор топика
Ответ на: комментарий от KblCb

Кажется я рано навел панику. Поясню:

первый тест, от которого я начал негодовать, заключался в примерно следующем (действия производились над 300-мегабайтным пакетом):

1) извлечь из архива один файл, распарсить 2) сделать tar tf и получить список файлов в пакете 3) распаковать

Так ставятся пакеты в mopslinux, если сам пакет лежит на локальном диске. Разница была примерно в 2.5 раза.

Теперь я собрал 13rc1 в исошник и подсунул стандартному мопсовому инсталлятору, и скорость установки почему-то стала выше чем с tgz, причем явно не в пределах погрешности (хотя для очистки совести попозже прогоню еще раз тест с теми же пакетами но в tgz).

Выходит, что таки быстро оно работает :)

Осталось понять лишь, почему в первом случае образовалось такое падение производительности...

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

>1) извлечь из архива один файл, распарсить 2) сделать tar tf и получить список файлов в пакете 3) распаковать

Пакетный менеджер пишешь?

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

Именно про него. Велосипед-велосипедом конечно, но когда всё это начиналось - нормальных аналогов в общем-то не было, да и сейчас пожалуй нету (если ошибаюсь - ткните пальцем, с удовольствием посмотрю). Идеального менеджера пакетов конечно не получилось, но в целом достаточно удобно и функционально :)

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

root@slackhost:~# time installpkg qt-r964497-x86_64-1.txz
Verifying package qt-r964497-x86_64-1.txz.
Installing package qt-r964497-x86_64-1.txz:
PACKAGE DESCRIPTION:
# Qt (a multi-platform C++ graphical user interface toolkit)
#
# Qt is a complete and well-developed object-oriented framework for
# developing graphical user interface (GUI) applications using C++.
#
Executing install script for qt-r964497-x86_64-1.txz.
Package qt-r964497-x86_64-1.txz installed.

real    1m42.770s
user    1m18.181s
sys     0m20.289s

root@slackhost:~# time installpkg qt-r964497-x86_64-1.tgz
Verifying package qt-r964497-x86_64-1.tgz.
Installing package qt-r964497-x86_64-1.tgz:
PACKAGE DESCRIPTION:
# Qt (a multi-platform C++ graphical user interface toolkit)
#
# Qt is a complete and well-developed object-oriented framework for
# developing graphical user interface (GUI) applications using C++.
#
Executing install script for qt-r964497-x86_64-1.tgz.
Package qt-r964497-x86_64-1.tgz installed.


real    0m54.951s
user    0m29.774s
sys     0m19.597s

root@slackhost:~# cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 8
model name      : Celeron (Coppermine)
stepping        : 3
cpu MHz         : 668.176
cache size      : 128 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 2
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov pat pse36 mmx fxsr sse up
bogomips        : 1336.35
clflush size    : 32
power management:

Хм...

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

А вот это дейстивтельно хмм...

Те самые два раза про которые я говорил... интересно что это такое... 64 бита? интел?

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

Проделал всё тоже самое на том же атлоне в 32-битной слаке. Итого: у xz результат тот же, у gz в полтора раза быстрее.

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

Почитай новость от Fri May 8 18:49:03 CDT 2009. Выжимка: "The size of the main package tree in /slackware has been reduced 1.9GB to 1.4GB by converting most packages to .txz"

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

Ну так спорт то кто? Просто на 32-битных процессорах gz ощутимо быстрее. Причём меня даже больше заинтересовало что на _64 не xz работает быстрее, а gz медленнее.

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

Ну может, lzma под 64 бита больше оптимизирован, что скорее всего.

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

>Именно про него. Велосипед-велосипедом конечно, но когда всё это начиналось - нормальных аналогов в общем-то не было, да и сейчас пожалуй нету (если ошибаюсь - ткните пальцем, с удовольствием посмотрю). Идеального менеджера пакетов конечно не получилось, но в целом достаточно удобно и функционально :)

Хотел поглядеть mopslinux (последний раз видел его когда-то давно, когда таскал оттуда кириллические keymap'ы). Что-то у меня последняя beta в последнем virtualbox'е не поднялась. Проблема: при загрузке текст лога выводится поверх старого текста и получается каша. Хост: каррент64 слаки.

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