"быстрый дистрибутив"
Модератор: Olej
Re: "быстрый дистрибутив"
А кто из ядер занимается обработкой прерываний? Если только одно ядро, то все понятно с "умершей" мышкой. Просто на "моей" 4-х процессорной(именно 4 чипа с 2 ядрами) системе на АМД прерывания подведены к одному чипу, а дисковый тракт к другому. Может и здесь что-то подобное.
На Интеле в Винде мышь "умирает" только при полной загрузке 4-х ядер (это уже другой сервер с одним процом), а как с этим на АМД и Линуксе.
Хотя вспомнил. Где в ценной папке /proc есть данные по раскладке/статистике прерываний. Там по-моему только несколько висят на 0-ядре, а остальные на всех происходят, в т.ч. и мышь
На Интеле в Винде мышь "умирает" только при полной загрузке 4-х ядер (это уже другой сервер с одним процом), а как с этим на АМД и Линуксе.
Хотя вспомнил. Где в ценной папке /proc есть данные по раскладке/статистике прерываний. Там по-моему только несколько висят на 0-ядре, а остальные на всех происходят, в т.ч. и мышь
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: "быстрый дистрибутив"
tundra37 писал(а):Где в ценной папке /proc есть данные по раскладке/статистике прерываний. Там по-моему только несколько висят на 0-ядре, а остальные на всех происходят, в т.ч. и мышь
Код: Выделить всё
bash-4.2$ cat /proc/interrupts
CPU0 CPU1
0: 322370 0 IO-APIC-edge timer
1: 9 0 IO-APIC-edge i8042
7: 1 0 IO-APIC-edge parport0
8: 1 0 IO-APIC-edge rtc0
9: 395 0 IO-APIC-fasteoi acpi
12: 156 0 IO-APIC-edge i8042
14: 1248 0 IO-APIC-edge ata_piix
15: 0 0 IO-APIC-edge ata_piix
16: 16176 0 IO-APIC-fasteoi i915, eth0
18: 28409 0 IO-APIC-fasteoi uhci_hcd:usb4, yenta
19: 646 0 IO-APIC-fasteoi uhci_hcd:usb5, tifm_7xx1
20: 309 0 IO-APIC-fasteoi ehci_hcd:usb1, uhci_hcd:usb2
21: 0 0 IO-APIC-fasteoi uhci_hcd:usb3
22: 0 0 IO-APIC-fasteoi mmc0
41: 59230 0 PCI-MSI-edge ahci
42: 20359 0 PCI-MSI-edge snd_hda_intel
43: 45138 0 PCI-MSI-edge iwl3945
NMI: 203 200 Non-maskable interrupts
LOC: 205360 324612 Local timer interrupts
SPU: 0 0 Spurious interrupts
PMI: 203 200 Performance monitoring interrupts
IWI: 0 0 IRQ work interrupts
RTR: 0 0 APIC ICR read retries
RES: 376953 321364 Rescheduling interrupts
CAL: 3169 3170 Function call interrupts
TLB: 18729 12987 TLB shootdowns
TRM: 0 0 Thermal event interrupts
THR: 0 0 Threshold APIC interrupts
MCE: 0 0 Machine check exceptions
MCP: 5 5 Machine check polls
ERR: 0
MIS: 0
Код: Выделить всё
bash-4.2$ cat /proc/cpuinfo | grep 'model name'
model name : Genuine Intel(R) CPU T2300 @ 1.66GHz
model name : Genuine Intel(R) CPU T2300 @ 1.66GHz
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: "быстрый дистрибутив"
Olej писал(а):tundra37 писал(а):Где в ценной папке /proc есть данные по раскладке/статистике прерываний. Там по-моему только несколько висят на 0-ядре, а остальные на всех происходят, в т.ч. и мышь
Код: Выделить всё
bash-4.2$ cat /proc/interrupts
CPU0 CPU1
0: 322370 0 IO-APIC-edge timer
...
[/quote]
А вот как всё то же выглядит на более "умном" современном железе:
[code]
[olej@nvidia ~]$ cat /proc/interrupts
CPU0 CPU1
0: 121 1 IO-APIC-edge timer
1: 4 4 IO-APIC-edge i8042
8: 0 1 IO-APIC-edge rtc0
9: 0 0 IO-APIC-fasteoi acpi
16: 100 141 IO-APIC-fasteoi uhci_hcd:usb5, nvidia
17: 94 53 IO-APIC-fasteoi snd_hda_intel
18: 408 403 IO-APIC-fasteoi ata_piix, uhci_hcd:usb4
19: 14 16 IO-APIC-fasteoi uhci_hcd:usb3
23: 5664 3736 IO-APIC-fasteoi ata_piix, ehci_hcd:usb1, uhci_hcd:usb2
43: 156 57 PCI-MSI-edge eth0
44: 286 222 PCI-MSI-edge snd_hda_intel
NMI: 9 8 Non-maskable interrupts
LOC: 17458 16620 Local timer interrupts
SPU: 0 0 Spurious interrupts
PMI: 9 8 Performance monitoring interrupts
IWI: 0 0 IRQ work interrupts
RES: 4652 4740 Rescheduling interrupts
CAL: 161 492 Function call interrupts
TLB: 655 641 TLB shootdowns
TRM: 0 0 Thermal event interrupts
THR: 0 0 Threshold APIC interrupts
MCE: 0 0 Machine check exceptions
MCP: 1 1 Machine check polls
ERR: 0
MIS: 0
Код: Выделить всё
[olej@nvidia ~]$ cat /proc/cpuinfo | grep 'model name'
model name : Pentium(R) Dual-Core CPU E6600 @ 3.06GHz
model name : Pentium(R) Dual-Core CPU E6600 @ 3.06GHz
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: "быстрый дистрибутив"
А вот как всё то же выглядит на более "умном" современном железе:Olej писал(а):tundra37 писал(а):Где в ценной папке /proc есть данные по раскладке/статистике прерываний. Там по-моему только несколько висят на 0-ядре, а остальные на всех происходят, в т.ч. и мышьКод: Выделить всё
bash-4.2$ cat /proc/interrupts CPU0 CPU1 0: 322370 0 IO-APIC-edge timer ...
Код: Выделить всё
[olej@nvidia ~]$ cat /proc/interrupts
CPU0 CPU1
0: 121 1 IO-APIC-edge timer
1: 4 4 IO-APIC-edge i8042
8: 0 1 IO-APIC-edge rtc0
9: 0 0 IO-APIC-fasteoi acpi
16: 100 141 IO-APIC-fasteoi uhci_hcd:usb5, nvidia
17: 94 53 IO-APIC-fasteoi snd_hda_intel
18: 408 403 IO-APIC-fasteoi ata_piix, uhci_hcd:usb4
19: 14 16 IO-APIC-fasteoi uhci_hcd:usb3
23: 5664 3736 IO-APIC-fasteoi ata_piix, ehci_hcd:usb1, uhci_hcd:usb2
43: 156 57 PCI-MSI-edge eth0
44: 286 222 PCI-MSI-edge snd_hda_intel
NMI: 9 8 Non-maskable interrupts
LOC: 17458 16620 Local timer interrupts
SPU: 0 0 Spurious interrupts
PMI: 9 8 Performance monitoring interrupts
IWI: 0 0 IRQ work interrupts
RES: 4652 4740 Rescheduling interrupts
CAL: 161 492 Function call interrupts
TLB: 655 641 TLB shootdowns
TRM: 0 0 Thermal event interrupts
THR: 0 0 Threshold APIC interrupts
MCE: 0 0 Machine check exceptions
MCP: 1 1 Machine check polls
ERR: 0
MIS: 0
Код: Выделить всё
[olej@nvidia ~]$ cat /proc/cpuinfo | grep 'model name'
model name : Pentium(R) Dual-Core CPU E6600 @ 3.06GHz
model name : Pentium(R) Dual-Core CPU E6600 @ 3.06GHz
Код: Выделить всё
olej@atom:~$ cat /proc/interrupts
CPU0 CPU1 CPU2 CPU3
0: 50 0 0 0 IO-APIC-edge timer
1: 8 0 0 0 IO-APIC-edge i8042
4: 2 0 0 0 IO-APIC-edge
7: 0 0 0 0 IO-APIC-edge parport0
8: 1 0 0 0 IO-APIC-edge rtc0
9: 0 0 0 0 IO-APIC-fasteoi acpi
12: 144 0 0 0 IO-APIC-edge i8042
14: 0 0 0 0 IO-APIC-edge ata_piix
15: 0 0 0 0 IO-APIC-edge ata_piix
16: 23 0 0 0 IO-APIC-fasteoi uhci_hcd:usb5, i915
18: 0 0 0 0 IO-APIC-fasteoi uhci_hcd:usb4
19: 5652 4901 0 0 IO-APIC-fasteoi ata_piix, uhci_hcd:usb3
22: 572 0 0 0 IO-APIC-fasteoi HDA Intel
23: 0 0 0 0 IO-APIC-fasteoi ehci_hcd:usb1, uhci_hcd:usb2
27: 92 0 405 0 PCI-MSI-edge eth0
NMI: 0 0 0 0 Non-maskable interrupts
LOC: 6629 6841 5878 4060 Local timer interrupts
SPU: 0 0 0 0 Spurious interrupts
PMI: 0 0 0 0 Performance monitoring interrupts
PND: 0 0 0 0 Performance pending work
RES: 258 319 394 391 Rescheduling interrupts
CAL: 806 2412 86 93 Function call interrupts
TLB: 167 141 229 296 TLB shootdowns
TRM: 0 0 0 0 Thermal event interrupts
THR: 0 0 0 0 Threshold APIC interrupts
MCE: 0 0 0 0 Machine check exceptions
MCP: 2 2 2 2 Machine check polls
ERR: 0
MIS: 0
Код: Выделить всё
olej@atom:~$ cat /proc/cpuinfo | grep 'model name'
model name : Intel(R) Atom(TM) CPU 330 @ 1.60GHz
model name : Intel(R) Atom(TM) CPU 330 @ 1.60GHz
model name : Intel(R) Atom(TM) CPU 330 @ 1.60GHz
model name : Intel(R) Atom(TM) CPU 330 @ 1.60GHz
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: "быстрый дистрибутив"
Olej писал(а):Так что раскладка IRQ бывает очень разнообразная
Хотя раскладка IRQ к показанному примеру отношения не имеет:tundra37 писал(а):А кто из ядер занимается обработкой прерываний? Если только одно ядро, то все понятно с "умершей" мышкой.
...
На Интеле в Винде мышь "умирает" только при полной загрузке 4-х ядер (это уже другой сервер с одним процом), а как с этим на АМД и Линуксе.
- аппаратно IRQ в любом случае происходят, и обработчик "нижней половины" (то, что называют ISR) отрабатывает ... это без запрета линии IRQ никто отменить не может...
- но при запуске N потоков на N процессорах, с дисциплиной планирования той, что в Linux пытаются изобразить "как real-time" - загрузка каждого из N процессоров прыгнет до 100%
- при этом (предполагаю), что и запланированные из ISR обработчики IRQ "верхней половины" (тасклеты, отложенные прерывания) - не могут получить ни кванта времени
- ... но это и не важно: потому как процессы-потребители таких данных от прерываний (мышки) - X11, оконный менеджер, окно, терминал в окне... - не смогут получить ни кванта времени до тех пор, пока "реалтаймы" не освободят хотя бы один процессор из N.
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: "быстрый дистрибутив"
По поводу дистрибутивов быстрых и не быстрых, а также железа сильного и слабого, на котором крутится дистрибутив быстро - зашёл разговор вот здесь ещё: Помогите подобрать дистрибутив !!! (вот от этого места и далее).
Там сформулировались некоторые факторы, которые могли бы делать дистрибутив выглядящим "быстрым"
Там сформулировались некоторые факторы, которые могли бы делать дистрибутив выглядящим "быстрым"
Что можно было бы продолжить и здесь обсудить далее ... но уже в сугубо с технической точки зрения.Чем вы определите "лёгкость" своего дистрибутива? :
1. ядром. Ядро не бывает "лёгким" или "тяжёлым" (дистрибьюторостроители вообще в большинстве не понимают что там в ядре), ядро берётся с kernel.org, и может быть только свежим или старым.
2. сервисы (службы, демоны). Это всё определяется настройками. Да, в каких-то дистрибутивах по дефаулту запущенных служб может быть больше ... - так остановите их.
3. система X11. Точнее DE или WM: KDE, GNOME и т.д. и т.п. Так в любом дистрибутиве можно использовать любое оконное окружение, даже устанавливая их, в большинстве, пакетом из родного репозитария дистрибутива.
Нет никаких других различий (подсистем), делающих дистрибутив "лёгким"-"тяжёлым", "быстрым"-"медленным"!
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя