![]() |
Запуск процесса на нескольких ядрах в линукс минт
Добрый день.
Попал в руки старый (в прошлом игровой) комп с Core2Quad Q9300, 8 гигами оперативки, NVIDIA GTX 650Ti и 27 дюймовым монитором от Dell (более подробную информацию по компу забил в конфигурацию, если это кому-то интересно). Решил выделить под Линук Минт пол-терабайта и попробовать пожить с ним как с домашней настольной системой. В числе прочего установил через PlayOnLinux клиент Steam и решил запустить одну из старых игр. А именно King's Bounty - Warriors of the North. Игра запустилась, но с разной периодичностью (от 20 минут до нескольких часов непрерывной работы) зависает. Ковыряние с игровыми настройками толку не дало. Даже если они опущенные до минимума все равно неизбежно (хотя и не предсказуемо) наступает зависание. Мониторинг ситуации в системном мониторе показал, что из четырех ядер, загружено (практически до предела) только одно. Собственно, вопрос: Известен ли кому-нибудь, какой-нибудь способ заставить принудительно работать над процессом несколько (2-4) ядер процессора? Судя по ссылкам в интернете для винды подобные решения http://www.playground.ru/cheats/king...essorah-48438/ есть. А вот для линукса? Говорят в нем можно настроить все что угодно. Но с какого края зайти? |
Если в минт ядро используется многоядерное, то это проблема приложения (собрано без поддержки потоков).
|
Цитата:
|
Цитата:
|
Цитата:
Цитата:
Цитата:
|
Зависит от кода приложения. В лучшем случае, если код программы открытый, то пересобрать программу с соответствующими библиотеками. Как я понимаю, приложение старое, собрано под один процессор, и думаю не современный. Тут ничего сделать нельзя.
|
Цитата:
|
Цитата:
Цитата:
Параметры у него, правда, чуть похуже: Материнская плата такая же. Core2Duo E6750, 4 гб ОЗУ, такая же видеокарта NV GTX 650Ti, Win7 После запуска игры без данной программы, кулер на процессоре шел на взлет. Зависаний, правда, не дождался. Не терпелив. После установки CPU Control наступила тишина. Так что наверное какое-то решение все-таки есть. И у меня к данному вопросу интерес скорее академический. Если для винды решаемо, то может найдутся программисты, что и для линуха что-то подобное придумают (а может быть уже придумали?). |
StarMAUGLI, чудес не бывает. Если игра шла на одном ядре и оно сильно грелось - кулел крутился быстро. Когда игра стала пеиодически перебрасываться с одного ядра на другое (Линь сам это делает, если что), то средний нагрев мог быть ниже и от этого кулер заткнулся. Никакого отношения к многопоточности это не имеет. И ещё это не добавило ни капли производительности. Точнее даже несколкьо снизило из-за накладных расходов на переключения контекста.
|
shisik, Спасибо, за разъяснение.
Производительность в данном случае не важна. Скорее комфорт пользователя (тишина и по возможности отсутствие зависаний). Цитата:
Жаль, что решения для моей проблемы под линуксом еще не придумали. :( |
Цитата:
Цитата:
Скрытый текст
![]() Так выглядит загрузка процессора по ядрам, если запустить один тяжелый поток: Код:
xz -z -c /dev/urandom > /dev/null |
Время: 17:53. |
Время: 17:53.
© OSzone.net 2001-