Медленно оптимизирует. Что я делаю не так.

 

Еще раз прошу прощения, за возможно давно проговоренную тему, но мне почему-то кажется, что тестирование должно идти быстрее. Я создал советника пустышку, с двумя параметрами, хм советник просто по шаблону. Задал еврубакс, все тики, медленная оптимизация. Получилось 100 прогонов. Меня сообственно смушает время одного годового  прогона.


Вот логи. Именно при отключенном втором локальном ядре.


2011.01.11 19:25:13    Core 1    connect closed
2011.01.11 19:25:13    Tester    optimization passed in 1 minutes 06 seconds
2011.01.11 19:25:13    Tester    optimization finished, total passes 10
2011.01.11 19:25:13    Core 1    pass 9 returned result 5000.00 in 6 sec
2011.01.11 19:25:07    Core 1    pass 9 started
2011.01.11 19:25:07    Core 1    pass 8 returned result 5000.00 in 7 sec
2011.01.11 19:25:00    Core 1    pass 8 started
2011.01.11 19:25:00    Core 1    pass 7 returned result 5000.00 in 6 sec
2011.01.11 19:24:54    Core 1    pass 7 started
2011.01.11 19:24:54    Core 1    pass 6 returned result 5000.00 in 7 sec
2011.01.11 19:24:47    Core 1    pass 6 started
2011.01.11 19:24:47    Core 1    pass 5 returned result 5000.00 in 6 sec
2011.01.11 19:24:41    Core 1    pass 5 started
2011.01.11 19:24:41    Core 1    pass 4 returned result 5000.00 in 6 sec
2011.01.11 19:24:35    Core 1    pass 4 started
2011.01.11 19:24:35    Core 1    pass 3 returned result 5000.00 in 7 sec
2011.01.11 19:24:28    Core 1    pass 3 started
2011.01.11 19:24:28    Core 1    pass 2 returned result 5000.00 in 6 sec
2011.01.11 19:24:22    Core 1    pass 2 started
2011.01.11 19:24:22    Core 1    pass 1 returned result 5000.00 in 7 sec
2011.01.11 19:24:15    Core 1    pass 1 started
2011.01.11 19:24:15    Core 1    pass 0 returned result 5000.00 in 8 sec
2011.01.11 19:24:07    Core 1    common synchronization completed
2011.01.11 19:24:07    Core 1    pass 0 started
2011.01.11 19:24:07    Core 1    authorized (agent build 375)
2011.01.11 19:24:07    Core 1    connected
2011.01.11 19:24:07    Core 1    connecting to 127.0.0.1:3000
2011.01.11 19:24:07    Tester    complete optimization started
2011.01.11 19:24:07    Tester    Experts\ae1.ex5 on EURUSD,M1 from 2010.01.01 00:00 to 2011.01.10 00:00



То есть 10 прогонов - за 66 секунд. 6.6 секунд один прогон. С одной стороны мало, но что-то мне память подсказывает что на МТ4 было быстрее.


Процессор конечно не ахти какой Core2Duo  T7500 2.2 гига, x64 , памяти 4 гига. Но на старом P4 2.4 гига (удаленно) ровно в два раза медленнее

 
Academic:

Еще раз прошу прощения, за возможно давно проговоренную тему, но мне почему-то кажется, что тестирование должно идти быстрее. Я создал советника пустышку, с двумя параметрами, хм советник просто по шаблону. Задал еврубакс, все тики, медленная оптимизация. Получилось 100 прогонов. Меня сообственно смушает время одного годового  прогона.


Вот логи. Именно при отключенном втором локальном ядре.


2011.01.11 19:25:13    Core 1    connect closed
2011.01.11 19:25:13    Tester    optimization passed in 1 minutes 06 seconds
2011.01.11 19:25:13    Tester    optimization finished, total passes 10
2011.01.11 19:25:13    Core 1    pass 9 returned result 5000.00 in 6 sec
2011.01.11 19:25:07    Core 1    pass 9 started
2011.01.11 19:25:07    Core 1    pass 8 returned result 5000.00 in 7 sec
2011.01.11 19:25:00    Core 1    pass 8 started
2011.01.11 19:25:00    Core 1    pass 7 returned result 5000.00 in 6 sec
2011.01.11 19:24:54    Core 1    pass 7 started
2011.01.11 19:24:54    Core 1    pass 6 returned result 5000.00 in 7 sec
2011.01.11 19:24:47    Core 1    pass 6 started
2011.01.11 19:24:47    Core 1    pass 5 returned result 5000.00 in 6 sec
2011.01.11 19:24:41    Core 1    pass 5 started
2011.01.11 19:24:41    Core 1    pass 4 returned result 5000.00 in 6 sec
2011.01.11 19:24:35    Core 1    pass 4 started
2011.01.11 19:24:35    Core 1    pass 3 returned result 5000.00 in 7 sec
2011.01.11 19:24:28    Core 1    pass 3 started
2011.01.11 19:24:28    Core 1    pass 2 returned result 5000.00 in 6 sec
2011.01.11 19:24:22    Core 1    pass 2 started
2011.01.11 19:24:22    Core 1    pass 1 returned result 5000.00 in 7 sec
2011.01.11 19:24:15    Core 1    pass 1 started
2011.01.11 19:24:15    Core 1    pass 0 returned result 5000.00 in 8 sec
2011.01.11 19:24:07    Core 1    common synchronization completed
2011.01.11 19:24:07    Core 1    pass 0 started
2011.01.11 19:24:07    Core 1    authorized (agent build 375)
2011.01.11 19:24:07    Core 1    connected
2011.01.11 19:24:07    Core 1    connecting to 127.0.0.1:3000
2011.01.11 19:24:07    Tester    complete optimization started
2011.01.11 19:24:07    Tester    Experts\ae1.ex5 on EURUSD,M1 from 2010.01.01 00:00 to 2011.01.10 00:00



То есть 10 прогонов - за 66 секунд. 6.6 секунд один прогон. С одной стороны мало, но что-то мне память подсказывает что на МТ4 было быстрее.


Процессор конечно не ахти какой Core2Duo  T7500 2.2 гига, x64 , памяти 4 гига. Но на старом P4 2.4 гига (удаленно) ровно в два раза медленнее 

Во сколько раз? Где логи от МТ4 той же пустышки?
 
Jager:
Во сколько раз? Где логи от МТ4 той же пустышки?
Той же пустышки в МТ4 быть не может, естественно. Да и не гонял я давно уже в МТ4 ничего. Даже и МТ4 самого уже нет. Но оптимизация пустышки на годе там летала гораздо быстрее минуты.
 
Academic:
Той же пустышки в МТ4 быть не может, естественно. Да и не гонял я давно уже в МТ4 ничего. Даже и МТ4 самого уже нет. Но оптимизация пустышки на годе там летала гораздо быстрее минуты.

Попробуйте посмотреть производительность аналогичного процессора в этой ветке https://www.mql5.com/ru/forum/2159

Реальный PR (performance rating) процессоров для тестирования
Реальный PR (performance rating) процессоров для тестирования
  • www.mql5.com
Предлагаю опубликовать результаты тестирования MACD Sample с параметрами по умолчанию на истории 2010.
 
Buter:

Попробуйте посмотреть производительность аналогичного процессора в этой ветке https://www.mql5.com/ru/forum/2159

 

Вы не знаете а оптимизация уже работает? И на какой именно 32-битный процессор ориентировались программисты при компиляции терминала? Мне кажется, что разница в производительности весьма существенна. Тем более если использовать интеловский компилятор. Я бы сделал столько компиляций этого куска кода, сколько есть версий команд процессора.

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

 

Вся платформа МетаТрейдер 5 оптимизирована для процессоров с набором команд SSE2 (это минимальный уровень), оптимизатор кода очень хороший (на уровне Intel C++ 12).

Кроме того, MetaTrader 5 поставляется в 32 и 64 битных редакциях, что позволяет использовать компьютеры по максимуму. MQL5 программы при выполнении компилируются в нативный 32 или 64 битный код с применением SSE2 команд, что дает очень высокую скорость работы.

Применение наборов команд выше SSE2 практически никак не сказывается на скорости программ, так как область их применения этих команд очень узкая и не подходит для 99% обычных программ.
 
Renat:

Вся платформа МетаТрейдер 5 оптимизирована для процессоров с набором команд SSE2 (это минимальный уровень), оптимизатор кода очень хороший (на уровне Intel C++ 12).

Кроме того, MetaTrader 5 поставляется в 32 и 64 битных редакциях, что позволяет использовать компьютеры по максимуму. MQL5 программы при выполнении компилируются в нативный 32 или 64 битный код с применением SSE2 команд, что дает очень высокую скорость работы.

Применение наборов команд выше SSE2 практически никак не сказывается на скорости программ, так как область их применения этих команд очень узкая и не подходит для 99% обычных программ.
Имеет ли мне смысл сравнить качество оптимизации между МТ5 и Intel ? Вопрос так ставится, "имеет ли смысл" так как понятно, что от результатов подобных тестов ничего обычно не происходит. Тут нет, если Вам вдруг покажется, ни капли претензий к вам, так как также понятно, что все взрослые люди и поступают только исходя из разумности и целесообразности.
 
Academic:
Имеет ли мне смысл сравнить качество оптимизации между МТ5 и Intel ? Вопрос так ставится, "имеет ли смысл" так как понятно, что от результатов подобных тестов ничего обычно не происходит. Тут нет, если Вам вдруг покажется, ни капли претензий к вам, так как также понятно, что все взрослые люди и поступают только исходя из разумности и целесообразности.

У нас есть лицензии на Intel Parallel Studio 2011 и мы активно используем последний Intel C++ 12 в своей работе, так как постоянно гонимся за максимизацией производительности. Огромная помощь от Intel Parallel Studio 2011 есть в поиске ошибок. В практическом виде (а не тестах) выгоды от Intel C++ по сравнению с VS2008 нет, а вот проблемы от самого компилятора Intel есть (очень капризный, постоянно срывается на собственные internal error при компиляции больших и серьезных проектов), да еще его мелкие пакости против AMD процессоров.

Вообще-то это вопросы нашего технического уровня, но никак не форумных обсуждений на маркетинговом уровне.