Скачать MetaTrader 5

О скорости выполнения операций

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Что происходит в MQL5.community? Раздел Стена ответит на этот вопрос!
Victor Nikolaev
Модератор
14521
Victor Nikolaev 2010.01.23 05:42 

Решил прооверить скорость выполнения операций, ничего более

Файлы:
Sceptic Philozoff
Модератор
17844
Sceptic Philozoff 2010.01.23 11:20  

Интересно, хорошо ли оптимизирована именно MathExp() в сравнении с MathPow()? У тебя ж в основании как раз число Непера.

И вообще, почему бы не вычислять x^y = MathExp(y*ln(x)) - может, побыстрее будет, чем MathPow()?

Victor Nikolaev
Модератор
14521
Victor Nikolaev 2010.01.23 11:51  
Mathemat писал(а) >>

Интересно, хорошо ли оптимизирована именно MathExp() в сравнении с MathPow()? У тебя ж в основании как раз число Непера.

И вообще, почему бы не вычислять x^y = MathExp(y*ln(x)) - может, побыстрее будет, чем MathPow()?

Немного быстрее, но не существенно. Порядок остается тем же самым

Sceptic Philozoff
Модератор
17844
Sceptic Philozoff 2010.01.23 11:59  

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

Victor Nikolaev
Модератор
14521
Victor Nikolaev 2010.01.23 12:03  
Mathemat писал(а) >>

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

Алексей. Ты же сам можешь сделать. :)

Sceptic Philozoff
Модератор
17844
Sceptic Philozoff 2010.01.23 12:29  

Сделал. Логарифм быстрее экспоненты.


Любопытно. Я думал, будет наоборот.

Victor Nikolaev
Модератор
14521
Victor Nikolaev 2010.01.23 12:33  
Mathemat писал(а) >>

Сделал. Логарифм быстрее экспоненты.

Любопытно. Я думал, будет наоборот.

Но ускорить работу врядли удастся. Только логика. Оптимальная логика позволит получить максимальное быстродействие. Хотя исключения есть. Но это же в каждом конкретном случае свое решение. А жаль.

Sceptic Philozoff
Модератор
17844
Sceptic Philozoff 2010.01.23 12:46  

Да уж, все не так просто. Я рассчитывал, что если аргумент будет близок к 1, логарифм будет быстрее. Ан нет, даже медленнее. Странно это. Ладно, проехали.

Victor Nikolaev
Модератор
14521
Victor Nikolaev 2014.03.11 05:42  

Проверка скорости выполнения на 616 билде. Ради интереса. Что и как поменялось

2014.03.11 11:39:12.545 SpeedOperator GBPUSD,M15: Сложное логическое: 3213

2014.03.11 11:39:09.322 SpeedOperator GBPUSD,M15: Простое логическое: 3245

2014.03.11 11:39:06.080 SpeedOperator GBPUSD,M15: Возведение в степень: 81667

2014.03.11 11:37:44.421 SpeedOperator GBPUSD,M15: Деление: 8096

2014.03.11 11:37:36.322 SpeedOperator GBPUSD,M15: Умножение: 2465

2014.03.11 11:37:33.854 SpeedOperator GBPUSD,M15: Вычитание: 2434

2014.03.11 11:37:31.427 SpeedOperator GBPUSD,M15: Сложение: 2433

Радует что скорость выполнения логических операций увеличилась

Alexey Viktorov
6921
Alexey Viktorov 2014.03.11 06:14  
Ну так и компьютер наверное не тот который был в 2010 году?
Yuriy Zaytsev
13928
Yuriy Zaytsev 2014.03.11 06:20  
AlexeyVik:
Ну так и компьютер наверное не тот который был в 2010 году?

при чему тут компьютер...

Если выполняется на том же железе... при равных условиях - а результат вычислений разный https://www.mql5.com/ru/forum/123371

12
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий