<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Аспро: ЛайтШоп [тема: Сетевая карта на 100G и обработка прерываний (процесс ksoftirqd загружает одно ядро CPU на 100%).]</title>
		<link>http://proxmox.su</link>
		<description>Новое в теме Сетевая карта на 100G и обработка прерываний (процесс ksoftirqd загружает одно ядро CPU на 100%). форума Proxmox Виртуальная Среда на сайте Аспро: ЛайтШоп [proxmox.su]</description>
		<language>ru</language>
		<docs>http://backend.userland.com/rss2</docs>
		<pubDate>Tue, 28 Apr 2026 22:21:07 +0300</pubDate>
		<item>
			<title>Сетевая карта на 100G и обработка прерываний (процесс ksoftirqd загружает одно ядро CPU на 100%).</title>
			<description><![CDATA[<b><a href="http://proxmox.su/forum/messages/forum63/message326034/77938-setevaya-karta-na-100g-i-obrabotka-preryvaniy-_protsess-ksoftirqd-zagruzhaet-odno-yadro-cpu-na-100_.">Сетевая карта на 100G и обработка прерываний (процесс ksoftirqd загружает одно ядро CPU на 100%).</a></b> <i>Proxmox Виртуальная Среда</i> в форуме <a href="http://proxmox.su/forum/forum63/">Proxmox Виртуальная Среда</a>. <br />
			У меня есть тестовый сервер с сетевой картой Mellanox ConnectX-5 (MT27800 Family, 100GbE, двухпортовая QSFP28). Сервер работает под управлением Proxmox 8.4. Для тестирования я создал виртуальную машину с Ubuntu 22.04 (VM 1). Я выделил один порт сетевой карты Mellanox виртуальной машине с помощью технологии PCI Passthrough. У меня также есть второй идентичный сервер с аналогичной виртуальной машиной (VM 2). Два сервера соединены кабелем AOC 100G QSFP28 3m. Я пытаюсь протестировать пропускную способность канала 100G с использованием протокола UDP. На VM 1 я запускаю 8 экземпляров iperf3 в серверном режиме: # iperf3 -s -p 3001 -D -4 ; … ; iperf3 -s -p 3008 -D -4 На VM 2 я запускаю 8 экземпляров iperf3 в клиентском режиме: # iperf3 -c &lt;vm1-ip&gt; -Z -p 3001 -u -b 15G -l 3500 ; … ; iperf3 -c &lt;vm1-ip&gt; -Z -p 3008 -u -b 15G -l 3500 В результате общая скорость по всем 8 потокам составляет примерно 24 Гбит/с. Во время теста я наблюдаю, что один процессорный ядро на VM 1 загружено на 100%, в то время как остальные ядра простаивают. Загрузка одного ядра вызвана процессом ksoftirqd. Я понимаю, что этот процесс отвечает за обработку прерываний IRQ. Несколько таких процессов работают в ОС (равное количеству процессорных ядер), и, судя по многочисленным статьям в интернете, обработка прерываний должна быть параллельной на нескольких процессорных ядрах. Если установить обычный Ubuntu на серверах и запустить тот же тест, все работает как положено. Я получаю значительно более высокие скорости, и процессы ksoftirqd загружают несколько процессорных ядер. Это означает, что сетевая карта распределяет входящий UDP-трафик по нескольким очередям. Как можно добиться того же результата в виртуальной машине Proxmox? <br />
			<i>10.06.2025 21:57:00, alicho.</i>]]></description>
			<link>http://proxmox.su/forum/messages/forum63/message326034/77938-setevaya-karta-na-100g-i-obrabotka-preryvaniy-_protsess-ksoftirqd-zagruzhaet-odno-yadro-cpu-na-100_.</link>
			<guid>http://proxmox.su/forum/messages/forum63/message326034/77938-setevaya-karta-na-100g-i-obrabotka-preryvaniy-_protsess-ksoftirqd-zagruzhaet-odno-yadro-cpu-na-100_.</guid>
			<pubDate>Tue, 10 Jun 2025 21:57:00 +0300</pubDate>
			<category>Proxmox Виртуальная Среда</category>
		</item>
	</channel>
</rss>
