Немного удивлен :) Решил поделиться и задать НЕ риторический вопрос. - страница 24
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
На ЕМАшке проверить -- самое то будет.
Гхм.. Мне кажется в этом уже нет необходимости. Ситуация прояснилась. Как в этой ветке и принято - немного удивлён и решил поделиться... :)
Вот отрывок теста, полный текст теста в прицепе, там же библиотечка:
Результаты:
2011.04.04 20:29:15 RationalSpeedTest (EURUSD,M20) Common time int test = 62 ms; // 1000000 calls
2011.04.04 20:29:15 RationalSpeedTest (EURUSD,M20) Common time long test = 141 ms; // 1000000 calls
2011.04.04 20:29:15 RationalSpeedTest (EURUSD,M20) Common time double test = 62 ms; // 1000000 calls
2011.04.04 20:29:15 RationalSpeedTest (EURUSD,M20) Common time IntRational test = 1032 ms; // 1000000 calls
2011.04.04 20:29:14 RationalSpeedTest (EURUSD,M20) Common time LongRational test = 921 ms; // 1000000 calls
Сильно озадачен - double и int абсолютно совпали по скорости выполнения арифметических операций и притом самые быстрые, long вдвое отстал, Rational в полной попе.
В свете этих кспериментов заниматься построением целочисленного тестера несколько расхотелось .. :-))
Возможно, на других процессорах результаты будут немного другими (буду благодарен тем кто протестит и выложит), но в грандиозные различия уже не верится.
Интересно, что когда-то в незапамятные 90 годы я тестил разницу целых и плавающих операций, различия были вполне ощутимы (мягко выражаясь).
Резюме - 90-е годы прошли и канули, арифметика с плавающей точкой нынче работает очень быстро.
Даже менять её на целочисленную арифметику не разумно (в контексте трейдинга) - выигрыш ничтожен если не иллюзорен вообще.
Окончательное резюме - ежли Интел срочно не сделает поддержку рациональной арифметики на уровне железа, об ей можно больше не париться... по крайней мере в смысле быстродействия. :)
Аминь.
// Повторюсь. Тесты проводились на отдельно взятом компе-камне, потому, дабы не впадать в лишние иллюзии, прошу желающих прогнать тест у себя на компах и выложить результы с указанием параметров железа.
// Мой комп: 2 гига оперативки, проц Sempron 3100+ 2.2 гигагерца, 32 бита, операционка WinXP
Гхм.. Мне кажется в этом уже нет необходимости. Ситуация прояснилась. Как в этой ветке и принято - немного удивлён и решил поделиться... :)
99% процентов вычсилений не потребует приведения к общему знаменателю. Так что тестирование не совсем корректно. Надо брать реальняе расчеты и делать их правильно. Инты по моим сегодняшним прикидкам быстрее ( и за счет того что все в памяти и в кеше процессора помещается ) раз - в 1000000 :) Просто ошеломляющие результаты. Типа 2000 прогонов за 1 секунду. :)
Резюме - 90-е годы прошли и канули, арифметика с плавающей точкой нынче работает очень быстро.
Даже менять её на целочисленную арифметику не разумно (в контексте трейдинга) - выигрыш ничтожен если не иллюзорен вообще.
Кто последние ...надцать лет программирует, тот это давно знает.
Кроме того, мы не зря перешли на SSE2, ибо без нее общего повышения быстродействия не видать.
Кто последние ...надцать лет программирует, тот это давно знает.
Мы не зря перешли на SSE2, ибо без нее общего повышения быстродействия не видать.
Я запихал тик в 32 бита ( аск, бид и время ) . И получил - быстродействие которое уже можно использовать.
:) Плюс еще и по памяти как МТ5 не бегаю - все варианты перебора кручу вокруг бара, а не на оборот. :) Летает !!! :)
**
Вы кстати , прогоните на МТ ,если не трудно - я там написал выше.
Я запихал тик в 32 бита ( аск, бид и время ) . И получил - быстродействие которое уже можно использовать.
Во сне и не такое можно запихать... Только практика будит и все портит.
Но ничего, сегодня ночью будет новый полет фантазий!
Во сне и не такое можно запихать... Только практика будит и все портит.
Но ничего, сегодня ночью будет новый полет фантазий!
Вы не боитесь опростовалоситься. Я ведь не вру. :) Запихивается - легко, только подумать надо. Нда... во сне - поражаюсь самоуверенности. :)
Я не зря постоянно повторяю "практика".
Экстремальной побитовой упаковкой котировок при передаче по сети мы давно и успешно занимается. В среднем сжатие 1:13, когда 10 лет минутной истории ужимается в 10-12 мб.
Но практика такова, что расжатие (не говоря уж об математических операциях с ними) этого безобразия занимает настолько много времени, что ни о какой скорости речи не может быть.
Я не зря постоянно повторяю "практика".
Экстремальной побитовой упаковкой котировок при передаче по сети мы давно и успешно занимается. В среднем сжатие 1:13, когда 10 лет минутной истории ужимается в 10-12 мб.
Но практика такова, что расжатие (не говоря уж об математических операциях с ними) этого безобразия занимает настолько много времени, что ни о какой скорости речи не может быть.
...
Аминь.
// Повторюсь. Тесты проводились на отдельно взятом компе-камне, потому, дабы не впадать в лишние иллюзии, прошу желающих прогнать тест у себя на компах и выложить результы с указанием параметров железа.
// Мой комп: 2 гига оперативки, проц Sempron 3100+ 2.2 гигагерца, 32 бита, операционка WinXP
То то же сказали суровые сибирские лесорубы :о)
Давабил ещё нолик в Count для полной ясности