Ошибки, баги, вопросы - страница 3253
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Оказалось, что работа класса Convas чувствительна к длине пути каталога, откуда будет запущена программа.
Так, при длине пути 104 символа всё ещё работает, и где то в промежутке до 128 символов перестаёт работать. Все варианты длины перебирать, что бы найти точное значение, не стал. Никаких ошибок при этом не удалось получить. Сведения об этой особенности конваса тоже не нашёл в документации. Причем остальной код программы (в примере не приведён) работает без нареканий.
Код для воспроизведения:
Как работает:
как не работает:
Прошу подсказать, будет ли работать карта GeForce GTX 1660s с OpenCL в MT5? Или по прежнему только карты от AMD?
Да, Nvidia карты (как и все другие устройства с OpenCL) поддерживаются.
Спасибо!
Я пока только почитал статьи по OpenCL на сайте, но сложилось ощущение, что под разные карты надо адаптировать код, если это так, то как же с агентами это будет работать, если у разных компьютеров разные карты? Сколько карт будет поддерживаться, т.е. смогу я к агентам на одном компьютере привязать 2-3 карты, агент 1 - карта А, агент 2 - карта Б, агент 3 - карта В?
MathAverageDeviation
Рассчитывает среднее отклонение элементов массива
Оказалось, что работа класса Convas чувствительна к длине пути каталога, откуда будет запущена программа.
Так, при длине пути 104 символа всё ещё работает, и где то в промежутке до 128 символов перестаёт работать. Все варианты длины перебирать, что бы найти точное значение, не стал. Никаких ошибок при этом не удалось получить. Сведения об этой особенности конваса тоже не нашёл в документации. Причем остальной код программы (в примере не приведён) работает без нареканий.
Код для воспроизведения:
Как работает:
как не работает:
Андрей, обрати внимание как в CCanvas создаётся имя графического ресурса:
Отсюда и плясать нужно с именем своего объекта - оно должно быть коротким и уникальным.
и уникальным.
Андрей, обрати внимание как в CCanvas создаётся имя графического ресурса:
Отсюда и плясать нужно с именем своего объекта - оно должно быть коротким и уникальным.
У меня так
даже если бы было так
это не решает проблему длинного имени пути.
Проблема не в длинном названии объекта а в невозможности работать канваса в папках с длинным именем пути. Попробуй с моим примером, если не сильно лень, убедишься сам)
Речь именно о длине пути, где лежит программа, а не в имени объекта канваса. Ведь любой другой код MQL5 пашет и не кашляет.
Но, как бы то ни было, должна быть получена ошибка, если есть какие то проблемы в канвасе, а её нет.
Спасибо!
Я пока только почитал статьи по OpenCL на сайте, но сложилось ощущение, что под разные карты надо адаптировать код, если это так, то как же с агентами это будет работать, если у разных компьютеров разные карты? Сколько карт будет поддерживаться, т.е. смогу я к агентам на одном компьютере привязать 2-3 карты, агент 1 - карта А, агент 2 - карта Б, агент 3 - карта В?
Прелесть открытой OpenCL спецификации в том, что код единый для всех устройств.
Это CUDA является жестко закрытой технологией только под NVIDIA карты. Поэтому мы отказались от нее.
Мы также расширим поддержку OpenCL 3.0, чтобы улучшить производительность (особенно shared memory) и упростить код.
В настройках OpenCL можно управлять всеми устройствами, сортируя их по рейтингу и отключая ненужные. Терминал и тестеры будут использовать более-менее равномерно все разрешенные устройтва.
Просмотр Журнала в отдельном окне:
2022.10.03 09:14:51.430 Trades '00000': modify order ...
2022.10.03 09:14:51.433 Trades '00000': accepted modify order ...
2022.10.03 09:14:51.434 Trades '00000': modify order ...
Да вы издеваетесь!) Где секунды?
Прелесть открытой OpenCL спецификации в том, что код единый для всех устройств.
Это CUDA является жестко закрытой технологией только под NVIDIA карты. Поэтому мы отказались от нее.
Мы также расширим поддержку OpenCL 3.0, чтобы улучшить производительность (особенно shared memory) и упростить код.
В настройках OpenCL можно управлять всеми устройствами, сортируя их по рейтингу и отключая ненужные. Терминал и тестеры будут использовать более-менее равномерно все разрешенные устройтва.
Про разную подгонку кода под железно я читал тут.
У меня таких настроек в терминале нет, карта стоит сейчас HD7950. Однако, если я правильно понял, то я смогу дать работать устройству вместе с агентом для удаленной оптимизации, правильно? Но я не понимаю, как привязываться агент будет к устройству, или предполагается, что все агенты будут использовать устройство по очереди, тогда не будет ли это наоборот тормозить процесс?