Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> распределение нагрузки процесса 
:(
    Опции темы
Hiori
Дата 24.1.2017, 08:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 29.3.2016

Репутация: нет
Всего: нет



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

Это сообщение отредактировал(а) bems - 18.2.2017, 23:55
PM MAIL   Вверх
Hiori
Дата 17.2.2017, 07:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 29.3.2016

Репутация: нет
Всего: нет



забыла отписать, тема давно не актуальна и решена
через CreateToolhelp32Snapshot отловила pid процесса, после чего из GetSystemInfo получаю количество процессоров и составляю битовую маску и:
AHandle := OpenProcess( PROCESS_ALL_ACCESS, false, pid );
GetProcessAffinityMask( AHandle, pm, sm );
if( pm <> bitmask )then SetProcessAffinityMask( AHandle, bitmask );
CloseHandle( AHandle );

причем, можно не заморачиваться с маской, достаточно установить bitmask := $F, но мне показалось, что лучше посчитать

может не совсем правильно, но решилось и работает

Это сообщение отредактировал(а) Hiori - 17.2.2017, 07:18
PM MAIL   Вверх
bems
Дата 19.2.2017, 03:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 21
Всего: 88



а почему просто не start /AFFINITY ?


--------------------
Обижено школьников: 8
PM MAIL   Вверх
Hiori
Дата 21.2.2017, 05:59 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 29.3.2016

Репутация: нет
Всего: нет



если бы это было возможно, то еще проще в диспетчере задач протыкать галочки. проблема в том, что это все нужно было для использования достаточно широким кругом людей, объяснить которым, что это все значит - достаточно сложно... зато галочка "распределить нагрузку" понятна сразу smile

я там помимо всего прочего прикрутила так называемый Windowed Fullscreen и прочие плюшки... поэтому и хотелось все в одном

Это сообщение отредактировал(а) Hiori - 21.2.2017, 06:19
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: WinAPI и системное программирование"
Snowybartram
MetalFanbems
PoseidonRrader
Riply

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • 99% ответов по WinAPI можно найти в MSDN Library, оставшиеся 1% здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.1042 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.