OpenCL: внутренние тесты реализации в MQL5 - страница 43

 
Mathemat:
И перегружался. Один хрен: OpenCL-Z не видит CPU как девайс. Вообще ничего не видит.
Не убедительно.  Ты скрипт с OpenCL запусти какой-нибудь.  OpenCL-Z - не критерий истины.
 
MetaDriver: Не убедительно.  Ты скрипт с OpenCL запусти какой-нибудь.  OpenCL-Z - не критерий истины.

Да пытался, в МТ5 даже строки такой нет об OpenCL при запуске. Раньше была, и это была гарантия исполнения OpenCL кода.

fyords: Я пользуюсь для деинстала Your Uninstaller! PRO, он и реестр чистит.

А если попробовать удалить в диспетчере устройств ядра поцессора, потом перегрузится, винда сунет новые дрова для проца, может и OpenCL подхватит.

Попробую - как последнее средство. Не люблю софт, который в реестр лазит.

О, свежая идея! А как ядра удалить из диспетчера?

joo: Зайди в безопасном режиме и попробуй удалить в рукопашную ветки из в реестре с любым упоминанием об OpenCL. Потом зайди в систему в нормальном режиме и ставь драйвер по новой.

Хе-хе, их уже нет...

P.S. Наконец-то встала.

 
Mathemat:
...

О, свежая идея! А как ядра удалить из диспетчера?

...

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

Ура товарищи !!!:)

 
fyords: Как обычно на ядре правой кнопкой мыши->удалить, после винда попросит перегрузится - нет, все ядра удалить надо, а потом перегружаться

А где это ядро в диспетчере - какой процесс?

Ну да, понял. Но до этого не дошло. Как я умудрился все подчистую удалить - до сих пор не понимаю. Видимо, потому, что удалял AMD APP SDK не из Windows, а с помощью самого инсталлятора от AMD...

 
Mathemat:
А где это ядро в диспетчере - какой процесс?
В диспетчере устройств (на Мой компьютер правой мышкой->управление->диспетчер устройств)
 

Прогнал _Tast_Mand. Ну у меня время рекордное (при буфере 480):

2012.03.22 01:31:21    Tast_Mand_ (EURUSD,H1)    54741 msec

Увеличение буфера ни к каким падениям не приводит. Камень греется немного и жрет по-прежнему свои 20 ватт, хотя оба ядра - на 100%.

 

Mathemat:

... жрет по-прежнему свои 20 ватт ...

Если не ошибаюсь, у Вас Pentium G840 @ 2.8 GHz. Так с каких пор он жрет 20 Ватт? Вроде он 65 Ватт?
 
fyords: Если не ошибаюсь, у Вас Pentium G840 @ 2.8 GHz. Так с каких пор он жрет 20 Ватт? Вроде он 65 Ватт?

Да, правильно. Максимум, который я из него выжал, был около 40 ватт - на CPUBurn или на LinPack.

TDP корпорация Intel назначает как мощность, которая будет рассеиваться в самом худшем случае. Я еще не видел, чтобы хоть когда-нибудь на обычных приложениях он жрал больше 25 ватт. И сейчас терминал забрал почти 100%, а камень потихоньку греется (макс. темпа ядер - 54 и 57) и выполняет задачу с буфером 48000.

2 joo: Андрей, как ты думаешь, вот такой код эквивалентен твоему или нет?

"__kernel void MFractal(                                    \r\n"
"                       __global int *out                   \r\n"
"                      )                                    \r\n"
"  {                                                        \r\n"
"   int i = get_global_id(0);                               \r\n"
"   for(int u=0;u<100000000;u++)                            \r\n"
"   {                                                       \r\n"
"    out[i]+=u;                                             \r\n"
"    bool b=(out[i]<=10000);                                \r\n"
"    out[i]*=(int)b;                                        \r\n"
"   }                                                       \r\n"
"   out[i]+= i;                                             \r\n"
"  }                                                        \r\n";
 
Mathemat:

2 joo: Андрей, как ты думаешь, вот такой код эквивалентен твоему или нет?

Похоже, что да.

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

Твой код должен быть, наверное, медленнее, так как на каждой итерации цикла заново объявляется переменная b.

 
joo: Твой код должен быть, наверное, медленнее, так как на каждой итерации цикла заново объявляется переменная b.

Да, медленнее - процентов на 20.

Попробовал вынести объявление за пределы цикла. Время чуть меньше стало, но больше, чем было. Странно, от if-то мы избавились...

Причина обращения: