Ошибки, баги, вопросы - страница 2506
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Опять мимо, все развивается, все больше упор делается на многопоточность, и вот вам пожалуйтса - крестовая стд библиотека вам всё расскажет
https://en.cppreference.com/w/cpp/thread/hardware_destructive_interference_size
Возможно, но пока вы меня не убедили.Не подскажет, а нагадает. Внимательно читаем спецификацию.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Возможно, но пока вы меня не убедили.
Хоть я не совсем понял, что за смещение вы хотели получить, но понять косяк просто: абсолютный адрес полностью бесполезен в вычислениях. Вы забыли что точкой отсчёта для памяти является адрес структуры? И вы наверное хотели получить смещение массива в блоке памяти структуры? А это получается разницей адресов структуры и нулевого элемента массива.
Если нет значения в буфере на баре, то это нужно явно прописать в буфере. Т.е., если рассчитанное значение должно быть выведено в буфер - записываем его в буфер, иначе - записываем пустое значение.
Спасибо, Артем.
Хоть я не совсем понял, что за смещение вы хотели получить, но понять косяк просто: абсолютный адрес полностью бесполезен в вычислениях. Вы забыли что точкой отсчёта для памяти является адрес структуры? И вы наверное хотели получить смещение массива в блоке памяти структуры? А это получается разницей адресов структуры и нулевого элемента массива.
Действия по порядку:
1 - получаем адрес первого эл-та ar[] в текущей структуре data.
2. узнаём его смещения от начал кэш-линии
3. находим кол-во байт от него до конца кэш-линии
4. узнаём кол-во интов, которые вместятся в это пространство до конца кэш-линии.
Вы у себя запускали? Разница в скорости есть? Или это лишь у меня?
2. узнаём его смещения от начал кэш-линии
С чего вы взяли что так можно определить какое-то смещение?
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Ошибки, баги, вопросы
fxsaber, 2019.07.09 11:13
Data data[]; ArrayResize(data, 32768);происходит замедление в 6 раз!
От чего эти тормоза?
Довёл до ума первоначальную идею (в первом коде неправильно считал адреса). Если не затруднит, то интересно будет посмотреть на результат у вас.
Разброс сильный от запуска к запуску, разницы постоянной в чью-то сторону не видно. Конечно, запускаю Release-вариант.
у динамического массива больше проверок, Ренат как-то писал, пост не найду, как раз в разговоре об обращении по индексу, почему существенно медленней плюсов
Получается, что при заполнении динамических массивов лучше сначала заполнять статические, а потом делать ArrayCopy в динамические.
От чего эти тормоза?
Вы из статического сделали динамический массив. Отсюда все вытекающие проблемы типа:
Когда первый и второй циклы работают с разной скоростью.
Спасибо. Странно, конечно. У меня стабильная разница.