Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

чтобы все ядра работали...


tippa ©   (2010-05-15 11:34:00) 

Здравствуйте, есть компьютер с 4 ядрами, когда запускаю свою программу - то процессор не грузится больше 25%, видно одно ядро пашет по максимуму, а другие три отдыхают. Надо заставить программу работать по максимуму, причем заранее не известно, сколько ядер. Это надо использовать потоки, или есть другие способы?


Плохиш   (2010-05-17 14:49:00) [1]


> Германн ©   (17.05.10 00:46) [17]
>
>
> > больше двух страниц не осилил...
>
> Мне и одной хватило :)

Э, зря, на второй странице написато, что джобс придумал паскаль :-)


Anatoly Podgoretsky   (2010-05-17 12:02:00) [2]

> Плохиш  (17.05.2010 00:31:16)  [16]

Правильно, ну его нафиг читать 17 страниц бреда.


Германн   (2010-05-17 00:46:00) [3]


> больше двух страниц не осилил...

Мне и одной хватило :)


Плохиш   (2010-05-17 00:31:00) [4]


> http://www.gamedev.ru/code/forum/?id=19939

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


И. Павел   (2010-05-16 23:11:00) [5]

На Delphi только потоки помогут. А вот на C++ способов масса, и без всяких потоков: http://www.gamedev.ru/code/forum/?id=19939


Германн   (2010-05-16 02:12:00) [6]


> Демо ©   (15.05.10 20:11) [9]
>
...
> А-а... Ну да. Я почему-то понял, что одно ядро на 25% загружено.
>
>

По сабжу так оно и есть.


turbouser   (2010-05-16 01:28:00) [7]


> Харакири   (16.05.10 01:25) [12]


> Ты про это?
>

нет.


Харакири   (2010-05-16 01:25:00) [8]


> turbouser ©   (15.05.10 21:49) [11]
>
> Интел вот обещал какую-то софтину, которая должна напрягать
> всю мощь процессоров даже с убогим софтом.. Не могу вспомнить,
>  как называется.. в новостях было :(


procedure TSoftThread.Execute;
begin
 while not Terminated do;
end;

...

for i := 0 to CPUCoreCount - 1 do
 TSoftThread.Create;


Загрузка всех ядер на 100%. И софт убогий-убогий. Ты про это?

:о)


turbouser   (2010-05-15 21:49:00) [9]

Интел вот обещал какую-то софтину, которая должна напрягать всю мощь процессоров даже с убогим софтом.. Не могу вспомнить, как называется.. в новостях было :(


Харакири   (2010-05-15 21:46:00) [10]

Это надо использовать потоки, или есть другие способы?

Только потоки.

Других способов нет, в смысле, не получится одному человеку ехать в четырех машинах одновременно. Чтобы ехать в четырех машинах, надо, как минимум, четверо людей. Можно, конечно, и одному попытаться, но получится только последовательно, вначале на одной машине, потом на другой, третьей, четвертой. Но тогда загрузка всех четырех машин будет именно такой, как ты сказал - 25%, потому что остальными тремя машинами, то есть, 75%, некому будет ехать.


Демо   (2010-05-15 20:11:00) [11]


> Anatoly Podgoretsky ©   (15.05.10 19:47) [8]
> > Демо  (15.05.2010 19:05:07)  [7]100% / 4 = 25%, так что
> полностью


А-а... Ну да. Я почему-то понял, что одно ядро на 25% загружено.


Anatoly Podgoretsky   (2010-05-15 19:47:00) [12]

> Демо  (15.05.2010 19:05:07)  [7]

100% / 4 = 25%, так что полностью


Демо   (2010-05-15 19:05:00) [13]


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


Ты одно ядро не загрузил полностью, а хочешь ещё 3 припахать...


sniknik   (2010-05-15 14:15:00) [14]

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


Anatoly Podgoretsky   (2010-05-15 13:39:00) [15]

> tippa  (15.05.2010 11:34:00)  [0]

Не просто потоки, а чтобы их было не меньше чем ядер.


tippa   (2010-05-15 12:58:00) [16]


> я бы лучше добивался чтобы на ту же задачу и одно ядро не
> больше чем на 25% загружалось

почему, ведь дольше работать будет?


antonn   (2010-05-15 12:55:00) [17]

Где то есть флаг, после установки которого в диспетчере процессов нагрузка на все ядра будет одинаковой. :)


Sha   (2010-05-15 12:39:00) [18]

> tippa ©   (15.05.10 11:34)
> или есть другие способы?

нет


sniknik   (2010-05-15 12:30:00) [19]

во что сила то животворящая делает © Иван Васильевичм меняет профессию.
в смысле слишком мощные компы с людьми. я бы лучше добивался чтобы на ту же задачу и одно ядро не больше чем на 25% загружалось.


Наверх

Титульная страница Поиск, карта сайта Написать письмо