Линус Торвальдс анонсировал (https://lkml.org/lkml/2011/3/14/508) релиз Linux-ядра 2.6.38 (http://www.kernel.org/), в который вошли наработки по увеличению интерактивности выполнения десктоп-задач, значительно повышена масштабируемость VFS, в Btrfs обеспечена поддержка LZO-сжатия и создания доступных только на чтение снапшотов, интегрированы HugePage-патчи, добавлена поддержка процессоров AMD Fusion, добавлены новые драйверы и обеспечена поддержка mesh-протокола B.A.T.M.A.N.
В новую версию принято 10413 исправлений от 1349 разработчиков, размер патча - 49 Мб (добавлено 9295 тыс. строк кода, удалено - 9159 тыс. строк). Около 38% всех представленных в 2.6.38 изменений связаны с драйверами устройств, примерно 24% изменений имеют отношение к обновлению кода специфичного для аппаратных архитектур, 12% связано с сетевым стеком, 6% - файловыми системами и 4% c внутренними подсистемами ядра.Наиболее интересные новшества (http://kernelnewbies.org/Linux_2_6_38) ядра 2.6.38:
...
URL: https://lkml.org/lkml/2011/3/14/508
Новость: https://www.opennet.ru/opennews/art.shtml?num=29919
Всех с Международным денем защиты тюленей :)---
> Например, приложение может выделить через функцию mmap большой блок памяти,
> но записать в него всего 1 байт данных. В этом случае, с патчем будет выделена
> страница памяти размером 2 Мб, а не 4 Кб как в ситуации без патча.Чтоб такого не было нужно собрать ядро с опцией TRANSPARENT_HUGEPAGE_MADVISE,
а где нужно использовать madvise(MADV_HUGEPAGE), например через свой huge_malloc()
Кстати, принадлежность той или иной автогруппе (хорошо звучит),
можно узнать через cat /proc/$PID/autogroup, где $PID - номер процесса,
например:группа родительского шелла, в том числе и группа текущего процесса.
# cat /proc/$$/autogroup
/autogroup-33 nice 0всего групп
# cat /proc/*/autogroup | sort -u
/autogroup-0 nice 0
/autogroup-1 nice 0
/autogroup-2 nice 0
/autogroup-3 nice 0
....Как видите второй параметр вывода - это nice всей группы. И его можно менять :)
# echo -5 > /proc/$$/autogroup
# cat /proc/$$/autogroup
/autogroup-33 nice -5---
Ускоряем фаерфокс :)# echo -15 > /proc/`pidof firefox-bin`/autogroup;
---
P.S.* Менять принадлежность к другой автогруппе, запрещено.
Хотя патч есть, но Торвальдс сказал не надо нам такое.* Изменение nice в автогруппе у любого процесса,
автоматически меняет это значение у всех процессов в группе.* Nice у автогруппы не влияет на реальный nice у процесса.
То есть, можно сказать, появился новый параметр в планировании
выполнения процесса, помимо nice и priority.
Можно подробнее и слегка для нуба? :)
Так достаточно мне будет в конфиге заюзать TRANSPARENT_HUGEPAGE_MADVISE ?
Я просто не совсем понял твою вторую строку "а где нужно использовать madvise..."Спасибо!
Это я, Шурик (TheExplorer).
> Можно подробнее и слегка для нуба? :)
> Так достаточно мне будет в конфиге заюзать TRANSPARENT_HUGEPAGE_MADVISE ?
> Я просто не совсем понял твою вторую строку "а где нужно использовать
> madvise..."Вместо malloc() юзать posix_memalign () + madvise ();
/*
* Transparent Huge Pages Test
* (l) 2011 Copyleft by Pavlinux.
*/#include <stdio.h>
#include <stdlib.h> /* malloc/free */
#include <string.h> /* memset */
#include <unistd.h> /* sysconf */
#include <sys/mman.h> /* madvise */
#include <sys/time.h> /* time funcs */int
main (void)
{struct timeval before, after;
void *mem;
void *posixmem;
void *hugemem;
unsigned long long SIZE;
size_t i;size_t page = (size_t) sysconf (_SC_PAGESIZE);
for (i = 16; i < 21; i++) /* от 128Mb до 2Gb */
{
SIZE = (page * 1024 * (2 << i))/page; /* подровняем */
printf ("\nSIZE: %Lu\n", SIZE);gettimeofday (&after, NULL); // старт.
mem = malloc (SIZE); // просто malloc
memset (mem, 0x0a, SIZE);
memset (mem, 0x05, SIZE);
memset (mem, 0x0f, SIZE);
memset (mem, 0xaa, SIZE);
memset (mem, 0x55, SIZE);
memset (mem, 0xff, SIZE);
gettimeofday (&before, NULL); // стоп.printf ("malloc--------: %u.%u\n", before.tv_sec - after.tv_sec,
before.tv_usec - after.tv_usec); // старт минус стоп.
free (mem);
/* ---------------------- */
gettimeofday(&after, NULL);
posix_memalign((void **)&posixmem, page, SIZE); // к границам страницы
memset (posixmem, 0x0a, SIZE);
memset (posixmem, 0x05, SIZE);
memset (posixmem, 0x0f, SIZE);
memset (posixmem, 0xaa, SIZE);
memset (posixmem, 0x55, SIZE);
memset (posixmem, 0xff, SIZE);
gettimeofday (&before, NULL);printf ("posix---------: %u.%u\n", before.tv_sec - after.tv_sec,
before.tv_usec - after.tv_usec);
free (posixmem);
/* ---------------------- */
gettimeofday(&after, NULL);
posix_memalign((void **)&hugemem, page, SIZE);
madvise (hugemem, SIZE, MADV_HUGEPAGE); /* нью-фенька */
memset (hugemem, 0x0a, SIZE);
memset (hugemem, 0x05, SIZE);
memset (hugemem, 0x0f, SIZE);
memset (hugemem, 0xaa, SIZE);
memset (hugemem, 0x55, SIZE);
memset (hugemem, 0xff, SIZE);
gettimeofday (&before, NULL);printf ("hugemem : %u.%u\n", before.tv_sec - after.tv_sec,
before.tv_usec - after.tv_usec);
free (hugemem);
}
return 0;
}
во втором блоке - таки memset ( hugemem, .... ); ??
> posix_memalign ((void **) &hugemem, page, SIZE);
> madvise (hugemem, SIZE, MADV_HUGEPAGE);
> gettimeofday (&after, NULL);
> memset (mem, 0x0a, SIZE);
> memset (mem, 0x05, SIZE);
> memset (mem, 0x0f, SIZE);
> memset (mem, 0xaa, SIZE);
> memset (mem, 0x55, SIZE);
> memset (mem, 0xff, SIZE);
> во втором блоке - таки memset ( hugemem, .... );угу. fixed.
Ясно. Совсем ничего не ясно :)) Это патч или это скрипт где-то должен запускаться?
> Ясно. Совсем ничего не ясно :)) Это патч или это скрипт где-то
> должен запускаться?int main (void) {...
Это программка на С, просто для проверки работы TRANSPARENT_HUGEPAGE
> Ясно. Совсем ничего не ясно :)) Это патч или это скриптНе, это просто FAIL. Ваш, кстати. Это ж надо - программу на си не опознать. Что за деградантство?
Просто проходи мимо... Я не программер.
> Просто проходи мимо... Я не программер.Странный человек. Хочет понять особенности работы памяти и что оно даст/что будет плохо на достатотчно низком уровне, не будучи програмером или продвинутым админом, способным понять сие на примере павлиньего кода :). Это примерно как хотеть понять принцип работы микроволновки, будучи неандертальцем.
> Это примерно как хотеть понять принцип работы микроволновки, будучи неандертальцем.Чё злой такой, опять не закусывал?! :)
Там, вроде, нехило разогнали intel-графику по слухам с фороникса.
это я завтра потестирую на работе. на большой рост произвадительности не расчитываю - карточки сами по себе слабоватые
Месу 11ю не забудь.
чёрт, в 11.04 меса 7.10.1, а не 11 (( хоть и ядро 38 :(
дадаад! 200 lines patch!
вот за это я и люблю 38е ядро.
мог бы накатить патч и на 37 ядро - месяц бы уже с ним жил
У меня с ядра 2.6.37.2 он Kernel Panic'и выдавал.
Хм, у меня тоже 2.6.37 в кору падало на дебиане 6, поэтому откатился на ядро из репов.
2.6.38 на Debian 6 уже день отработало без приключений.
> 2.6.38 на Debian 6 уже день отработало без приключений.Ну недельки две-три если протянет - отпиши, тоже обновлюсь :)
> Ну недельки две-три если протянет - отпиши, тоже обновлюсь :)Месяц уже на сборках 2.6.38 (убунта 11.04). Вполне годное ядро.
С утра сижу, полёт нормальный)
ушел компилять
Хм, а я просто обновил http://packages.altlinux.org/kernel-image-pure-emerald :)Как и на Колиных сборках rc, полёт нормальный.
И ни слова о PageFlipping.
Это было 2 года назад - http://lxr.linux.no/#linux+v2.6.33/include/drm/drm_mode.h#L338
Я про Ati.
На месте ваш аккрадеон :)
http://lxr.linux.no/#linux+v2.6.38/drivers/gpu/drm/radeon/ra...
Ну да, я думаю стоит упомянуть в новости, потому что PageFlipping серьёзно повышает FPS в играх.
В английской новости тоже ни слова.
pageflippig это к x.org
> pageflippig это к x.orgЭто и к ядру.
http://www.x.org/wiki/RadeonFeature
> Kernel 2.6.38 required
когда ждать в Debian testing?
http://packages.debian.org/search?suite=default§ion=all&...Видишь там на горе рассвистелся вдруг рак?
Да и дождь вдруг пошёл, прям в четверг, как дурак?
deb http://aptosid.com/debian/ sid main fix.main
>Для активации режима автоматической группировки задач в /proc/sys/kernel/sched_autogroup_enabled необходимо записать 1;и все ???
больше ни чего делать не надо ?
Вопрос к знатокам!
т.е. беру ubuntu 10.10 например, ставлю 2.6.38 final release
идут в /proc, делаю изменения в /sys/kernel/sched_autogroup_enabled
и радуюсь отзывчивости системы при работе?
или лучше задать этот параметр в sysctl.conf и перезапустить машину ?
Больше ни чего делать не надо(В смысле самому что-то еще упорядочивать) ?
заранее thanks.
>или лучше задать этот параметр в sysctl.conf и перезапустить машину ?зачем перезапускать машину то?
убунтовод же
> убунтовод же+1 за шутку ;)
просто ubuntu ставлю всем своим клиентам на домашние компы (ноуты) в качестве ОС для серфинга в Интернет.
радует, что начиная с 11.04 мои клиенты должны почувствовать ускорение "по дефолту" ;)
> радует, что начиная с 11.04 мои клиенты должны почувствовать ускорение "по дефолту" ;)Зато как будут радоваться дебианщики... годка через три :))). Простите, не удержался.
Уже ничего не надо. Пользуюсь ядром 2.6.37 с патчем, бэкпортированным из 2.6.38-rc pavlinux'ом и этого параметра больше нет.
>> Для активации режима автоматической группировки задач
>> в /proc/sys/kernel/sched_autogroup_enabled необходимо записать 1;
> идут в /proc, делаю изменения в /sys/kernel/sched_autogroup_enabled/proc/sys/kernel/sched_autogroup_enabled
> и радуюсь отзывчивости системы при работе?
> или лучше задать этот параметр в sysctl.conf и перезапустить машину ?
> Больше ни чего делать не надоОно по дефолту ужо включено. Отключается через noautogroup в параметре ядра при загрузке.
спасибо, это и хотел услышать.думаю не только у меня такой вопрос возникал в связи с вестью о 2.6.38.
бери ubuntu 11.04 natty, оно уже с новым ядром.$ uname -r
2.6.38-6-generic
Не менее важной считаю новость появления LZMA в SQUASHFS
ждем новый Slax.
Спасибо за отличный перевод!
>12309 ещё жив?А куда без него? Копирую на флешку фильмак, опять 100% загрузка.
>>12309 ещё жив?
> А куда без него? Копирую на флешку фильмак, опять 100% загрузка.# grep "model name" /proc/cpuinfo
и
# lspciплиз
Дрова ath9k сломали!
20-30% пингов теряется
бэкпортнул из 36-го - уже больше 1000 пакетов, 0% потеряно.
> сцуко! Дрова ath9k сломали!Жалобы направляйте в:
Corporate Headquarters
Atheros Communications, Inc.
1700 Technology Drive
San Jose, CA 95110
t +1 408.773.5200
f +1 408.773.9940
info@atheros.com
ух как официально то!
а не подумал что я просто решил предупредить, а заодно и метод борьбы предложить, который опробовал?
если кому не надо, так пусть сотрут.в багтрекер то я им звякну, но быстрого исправления не ждите.
ну а если кому ещё интересно, то там давно регрессии идут - 36 ядро работает с ath9k идеально, 37-е теряет коннест при нагрузке (типа торрентов), 38 вот вообще без нагрузки 20-30% теряет.
> ну а если кому ещё интересно, то там давно регрессии идут -
> 36 ядро работает с ath9k идеально, 37-е теряет коннест при нагрузке
> (типа торрентов), 38 вот вообще без нагрузки 20-30% теряет.начиная с 2.6.36 частично поломали gspca. в 2.6.38 не починили :(
$ grep "model name" /proc/cpuinfo
model name : Intel(R) Pentium(R) Dual CPU E2160 @ 1.80GHz
model name : Intel(R) Pentium(R) Dual CPU E2160 @ 1.80GHz
$ lspci
00:00.0 Host bridge: Intel Corporation 82945G/GZ/P/PL Memory Controller Hub (rev 81)
00:01.0 PCI bridge: Intel Corporation 82945G/GZ/P/PL PCI Express Root Port (rev 81)
00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 01)
00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 01)
00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #1 (rev 01)
00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #2 (rev 01)
00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #3 (rev 01)
00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #4 (rev 01)
00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 01)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev e1)
00:1f.0 ISA bridge: Intel Corporation 82801GB/GR (ICH7 Family) LPC Interface Bridge (rev 01)
00:1f.1 IDE interface: Intel Corporation 82801G (ICH7 Family) IDE Controller (rev 01)
00:1f.2 IDE interface: Intel Corporation 82801GB/GR/GH (ICH7 Family) SATA IDE Controller (rev 01)
00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 01)
01:00.0 VGA compatible controller: nVidia Corporation G86 [GeForce 8500 GT] (rev a1)
03:01.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01)
> 03:01.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01)Ну я так и думал, во всём виноват телевизор.
ICH7 - это уже DDR2 ?
> А куда без него? Копирую на флешку фильмак, опять 100% загрузка.ИМХО, не то.
Собираем chromium. Пока идёт компиляция - загрузка процессора 100%. Но браузить инет (без флэша) вполне комфортно.
Начинается линковка. Загрузка процессора 10%-30%. Ничего больше делать нельзя, лаги в десятки секунд.
хм. пересобираю world c -j5, смотрю сериал в 720р на флэше.
всё ок. и было ок.
Это потому, что io-scheduler такой неотзывчивый
а может кто пробовал... что круче ... этот чудо патч или bfs?
> а может кто пробовал... что круче ... этот чудо патч или bfs?Есть тут один человек, он их оба скрестил. Ну а я, первые версии BFS пробовал,
разницы не заметил, с тех пор и не трогал больше.
Автогруп и BFQ - наше все. Не лезь лучше в bfs ибо ломает API ядра.
> Автогруп и BFQ - наше все. Не лезь лучше в bfs ибо
> ломает API ядра.кстати а BFQ для 2.6.38 имеется?
Нет еще, но скоро будет. Я списывался с разработчиком, сказал, он еще тестит это дело.
Следить за обновлениями здесь как всегда: http://algo.ing.unimo.it/people/paolo/disk_sched/patches/
http://pavlinux.ru/2011/03/16/304Но с AUTOGROUP хреново дружит. :)
bfs гораздо лучше. Особенно если машина сильно загружена.
Я написал выше, почему твой bfs курит в углу. Мне стабильность важнее.
Я, например, существенной разницы не ощущаю. И да, я пробовал и BFS и BFQ и pf-kernel и Liquorix и Zen-kernel. BFS печально известен своей непредсказуемостью. Мне достаточно BFQ-планировщик ввода/вывода и автогруп-патч, который уже есть в 2.6.38 ядре. Система летает. Кстати, 2.6.38 стало намного быстрее без BFQ даже. Я даже удивлен таким приростом производительности. Единственное, делайте как сказал Pavlinux в первых комменатриях, а именно: в конфиге выбирайте Transparent Huge Pages -> 'madvise' вместо 'always'. Это уберет возможные проблемы использования памяти.
> обеспечена поддержка mesh-протокола B.A.T.M.A.N.ура! :-)
Сильно ждал?:) Что, будешь теперь открытую прошивку ставить и ждать пока соседи подтянуться?:)
12309 это какое то экзотическое железо видимо - НИ РАЗУ его не ловил на куч машин
аналогично.
но кто-то же должен вумные цифири написать с аналогичным же выражением лица.
> В файловой системе Btrfs реализована поддержка прозрачного сжатия данных на
> диске методом LZO.В Reiser4 изначально был. непонятно зачем лепили zlib.
в любом случает reiser4 быстрее и экономнее...>Примечательно, что за счет уменьшения операций с диском LZO-режим также
> обгоняет по скорости выполнение операций режим без использования сжатия.на SSD не обгоняет, если только вы данные не из /dev/null берёте)
Может таки /dev/zero ?
> если только вы данные не из /dev/null берёте)О, а вы уже научились из /dev/null доставать данные которые туда загнали? И у вас натурально отрос накопитель бесконечного объема в системе? Жаль что математикам не дают нобелевку. Но уж все остальные премии за возможность вернуть данные из /dev/null вам явно обеспечены :)
Таки я Вас умоляю! null, zero, они все наодно лицо.
да, нужно будет хотя бы тестово проапгрейдить десктоп с 10.04 LTS до 11.04. Всеравно баги в 10.04 до сих пор есть и их не сильно спешат латать.
>>В состав ядра интегрирован патч с реализацией идеи автоматической группировки задач для повышения интерактивности на десктопеуже сколько там чего добавляют для "повышения интерактивности на десктопе", а распаковка двухгигового архива как тормозила всю систему, так и тормозит.
- Пап, а что такое многозадачность?
- Подожди сынок, вот tar zxf отработает и покажу.21-й век, блин.
Ну, все эти фичи иногда включать надо, а то они никак проявляться не хотят.
+1000 На моем 386 тоже кеды тормозят когда файл распаковываешь
истину глаголешь!!! молоток! сам уже на многих платформах подобное наблюдаю. железо- абсолютно разное. тормоза- одинаковые!
тормоза такие, что Alt+Tab между окнами занимает по 5-7 секунд, проц атлон двухядерный 5600+. А у вас?
2 штуки Оптерон 285 (2.6 GHz), 4 Gb ECC RAM DDR1* Компилю ядрище make -j128
* Mplayer - играет
* Azureus - качает
* Копируется файло меж дисками...
* Тут Пишу
* Жму скриншот, пускаю GIMPhttp://i4.fastpic.ru/big/2011/0315/0a/9462287a462d3eaf004f75...
У всех системы разные — у кого Intel, у кого AMD, а баг проявляется. Может дело в типе памяти и/или в интегрированном контроллёре?
DDR1 — проблем вроде как нет;
DDR2 (Athlon X2 5600+ с интегрированным контроллёром) — есть проблема;
DDR3 (чипсеты AMD 785G, Intel P67) — есть проблема.
> DDR3 (чипсеты AMD 785G, Intel P67) — есть проблема.У меня амдшный чипсет, DDR3, задачи переключаются в момент. Я что-то делаю не так? Искренне не догоняю как мне получить 5-7 секунд при переключении задач. Наверное надо включить своп и засрать всю оперативку, не иначе?
Более того - могу сказать что в винде получить 30 секунд на переключение задач - как делать нефиг. Достаточно запустить несколько жирных программ, ну например фаерфокс и ворд/аутлук поновее. Далее побраузив в фоксе валим на полчаса в ворд. А когда хотим вернутся в фокса - он будет секунд 30 выдавливаться из свопа. В линухе кстати поведение в таких ситуациях явно лучше - лиух вообще своп не юзает пока не начнет реально припирать, поэтому пока хватает RAM - в свопе пусто и задачи переключаются в момент. А если RAM не хватает - так кто виноват то, что вы выше головы прыгаете?
>В линухе кстати поведение в таких ситуациях явно лучше - лиух вообще своп не юзает пока не начнет реально припирать, поэтому пока хватает RAM - в свопе пусто и задачи переключаются в момент. А если RAM не хватает - так кто виноват то, что вы выше головы прыгаете?Не всегда. stumpwm+lenovo s10+slackware-current (3-х месячной давности, правда). emacs-client+doc-view+pdf (к примеру, ansi common lisp, или несколько статей со springerlink/SAGE). Жрет около половины оперативы из 1G имеющейся (ну, если там еще что в фоне висит. Так, обычно, не более 300 метров). Своп при этом, за несколько часов прет вверх, правда не сильно, метров до 150. При этом отваливается wicd-curses. Выход в саспенд часов на 10, а потом обратно приводит к превращению emacs-daemon в Чапая, который думает.
Видно придется переписывать doc-view. :( А времени, нема.
> тормоза такие, что Alt+Tab между окнами занимает по 5-7 секунд, проц атлон
> двухядерный 5600+. А у вас?А что вы для такого сделали? Поместили своп на тот же диск куда льете файло, положили систему в своп и начали лить файлы? Или что надо сделать с пинвином чтобы он 5-7 секунд задачи переключать стал? Пришла в бошку только упомянутая ситуация. В ней и минуту можно переключать задачи, пардон. Особенно если это не пингвин будет, а другая система, более нагло юзающая своп...
У всех свои методы.:) Лично я за последние 2 дня нашел два:
а) пускать неоптимизированный mysql запрос к бд
б) пара VirtualBox'ов, а внутри флеш-приложениепри этом система с 8 гб озу просто перестает отзываться, не 5-7 секунд, нет. можно просто жать ресет.
2.6.32Я еще этот чудесный патч ни разу не испытывал (ждал, пока Линус одобрит), но мне актуально.
> У всех свои методы.:) Лично я за последние 2 дня нашел два:
> а) пускать неоптимизированный mysql запрос к бд
> б) пара VirtualBox'ов, а внутри флеш-приложениеВот, точно, забыл, надо было ещё 2 ВиртуалЯщика пустить ...
---
И так:
2 штуки Оптерон 285 (2.6 GHz), (Процессоры без аппаратного ускорения виртуализации!)
4 Gb ECC RAM DDR1
* Компилю ядрище make -j64
* Mplayer - играет
* Azureus - качает, раздаёт
* Копируется файло меж дисками из миднайта
* VirtualBox #1 - Windows XP + Safari + Flash
* VirtualBox #2 - Debian 6 + apt-get update/upgrade
* Тут Пишу
* Жму скриншот, пускаю GIMPhttp://i4.fastpic.ru/big/2011/0316/60/5601355f21d57fd9f327f5...
и что вы хотите этим сказать? Что у вас работает? Ну, примите мои поздравления. И медальку "УМВР", позабыл ссылку.
> и что вы хотите этим сказать?Что если бы был баг - он был у всех.
А так, зачем из десктопа делать сервер, не меняя железо.
>>Что если бы был баг - он был у всех.Что за глупость. Железо у всех разное, разный софт и разные настройки. Баги совсем не обязательно проявляются абсолютно у всех, т.к. какой-нибудь race condition может происходить только при выполнении определённых условий, и легко может проявляться у одного и не проявляться у другого. Так что говорить что УМВР - это заранее объявлять о своей некомпетентности.
>>>Что если бы был баг - он был у всех.
> Что за глупость. Железо у всех разное, разный софт и разные настройки.Софт один - ядро Linux, за настройки сами виноваты, остаётся железо.
Но! Некоторые вреде говорили, что на МакОСе/Венде/BSD всё нормально.
Остаётся только два параметра - ядро и настройки.
> Но! Некоторые вреде говорили, что на МакОСе/Венде/BSD всё нормально.Угу, некторых послушать - так баги вообще только в линуксе и есть :). А остальные конечно же супербоги, как минимум. Поэтому они гиг кода без багов пишут одной левой, шутя :)
>> Но! Некоторые вреде говорили, что на МакОСе/Венде/BSD всё нормально.
> Угу, некторых послушать - так баги вообще только в линуксе и естьЗа время существования бага, я ни разу не видел тестов-сравнений
с МакОС/Венде/BSD/Solaris. dd и /dev/null иль NUL есть даже в ДОСе,
так что воспроизвести недолго. Я б проверил, Венду некуда ставить.
хочешь сказать что ни разу не видел винду, где при активном использовании диска всё замирает и даже диспетчер задач не вызовешь?
> хочешь сказать что ни разу не видел винду, где при активном использовании
> диска всё замирает и даже диспетчер задач не вызовешь?На хост компе венду уже наверно лет 7-8 не юзал. А в виртуалке это не то.
что не значит что эта "бага" там не существует.
другими словами - это может быть просто набор железяк так совпал.
помнится раньше считалось если на материнке меньше 30 кондёров то тормоза обеспечены.
> За время существования бага, я ни разу не видел тестов-сравнений
> с МакОС/Венде/BSD/Solaris. dd и /dev/null иль NUL есть даже в ДОСе,
> так что воспроизвести недолго. Я б проверил, Венду некуда ставить.Ну, видимо орать "Linux, баг, ай-яй-яй!" проще :). Хотя если в других системах озадачить системный диск да еще не дай боже при своплении - жопа там наступает не менее масштабная. А что до доса - так он однозадачный по затее своей. И пока прога пишет в файло - просто так и без извращений ты вообще ничего делать не сможешь :)
>> У всех свои методы.:) Лично я за последние 2 дня нашел два:...
> * Жму скриншот, пускаю GIMPПонятно. Мне тоже стало любопытно, как это так и я попытался воспроизвести, но не получилось. %( Вот так, занят, спешишь, торопишься и ловишь два локинга за два дня. А когда похоливарить, так все работает.:((( :)
К сожалению с 2.6.38 не собирается модуль для Vbox 3.2.12 :( Каждый раз что-нибудь новое с этим конструктором.
> К сожалению с 2.6.38 не собирается модуль для Vbox 3.2.12 :( Каждый раз что-нибудь новое с этим конструктором.для vbox 4.0.4 собирается нормально
знаю, но ведь они ж туда и новых багов добавили.
> К сожалению с 2.6.38 не собирается модуль для Vbox 3.2.12 :(Делов-то - http://pavlinux.ru/krnl/vboxmod/vboxhost-3.2.12.tar.bz2
>> К сожалению с 2.6.38 не собирается модуль для Vbox 3.2.12 :(
> Делов-то - http://pavlinux.ru/krnl/vboxmod/vboxhost-3.2.12.tar.bz2я не понял ответа. у меня модуль при попытке загрузки вызывает кернел паник.
>>> К сожалению с 2.6.38 не собирается модуль для Vbox 3.2.12 :(
>> Делов-то - http://pavlinux.ru/krnl/vboxmod/vboxhost-3.2.12.tar.bz2
> я не понял ответа. у меня модуль при попытке загрузки вызывает кернел паник.у меня 64 бита мож из-за этого?!
я скопировал /usr/src/linux-headers-2.6.38/include/generated
в
/usr/src/linux-2.6.38/include/linux
и прошло ...
> http://i4.fastpic.ru/big/2011/0316/60/5601355f21d57fd9f327f5...А еще тебя спасает четырехядерный проц, озу не исчерпано и симуляция вместо работы.
Попробуй оставь комп на пару дней (неделю). Одна вкладка в опере, это даже не смешно. Вот несколько браузеров, 50-100 вкладок в каждом, кое-где флеш... вот тогда и посмотрим....
вот скачай, открой, полистай и можешь делать скрин. http://downloads.mysql.com/docs/refman-5.1-en.html.tar.gz
Спасает не 4-х ядерный, а двух процессорный.
да, верно, а на картинке они как core0...3
> Попробуй оставь комп на пару дней (неделю).Пробовал оставлять на полтора месяца. Ничего особого не замечал вроде. Ну разве что флеш я не юзаю как правило, ибо глюкало он, особенно в линуксе. Вкладок было до 300-400 примерно. Оперативы жрется ессно порядка 2 гигз только на браузер. Если у вас нет столько (т.е. машина должна быть с 3-4Гб оперативы минимум) и вы пытаетесь выжрать больше RAM чем есть - ну и кто вам доктор? Своп - это такой очень медленный эмулятор оперативки жестким диском, если вы вдруг не знали.
> флеш... вот тогда и посмотрим....
Ага, это глюкало выжрет всю оперативу, начнется своп и конечно же в том что своп работает медленее оперативы - виновата будет система? :)
>> Попробуй оставь комп на пару дней (неделю).
> Пробовал оставлять на полтора месяца. Ничего особого не замечал вроде. Ну разветы весь тред не прочел, а отвечаешь. мне по сути тут нечего ответить.
чуваки вон, http://www.linux.org.ru/forum/desktop/6019279, уже целые исследования проводят как победить этот баг, вы это им скажите, что у вас всё работает, они будут безусловно рады за вас :)
> чуваки вон, http://www.linux.org.ru/forum/desktop/6019279, уже целые исследования
> проводят как победить этот баг, вы это им скажите, что у
> вас всё работает, они будут безусловно рады за вас :)Вся прелесть бага не в пожирании оперативки, свопа или
процессора в связи с пожиранием свопа или оперативки.
А в блокировании шины PCI на время копирования.
> А в блокировании шины PCI на время копирования.Я так понял что под оным багом каждый имеет в виду что-то свое, сваливая в кучу все мыслимые и немыслимые проблемы :). Если продолжать логику - там в треде вылез даже кто-то с фрей 8.2 которая тоже видите ли у него тормозит при копировани больших файлов. Получается что она тоже снабжена сабжевым багом...линукса? :)))
>>А что вы для такого сделали? Поместили своп на тот же диск куда льете файлоУ меня 6 Gb памяти и нет свопа.
> У меня 6 Gb памяти и нет свопа.Дружище, если ты не знаешь что все загруженные в память бинарники - это тоже swap, только RO, то это ещё ничего не значит :)
дружище, умом блистать своим не нужно, там где речь идёт совсем о другом. Например, если ты не знаешь, что продажа с обязательством последующего выкупа - это тоже своп, то это ещё ничего не значит.
> дружище, умом блистать своим не нужно, там где речь идёт совсем о
> другом. Например, если ты не знаешь, что продажа с обязательством последующего
> выкупа - это тоже своп, то это ещё ничего не значит.Теперь Вы знаете что swap у Вас всё таки есть, ну и ладушки. Может быть Вы сможете продолжить свою мысль дальше и понять откуда могут взяться задержки при копировании :)
ionice -c3
Думал, что что-то изменилось в 2.6.38, но все по прежнему:
-root@ap-test:/sbin# iwspy wlan0
-wlan0 Interface doesn't support wireless statistic collectionЭто я туплю, карточка не поддерживает или ath9k так и не допилен?
Карточка: RangeBooster N 650
Это проблема с ath9k. Пишите разрабам: info@atheros.com
> Это проблема с ath9k. Пишите разрабам: info@atheros.comСпасибо за подтверждение.
Действительно, карточка с MADWIFI статистику выдает, но что-то с мощностью, или битрейт в ноль устанавливается, пока не разобрался.
Когда-то не так давно были новости про встроенный в ядро pppoe сервер (планировалось принятие в основную ветку на .38 ядро). Типа патчи из проекта rp-pppoe, все такое... Что-то ничего такого не вижу. Не туда смотрю или что-то не понял?
Вы случаем не про accel-pptp?
> Вы случаем не про accel-pptp?Точно, спасибо. Я именно про него;) все путается уже в голове, номера ядер, названия проектов... Кто-нибудь пробовал, как впечатления, прирост производительности, стабильность?
accel-pptp еще в состав 2.6.37 принят был.
Пробовали. Не сказать, что без косяков, но скорости явно выше и нагрузка на железо явно ниже, чем аналогичными тулзами. Рекомендую. Пользуюсь с .37 версии ядра.
косяки в чем проявляются?
А почему на главной странице kernel.org до сих пор 2.6.37.4 ?
AMD Bulldozer virtualization extensions: instruction decode assist, clean bits, xsave/avx, flush-by-asid - здесь http://kernelnewbies.org/Linux_2_6_38Бульдозер)))))
Народ, подскажите usb-wifi карточку с 802.11n, поддерживаемую текущими стабильными дистрами (скажем, Ubuntu 10.10) из коробки, без установки бинарных firmware.
Спасибо
> Народ, подскажите usb-wifi карточку с 802.11n, поддерживаемую ...Вот, умный человек, сначала спрашивает, потом покупает! :)
http://linux-wless.passys.nl/query_hostif.php?hostif=USB
На чипах:
Ralink 2800/2870 - напр. ASUS WL-160N, Dlink DWA-130 rev. C1, DWA-130 rev. B
Realtek 8192CE/8187CE - куча всякого
Zydas zd1211
вам ехать или религия ?
> вам ехать или религия ?Все правильно человек делает - не хочет геморроя и подлянок получать за свои деньги, и хочет чтобы железо делало то что ему надо а не кому-то там еще. С всеми этими прошивками - вечно какой-то геморрой, то одни фичи порежут, то другие, то легально распостранять нельзя, то еще какая-то срань обнаруживается. Интел вон додумался на некоторых вайфай картах покилять в фирмвари режим работы как точка доступа. Феерично, мля. И инжекция пакетов по мнению интеля - слишком жирно. Ну и так далее. Оно, конечно, не всем надо, но какого хрена кто-то за меня будет решать что мне надо, вместо того чтобы просто сделать железку, а дальше я уж сам какнить решу - надо мне точку доступа, иньекцию пакетов или что там еще или нет. Вот и приходится разбираться кто и что пытается подсунуть за мои же деньги. Вон жителям Трои коня вообще нахаляву подогнали, только им этот подарок потом боком вышел.
>вам ехать или религия ?ему то как раз ехать.
зыж
не путай отсутствие шашечек с квадратными колёсами в убитой шестёрке с хачапури за рулём да ещё с двумя такими же на заднем сиденье.
тем более, что судя по вопросу и лишним пробелам ты таки блондинка.
> Народ, подскажите usb-wifi карточку с 802.11n, поддерживаемую текущими стабильными дистрами
> (скажем, Ubuntu 10.10) из коробки, без установки бинарных firmware.
> СпасибоАтеросы более-менее культурно работают вроде. Фирмвари они не требуют. У меня убунта на ноуте сразу подхватила ath9000-based карту и заработала с ней.
А эти злополучные iwpriv, iwlist, iwspy работают нормально?
iwconfig, iwlist, iwevent, iwgetid,.. - работают отличноiwpriv - нет. ну нету у него private ioctls.
iwspy - тоже.
опять же, есть другие драйва, например madwifi-ng с которыми идут ещё и утили типа
wlanconfig, 80211debug, 80211stats, athchans, athctrl, athdebug, athstats,...
так что даже выбор есть.но ведь главное чтобы работали, не так ли?
вот в 38 ведре они слегка накосячили. я поставил дрова от старого ведра.
а вообще уже очень давно не имел проблем с азеросовскими картами. доволен.
> опять же, есть другие драйва, например madwifi-ng с которыми идут ещё и
> утили типа
> wlanconfig, 80211debug, 80211stats, athchans, athctrl, athdebug, athstats,...
> так что даже выбор есть.Да, я это заметил и как не странно с madwifi-ng даже iwpriv, iwlist работают, только беда, - почемуто связь разрывается, придется ковыряться.
> но ведь главное чтобы работали, не так ли?
А мне нужна детальная статистика, что в ефире делается :(
> вот в 38 ведре они слегка накосячили. я поставил дрова от старого
> ведра.Может как какой чип, у меня 5008, та нормально заработала связь, а с утилитами по прежнему. Фактически в 38 ядре огромное количество изменений коснулось именно ath9k.
моя карточка:
# lspci | grep Netwo
02:00.0 Network controller: Atheros Communications Inc. AR9287 Wireless Network Adapter (rev 01)что характерно - в винде видится только по стандарту b/g.
в линухе ещё и n. более того - как дуалбэнд n (т.е. до 300 Mb/s - могу скриншот nm выложить).
что характерно, в спецификации ноута честно указаны b/g и никакого n.так вот, не знаю как дуалбэнд, но по самбе 7-9 мегабайт/с выдаёт.
правда дрова портнул из 36 ведра, как выше уже сказал.
Кто BFQ хотел - http://pavlinux.ru/2011/03/16/304
глянул у тебя другие статейки, наткнулся на Generate random UUID.
так вот, уж тыщу лет как есть утиль uuidgen, которая юзает libuuid, которые входят в sys-apps/util-linux, а изначально появились в rpc (откуда потом по-заимствовались и в com мс'ом)
так что х/з зачем в куэму изобрели велосипед, но подозреваю что алгоритм в оригинале получше будет (их там два) ибо:
>The new UUID can reasonably be considered unique among all UUIDs created on the local system, and among UUIDs created on other systems in the past and in the future.
>There are two types of UUIDs which uuidgen can generate: time-based UUIDs and random-based UUIDs [-r|-t].это если интересно.
> так вот, уж тыщу лет как есть утиль uuidgen, которая юзает libuuid,Всё это чудно, но для того чтоб сгенерить строчу 1234-deadbeef-777777777777-4321
предлагаешь целую либу подключать :)А если честно, там вся фишка в initstate(), ибо random/drand48/rand/random_r/srand
без него говяные функции. Казалось бы, вроде в отдельно взятой машине, вероятность
повтора числа при использовании функции ничтожна. А вот фигу. Лично, в течении полугода
раз 5 точно, напарывался на двойной повтор. С initstate не было ни разу.
Кстати, хороший пример как Free Software Foundation, из мухи слона делает. :)
Надо-то сгенерить строчку, они раздули до целой библиотеки.
>Всё это чудно, но для того чтоб сгенерить строчу 1234-deadbeef-777777777777-4321 предлагаешь целую либу подключать :)не предлагаю. нахрен бы мне это? :D
НО! эта либа есть в каждом дистре и даже в каждом *никс. и даже в каждой винде. не говоря уж про LSB. более того, она используется довольно часто - практически закэширована в памяти. проверь сам:
># cat /proc/*/maps|grep libuuid|wc
> 84 504 8148и порой там даже правят баги и обновляют.
>Кстати, хороший пример как Free Software Foundation, из мухи слона делает. :)
>Надо-то сгенерить строчку, они раздули до целой библиотеки.уникальный номер по всему миру......... ха! да из этого номера мс такой фетиш сделал! куда тут опенсорсу то :D
а вообще, ты ж вроде статью в познавательных целях писал? не? вот я и намекнул - мол есть разные реализации и разные алгоритмы.
А если грузанутся в BFQ, и потом сказать sysctl -w kernel.sched_autogroup_enabled=1, то все работает.
Прочитал статью твою. Патч пока не юзал, дело в том, что списывался с автором патча, он его еще тестит и тюнит вовсю под 38-е ведро. Отписал ему еще одно письмо с вопросом про автогруп и блокировки, которые у тебя в стаьте. Посмотрим, что Паоло ответит мне сегодня.
> Прочитал статью твою. Патч пока не юзал, дело в том, что списывался
> с автором патча, он его еще тестит и тюнит вовсю под
> 38-е ведро. Отписал ему еще одно письмо с вопросом про автогруп
> и блокировки, которые у тебя в стаьте. Посмотрим, что Паоло ответит
> мне сегодня.Ну в общем сижу второй день, полёт нормальный.
---
1-й раз я загрузился с параметрами ядра:root=/dev/sda2 vga=0x31a
был глюк при рекурсивном сканировании каталогов
2-й раз с:
root=/dev/sda2 vga=0x31b agp=off noresume quiet - стандартные феньки
reset_devices - толку 0
tsc=reliable hpet=force clocksource=hpet powernow-k8.tscsync=1 nopmtimer - таймеры
iommu=memaper=4 amd_iommu=fullflush - AMDшный IOMMU
pcie_ports=native - чтоб уж наверняка
pci=bfsort,ioapicreroute,routeirq,skip_isa_align,use_crs - мелкий тюнинг
noexec=on noexec32=on - по-моему это дефолтное на AMD64И вот так и работаю.
powernow-k8.tscsync=1, iommu=memaper=4 и amd_iommu=fullflush, - это специально для чипсетов Nforce Pro/Nforce4
Хыыы )) Чувак ответил (когда я привел 2 блокировки из патча и из ядра):So you are suggesting to invoke blk_run_queue from within bfq_kick_queue. It seems the right thing to do, thanks.
The only problem might be that, in this way, a further API dependency is added. I will think about it when I will release BFQ for 2.6.38.Ну а когда я спросил, мол, будет ли нормально работать с автогруппировкой, ответил следующее:
I did not have (and probably will not have) the time to integrate the BFQ cgroups mechanism (whose code and has been actually used to implement cgroups within CFQ) with the rest of the system, so I guess BFQ does not profit from Autogrouping. But I did not check. If you performed or want to perform any test, I will be happy to hear about your results.
Короче, сегодня тоже попробую твой патч и автогруппировку. Хз, посмотрим.
> Хыыы )) Чувак ответил (когда я привел 2 блокировки из патча и
> из ядра):
> So you are suggesting to invoke blk_run_queue from within bfq_kick_queue. It seems
> the right thing to do, thanks.
> The only problem might be that, in this way, a further API
> dependency is added. I will think about it when I will
> release BFQ for 2.6.38.Ну на самом деле, там те же яйцы, только вид сбоку.
> Ну а когда я спросил, мол, будет ли нормально работать с автогруппировкой,
> ответил следующее:
> I did not have (and probably will not have) the time to
> integrate the BFQ cgroups mechanism (whose code and has been actually
> used to implement cgroups within CFQ) with the rest of the
> system, so I guess BFQ does not profit from Autogrouping. But
> I did not check. If you performed or want to perform
> any test, I will be happy to hear about your results.Скажи работает! :)
И я имел ввиду, не тандем BFQ+Autogroup, а чтоб они друг другу не мешались.
Ок, отписал ему :)