LINUX.ORG.RU

Умираю от жары, помогите раскидать процессы по ядрам!

 , ,


0

2

В комнате трудно дышать, пот льется ручьем, запах расправленного китайского пластика по всей квартире, виновник i9-14900K.

Когда запускаю программу, процессор сильно нагревается.

Я хочу выделить программе 8 ядер, и заставить Linux перекидывать процесс между ядрами, так, что бы они не нагревались, с горячих на холодные, но как это сделать?

Через taskset можно задать ядра, а как раскидывать процессы на основе температуры? Ядро 6.9.9

Водяное охлаждение не предлагать, оно уже есть! Все окна раскрыты, но дом превращается в сауну!

--- Нашел решение ---

thermald работает замечательно, спасибо krasnh!

Перемещено hobbit из general

★★★★★

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

Можно попробовать kingstation

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

Не подходит, проблемы только в этой программе, она работает долго, и хорошо нагружает процессор, нужно ограничить только ее.

MOPKOBKA ★★★★★
() автор топика

Запусти виртуалку qemu, дай ей 8 ядер, внутри запускай что тебе надо. Больше восьми ядер она использовать не будет.

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

Безумный совет, через taskset можно ограничить на 8 ядер, и не надо никаких виртуалок. У меня главная проблема, в том как раскидать процессы по холодным ядрам, и перемещать их так, что бы процессор остывал.

MOPKOBKA ★★★★★
() автор топика

Все окна раскрыты, но дом превращается в сауну

Имхо окна имеет смысл открывать только если наружняя температура меньше внутренней. Надо делать так: ночь с открытыми окнами. Днём закрытые. Вряд-ли проц прогреет квартиру (вместе со стенами).

anonymous
()

Пробовал уже просто задать 8 фиксированных? Думаю ничего страшного не случится, температура примерно выровняется и так и так.

firkax ★★★★★
()

Для начала нужно разобрать процессор и сделать отдельное охлаждение для каждого ядра

anonymous
()

А вообще, надо расковырятт шедулер и вместо загруженности процессора заставить его использовать температуру... Но это какой-то совсем изврат. Ну и поставь лимиты программе <50% цпу.

Shadow ★★★★★
()

А thermald не спасет «отца русской демократии»? )

thermald - это демон Linux , используемый для предотвращения перегрева процессоров Intel. Этот демон активно управляет тепловыми параметрами с помощью P-состояний, T-состояний и драйвера Intel power clamp.

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

Про ограничение цпу что то не подумал, надо попробовать.

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

поставил, сейчас протестирую

Наверно не все так просто, в соседней теме пришлось под него ядро пересобирать:

Почитал выхлоп thermald, скачал сырцы я дра с кернел.орг и собрал свое ядро с подержкой powerclamp и RAPL
Pathfinder: Kingmaker (комментарий)

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

У меня уже собрано с ними, слава Патрику.

MOPKOBKA ★★★★★
() автор топика

Так, ты второй. Короче берёшь тазик и идёшь к крану сливаешь воду минуты две и всё это время держишь руки по локоть в этой воде. Затем наливаешь тазик и тащишь под стол, садишься и туда свои лапки, всё.

Я хочу выделить программе 8 ядер

cgroups/firejail

и заставить Linux перекидывать процесс между ядрами

Между ядрами оно перекидывается исходя из процентной загрузки, процентная загрузка зависит от частоты, если ядро долбится в сотку, но на деле там в сотку долбится только FPU блок например, при этом физически он в сотке, а в процентах на 50%, можно снизить его частоту тогда он и так и так будет долбится в сотку так как при снижении частоты вырастает процен загрузки и задача перекидывается автоматом на более свободное ядро.

Напиши скрипт который раз в секунду будет чекать загрузку ядер и если некое ядро в сотке более 20 секунд например, то сбрасывай его частоту в самое дно на пару секунд и сразу возвращай назад частоты на какие там у тебя фиксированные или на обычную динамическую типа ondemand во время твоих манипуляций с частотой выполнение будет переброшено на другое ядро.

Я такой фигнёй занимался, вроде работало, хотя может это было плацебо фиг знает.

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от LINUX-ORG-RU

cgroups/firejail

taskset -c 0,8 mycommandname, в слаке из коробки, что то стандартное.

Напиши скрипт который раз в секунду будет чекать загрузку ядер и если некое ядро в сотке более 20 секунд например, то сбрасывай его частоту в самое дно

Тротлить не хочется, хочется перебрасывать процессы, но вроде thermald хорошо себя показывает, порекомендовали выше, еще сейчас соберу chromium скажу.

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

thermald хорошо себя показывает

Первый раз слышу про это, интересно как оно работает, мне казалось просто взять ядру и сказать, «как только ядро процессора 1 оттарабанит свою задачу, продолжай её на ядре 2» невозможно. Хмььььььььььььььььььь🤔, а оказывается типа можно (но это не точно)

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от LINUX-ORG-RU

А я не знаю как оно работает, может не так, еще сам не читал. Вот тебе Firefox-перевод описания задействованного модуля ядра.

Рамка укропки питания обеспечивает последовательный интерфейс между ядром и пространством пользователя, что позволяет водителям укропки питания подвергать настройки пользовательскому пространству равномерно.

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

Удоли от греха подальше \O_O/

А на деле оно задействует различные косвенные механизмы, в зависимости от того что доступно на системе. От управления вертушкой разгоняя её или замедляя, до управления частотой через cpufreq, оно там вообще во все щели лезет пытаясь найти в системе рычажки для управления чем угодно что приводит к фактическому управлению температурой, охлад, частоты, приоритеты (кажется). А вот чего-то связанного с процессами и ядром я поглядев на сырцы по диагонали не нашёл. Там файлов дофига, может где и есть. Ну если комплексные меры приводят к более эффективному отводу тепла от камня динамически подстраиваясь, то пофиг как там оно работает.

LINUX-ORG-RU ★★★★★
()
Последнее исправление: LINUX-ORG-RU (всего исправлений: 1)

Посмотри в сторону cgroups. Там вроде как можно ограничить ресурсы для отдельных процессов.

u5er ★★★
()

А без thermald процесс долбился в одно ядро? Я просто не раз наблюдал в системном мониторе как ядра работают то одно, то другое. Посмотрел, thermald стоит. Если это он всё так организует. то хорошая штука.

avgust23
()

запах расправленного китайского пластика по всей квартире, виновник i9-14900K.

Ставить нормальное охлаждение а не экономить на кулере? Да ну, зачем.

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

В ОП посте написал:

Водяное охлаждение не предлагать, оно уже есть! Все окна раскрыты, но дом превращается в сауну!

Или предлагается подключить к водянке еще такой? https://www.coolershop.ru/image/cache/catalog/kulery/klassicheskie/Ecotronic-...

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

ночь с открытыми окнами

Это чтобы влажность в сотку долбилась

DumLemming ★★★
()

Погляди на фото кристалла, где там ядра и какую они площадь занимают. По отдельности они прям вот греться не могут.

Водяное охлаждение не предлагать, оно уже есть!

Если уже есть что-то типа MO-RA3, просто добавь воды^Wещё одну-другую секцию )

GAMer ★★★★★
()

Умираю от жары...

Кинь дурное. Вырубай всё и клади тушку на диван. Станет прохладнее, тогда включишь свою печку.

...запах расправленного китайского пластика по всей квартире, виновник i9-14900K...

Небось в ноуте сия поделка торчит?

sparkie ★★★★★
()

У меня так было на FX и это еще в те времена когда хватало БП на 500вт. Хотя оно и понятно, даже от лампочки 60 ватт летом жарко, а тут если еще 400 ватт под ногами то совсем не весело.

Aber ★★★★★
()

поставь на водянку теплообменник и подавай туда холодную из крана, а выход сливай в канализацию.

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

...есть ноуты с водяным охлаждением?

Есть. Я не знаю, что у ТСа, но ноутбуки на СЖО есть.

sparkie ★★★★★
()

если у нас ннесколько кристаллов или хотя-бы чиплетная сборка то наверное это имело бы смысл. Но если на одном кристалле - то смахивает на форму онанизма. Ну да там есть разница между хоспотом и какими-то дальними углами но уж в плане нагрева толку мало.

Даже наоборот - в текущем сетапе процессор улетит троттлить по хотспоту и суммарно жрать и соответственно греться будет меньше.

И кстати в противоположность теме - не пробовали ли уважаемые джентльмены наоборот временно выводить несколько ядер из оборота? Смысл примерно в следующем - ноут от батареи на офисной нагрузке. Тут по большому счету не нужно 8 жирных ядер 16 потоков, без потери производительности можно смело вырубать половину. Но скедъюлер настроен именно на выжимку производительности - и вместо того чтобы немного потупить и закинуть очередную мелкую задачу в очередь к уже работающему ядру будит еще одно - соответственно платим цену за вывод ядра из энергосберегающего C-стейта, потом на усыпление его обратно и все ради сомнительных тестов в попугаях.

Но понятно что есть куча задач когда нужно задействовать все ядра - поэтому хотелось бы иметь возможность включать-отключать ядра скажем по состоянию источника питания - AC или батарея.

Qui-Gon ★★★★★
()
Ответ на: комментарий от GAMer

По отдельности они прям вот греться не могут.

До 40 градусов отличие бывает. Смотрю через sensors.

MOPKOBKA ★★★★★
() автор топика

Покрась дом в белый цвет или установи зеркала

novus ★★
()

Не забудь выкрутить свой монитор на power saving, они могут быть на удивление потные.

Bfgeshka ★★★★★
()

thermald работает замечательно

Можно ещё глянуть Irqbalance https://github.com/Irqbalance/irqbalance

Irqbalance is a daemon to help balance the cpu load generated by interrupts across all of a systems cpus. Irqbalance identifies the highest volume interrupt sources, and isolates each of them to a single unique cpu, so that load is spread as much as possible over an entire processor set, while minimizing cache miss rates for irq handlers.

виновник i9-14900K.

Alderon Games публично заявила о дефективности CPU Intel

процессоры Intel 13 и 14-ого поколений, изначально исправно работающие, со временем начинают давать сбои, частота которых растёт по нарастающей до полного отказа процессора.

anonymous
()

Все окна раскрыты, но дом превращается в сауну!

выделить программе 8 ядер, и заставить Linux перекидывать процесс между ядрами, так, что бы они не нагревались, с горячих на холодные

Если цель снизить мощность нагрева, то гонять процессы с горячих ядер на холодные просто не имеет смысла, потому что без разницы, какое из ядер выделяет свои, скажем, 15 Ватт. По сути ты просто смещаешь нагреватель на пару миллиметров в сторону.

Более того, перемещение процесса на холодные ядра может усилить нагрев, потому что холодные ядра будет буститься, пока их температура не дойдёт до заветных 95°C. А если оставить процесс на уже прогретом ядре, частоты и тепловыделение будут меньше.

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

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

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

гном лупит на 250вт сам по себе, лучше его удалить

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

Это, конечно, правда, и разница там может получиться приличная, процентов 10-20%. Но пересилит ли это за разницу между бустом и номинальной мощностью для отдельных ядер, тот ещё вопрос.

i-rinat ★★★★★
()

В комнате трудно дышать, пот льется ручьем, запах расправленного китайского пластика по всей квартире, виновник i9-14900K.

Я правильно понимаю что на 14900K денюжка нашлась, а на кондей - нет?

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

Я ж не в лосанджелесе живу, а охлаждать i9 еще и кондиционером, это не тот уровень, к которому я готов.

MOPKOBKA ★★★★★
() автор топика

В комнате трудно дышать, пот льется ручьем, запах расправленного китайского пластика по всей квартире, виновник i9-14900K.

Принеси хозяюшка водицы напиться, а то так жрать хочется что аж переночевать негде.

Jameson ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.