Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.08.10;
Скачать: [xml.tar.bz2];

Вниз

Программы для модогядерных процессоров   Найти похожие ветки 

 
DrPass ©   (2008-06-19 16:15) [40]


> KSergey ©   (19.06.08 16:05) [38]


> Я говорю о практических наблюдениях. Теория меня не интересует

Ну так и я в общем-то работал в свое время на 386 без сопра. Ничего, винда 3.1 вполне шустренько жужжала (на 8 мб ОЗУ). Это относительно современный софт сопр пользует по-полной где надо и не надо. А в начале 90-х без него вполне успешно обходились в большинстве случаев.


 
stas ©   (2008-06-19 16:25) [41]

Fin   (19.06.08 13:01)  
Смотря какое приложение, если сложных расчетов не делает не стоит заморачиваться, винда отдаст остальные ядра другим приложениям либо распределит между вашим и остальными приложениями.
А если ведутся какие-то расчеты типа перебор паролей в цикле, сжатие архива, обработка видео, тогда нужно определить сколько ядер в системе, и запустить столько циклов расчета (каждый со своими параметрами) в разных потоках.


 
KSergey ©   (2008-06-19 16:56) [42]

> DrPass ©   (19.06.08 16:15) [40]
> Ну так и я в общем-то работал в свое время на 386 без сопра.
>  Ничего, винда 3.1 вполне шустренько жужжала (на 8 мб ОЗУ).

Я не говорю о том шустро или нет.
Я говорю о том, что без сопра одна и та же машина винду гоняла заметно медленнее. Вот и все.
А уж нафик ей FPU - я не знаю. Видимо координаты окон даблами описаны унутрях, либо синусы активно юзаются при перемещении окон :)


 
Anatoly Podgoretsky ©   (2008-06-19 17:04) [43]

> KSergey  (19.06.2008 15:38:28)  [28]

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


 
Anatoly Podgoretsky ©   (2008-06-19 17:06) [44]

> KSergey  (19.06.2008 15:39:29)  [29]

Я имел удовольствие работать и с SX и DX разница небольшая есть, но далеко не в пользу SX или DX, а в пользу той платы где был установлен соопроцессор.


 
stas ©   (2008-06-19 21:08) [45]

Fin   (19.06.08 15:53) [33]
Можно принудительно отправить поток на одно ядро, но єто может замедлить работу.
Делал такой опыт: Запускал программу кодирования видео (однопоточную), при этом нагрузка была на 2 ядра по 50% +1-5% других приложений, система работала без тормозов
стоило перекинуть процесс пережатия на одно ядро,
как все жутко начало тормозить, при этом 1 ядро загружено на 100%, 2-е 1-5%


 
VirEx ©   (2008-06-20 07:54) [46]


>  [45] stas ©   (19.06.08 21:08)

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


 
Anatoly Podgoretsky ©   (2008-06-20 09:00) [47]

> VirEx  (20.06.2008 7:54:46)  [46]

Какая разница, если это не 100% то процессор простаивает, и без разницы простаивает одинаково или по разному.
Неправильно когда один нагружен на 100% а второй еле еле.


 
VirEx ©   (2008-06-20 09:19) [48]


> Неправильно когда один нагружен на 100% а второй еле еле.

вот про это и говорю


 
Anatoly Podgoretsky ©   (2008-06-20 10:22) [49]

> VirEx  (20.06.2008 9:19:48)  [48]

Надо, что бы оба на 100%


 
Fin   (2008-06-20 11:07) [50]


> Anatoly Podgoretsky ©   (20.06.08 10:22) [49]
> > VirEx  (20.06.2008 9:19:48)  [48]Надо, что бы оба на 100%

как этого добиться или хотя бы приблизиться к таким показателям?


 
DVM ©   (2008-06-20 11:09) [51]


> как этого добиться или хотя бы приблизиться к таким показателям?

много потоков создавай в каждом интенсивная работа - будет тебе 2 по 100


 
KSergey ©   (2008-06-20 11:36) [52]

> DVM ©   (20.06.08 11:09) [51]
> много потоков создавай в каждом интенсивная работа

while true do
begin
  i := i + 1;
end;


 
Skyle ©   (2008-06-20 11:44) [53]


> KSergey ©   (20.06.08 11:36) [52]

while true do ;


 
Anatoly Podgoretsky ©   (2008-06-20 11:56) [54]

> Fin  (20.06.2008 11:07:50)  [50]

Заменить программу.


 
Fin   (2008-06-20 12:16) [55]


> Anatoly Podgoretsky ©   (20.06.08 11:56) [54]
> > Fin  (20.06.2008 11:07:50)  [50]Заменить программу.


Ну это то конечно понятно.

Перефразирую вопрос. Собственно я уже упоминал, что сам процесс распоралеливания алгоритма выполняющего основную задачу оставляю за рамками обсуждения, добавлю только то, что исхожу из того, что он более или менее сбалансирован.
И вот тут интересно, то как (не именно код, а стратегия) управлять или распределять нагрузку по ядрам.
Как вариант вообще об этом не думать и то как поступит ОС так пусть и будет или имеет смысл вмешиваться.


 
DVM ©   (2008-06-20 12:17) [56]


> или имеет смысл вмешиваться.

Лучше не вмешиваться.


 
Котик Б   (2008-06-20 12:27) [57]

Уважаемый автор вопроса. Моё мнение таково:
- если вы не знаете зачем вам нужно распаралелить работу программы, то лучше пока этого не делать :)
- если ваша программа работает стабильно в один поток на 2х (3х-4х) процессоре - радуйтесь - она не мешает работать другим программам !


 
KSergey ©   (2008-06-20 12:32) [58]

> Skyle ©   (20.06.08 11:44) [53]
> while true do ;

Хотелось сделать работу поинтенсивнее :)


 
Fin   (2008-06-20 12:39) [59]


> Котик Б   (20.06.08 12:27) [57]

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


 
Котик Б   (2008-06-20 12:52) [60]

Тогда мне непонятен ваш подход...
Вместо того чтобы найти и прочитать книжку или 2-3 статьи - вы хотите услышать сотни разных мнений, каждое из которых основано на собственном опыте.

Дабы не быть голословным - вот вам для затравки :)
http://www.dtf.ru/articles/read.php?id=39888


 
VirEx ©   (2008-06-20 16:28) [61]


>  [49] Anatoly Podgoretsky ©   (20.06.08 10:22)
> > VirEx  (20.06.2008 9:19:48)  [48]
>
> Надо, что бы оба на 100%

вот именно про это и говорю :)


 
KSergey ©   (2008-06-20 17:32) [62]

Наткнулся сегодня.
По-моему - очень интересная статья на заданную тему.

http://www.dtf.ru/articles/read.php?id=39888


 
Fin ©   (2008-06-20 22:16) [63]


> KSergey ©   (20.06.08 17:32) [62]


уже было [60]

но статья интересная.


 
полуиспользователь   (2008-06-20 22:48) [64]

Кстати, коль уж идёт речь о более одного процессорных системах, объясните пож., как это работает и чем управляется. Нагрузку на процессоры распределяет сама ОС, независимо от многопоточности приложения или оно должно быть многопоточным?

Я заметил при видеообработке на системе AMD Athlon 64 x2 XP5000+:
с Ulead VideoStudio 9, при кодировании уже непосредственно в DVD формат,
загружен только один процессор на все сто, другой же абсолютно бездействует. А вот при использовании Pinnacle Video Studio 10+, работают оба процессора на все сто. И интересно, что результат по скорости не в два раза а где-то в три, а то и поболее (субъективное измерение :-)) в пользу Pinnacle. Вот только Ulead Studio работает намного надёжнее: Pinnacle частенько виснет :-(


 
Игорь Шевченко ©   (2008-06-20 22:58) [65]


> очень интересная статья на заданную тему.


интересная, хоть я к игрушкам никоим боком.


 
Игорь Шевченко ©   (2008-06-20 22:59) [66]


> Нагрузку на процессоры распределяет сама ОС, независимо
> от многопоточности приложения или оно должно быть многопоточным?
>


Нагрузку распределяет сама ОС. Приложение должно быть многопоточным, чтобы выполняться одновременно на двух процессорах.


 
полуиспользователь   (2008-06-20 23:12) [67]


> Игорь Шевченко ©   (20.06.08 22:59) [66]
>
> Нагрузку распределяет сама ОС. Приложение должно быть многопоточным,
>  чтобы выполняться одновременно на двух процессорах.

Спасибо. Я так и думал. Жаль, что Ulead Studio 9 кодирует в одном потоке. Есть конечно новые версии, но при каждом обновлении за всё нужно платить.
 Вывод: если приложение, работающее в одном потоке и соответственно, неспособное распределиться по процессорам, переделать на многопоточность - можно сорвать дополнительные "бабки", разумеется, если оно интенсивно пожирает процессорное время.


 
Игорь Шевченко ©   (2008-06-20 23:16) [68]


>  Вывод: если приложение, работающее в одном потоке и соответственно,
>  неспособное распределиться по процессорам, переделать на
> многопоточность - можно сорвать дополнительные "бабки",
> разумеется, если оно интенсивно пожирает процессорное время.
>


В случае, если его возможно распараллелить - безусловно.


 
axis_of_evil ©   (2008-06-20 23:27) [69]

> http://www.dtf.ru/articles/read.php?id=39888&page=5

Немного поэкспериментировав, я наконец выяснил, что наткнулся на распространенную проблему архитектур с распределенной памятью (shared memory architectures): одновременный доступ двух процессоров к близким участкам памяти заставляет внутренний контроллер сбрасывать кэш памяти.

После того, как я разнес структуры данных потоков на 256 байт путем добавления небольшого массива:

TMyThreadData data;
BYTE guard[256];
TMyThreadData data2;
Все стало на свои места:

...

Странно, но эта проблема не проявилась на HT-процессоре.


кто-нибудь может прокомментировать последнее?
// тесты автора, честно говоря, не разбирал - поверил на слово


 
Игорь Шевченко ©   (2008-06-20 23:36) [70]


> Странно, но эта проблема не проявилась на HT-процессоре.
>  
>
> кто-нибудь может прокомментировать последнее?


Могу только сказать, что HT - это не совсем полноценная многоядерность. В частности, кэш, насколько мне известно у них общий.


 
boa_kaa ©   (2008-06-20 23:43) [71]


> axis_of_evil ©   (20.06.08 23:27) [69]

прочитал...
не пойму только одного: автор ставил хотфикс майкрософтовский?


 
Leonid Troyanovsky ©   (2008-06-21 12:04) [72]


> axis_of_evil ©   (20.06.08 23:27) [69]

> кто-нибудь может прокомментировать последнее?

http://rsdn.ru/?article/baseserv/RUThreadingMethodology.xml

--
Regards, LVT.


 
axis_of_evil ©   (2008-06-21 23:20) [73]


Игорь Шевченко ©   (20.06.08 23:36) [70]
> В частности, кэш, насколько мне известно у них общий.

это объясняет :>
спасибо - мне как раз было интересно, чем реализация НТ отличается от реализации двух процессоров


 
KSergey ©   (2008-06-22 08:49) [74]

> Fin ©   (20.06.08 22:16) [63]
> > KSergey ©   (20.06.08 17:32) [62]
> уже было [60]

И правда, извиняюсь за невнимательность. Хотя по тому посту у меня не хватило соображения ее почитать, наткнулся потом случайно :)


 
KSergey ©   (2008-06-22 08:57) [75]

> Игорь Шевченко ©   (20.06.08 22:58) [65]
> интересная

http://www.dtf.ru/articles/read.php?id=39888

Люди, а нет ли у кого доступа к комментариям? А то тама странные люди какие-то на этой сервере живут, только игрушечников пускают. А хотелось бы почитать, вдруг чего интересное есть.


 
ol'ka   (2008-06-22 21:49) [76]


> Dmitry S ©   (19.06.08 14:08) [8]
>
> > P.S. Моддинговые процессоры - а это идея.... :)
>
> Я както давно мечтал, чтобы на видеопроцессоре в качестве
> верхней поверхности микросхемы был маленький экран, который
> показывает тоже самое, что на мониторе:)

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


 
axis_of_evil ©   (2008-06-23 00:20) [77]


> Leonid Troyanovsky ©   (21.06.08 12:04) [72]

спасибо за ссылку :>


 
stas ©   (2008-06-23 10:06) [78]

полуиспользователь   (20.06.08 22:48) [64]
Ulead кодирует медленно и неочень качественно, лучше maincondept, проблем никогда небыло использует многопоточность а также SSE  и т.д.


 
Slym ©   (2008-06-23 10:43) [79]

А какже конвееры? они и на одном ядре "паралелят"


 
Fin   (2008-06-23 14:39) [80]


> Slym ©   (23.06.08 10:43) [79]
> А какже конвееры? они и на одном ядре "паралелят"

ну этот вопрос имхо вообще не из той оперы и что бы каким то образом ещё пытаться оптимальнее подстроиться под конвер, то скоре и писать программу надо как минимум на асемблере.



Страницы: 1 2 3 вся ветка

Форум: "Прочее";
Текущий архив: 2008.08.10;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.62 MB
Время: 0.008 c
11-1192387325
INFINITY
2007-10-14 22:42
2008.08.10
PTimer


15-1214323157
Жёсткий
2008-06-24 19:59
2008.08.10
Жёсткий диск


11-1192280293
Elec3C
2007-10-13 16:58
2008.08.10
F12


2-1215514162
Newss
2008-07-08 14:49
2008.08.10
работа с базой данных


2-1215436005
Сергей
2008-07-07 17:06
2008.08.10
Почему не подключает Winrar? Sorry





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский