﻿<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/css' href='https://stocksharp.com/css/style.css'?>
<?xml-stylesheet type='text/css' href='https://stocksharp.com/css/bbeditor.css'?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html">Многопоточность</title>
  <id>~/topic/2828/mnogopotochnost/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-04-03T17:57:50Z</updated>
  <logo>https://stocksharp.com/images/logo.png</logo>
  <link href="https://stocksharp.com/handlers/atom.ashx?category=topic&amp;id=2828" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.com/posts/m/20234/</id>
    <title type="text"> Что лучше, идти в сторону создания потоков или же запускать несколько копий программы? Эмм если у в...</title>
    <published>2012-07-09T02:58:20Z</published>
    <updated>2012-07-09T02:59:14Z</updated>
    <author>
      <name>anothar</name>
      <uri>https://stocksharp.com/users/6089/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Quote:&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;br /&gt;Что лучше, идти в сторону создания потоков или же запускать несколько копий программы?&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;Эмм если у вас есть автотестер, кот сам генерит диапазон варьируемых параметров, то второе неприемлемо. Да и вообще неудобно.&lt;br /&gt;Создавать потоки так то несложно. Что же касается загрузки - то если у вас скажем метров 300 данных, то вполне логично их в память засосать.&lt;br /&gt;А 7 жестких дисков, это по-моему изврат. Проще память дорастить и все в нее подкачивать. Или же подкачивать в нее большой кусок и синхронизировать выполнение потоков так, чтобы они ждали&lt;br /&gt;пока все выполнят прогон на этом куске и только потом выполнять следующий.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/20203/</id>
    <title type="text">Я ваще спрашивал про многопоточность. Судя по тому, сколько разных мнение, можно догадаться самостоя...</title>
    <published>2012-07-06T12:09:09Z</published>
    <updated>2012-07-06T12:09:09Z</updated>
    <author>
      <name>Mikhail Sukhov</name>
      <uri>https://stocksharp.com/users/201/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Сергей MenDel &lt;a href="https://stocksharp.com/posts/m/20197/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Я ваще спрашивал про многопоточность.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Судя по тому, сколько разных мнение, можно догадаться самостоятельно - универсального рецепта нет. Все индивидуально от используемым программ, библиотек, способов организации работы с данными.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/20198/</id>
    <title type="text"> Ладно, суть не в этом. Я ваще спрашивал про многопоточность. Что лучше, идти в сторону создания пот...</title>
    <published>2012-07-06T09:49:38Z</published>
    <updated>2012-07-06T09:49:38Z</updated>
    <author>
      <name>ra81</name>
      <uri>https://stocksharp.com/users/16581/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;Сергей MenDel &lt;a href="https://stocksharp.com/posts/m/20197/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;&lt;br /&gt;&lt;br /&gt;Ладно, суть не в этом.&lt;br /&gt;Я ваще спрашивал про многопоточность.&lt;br /&gt;Что лучше, идти в сторону создания потоков или же запускать несколько копий программы?&lt;br /&gt;Я так и не понял.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Ну вроде пояснили. В случае одной копии программы и много потоков стратегий, затык будет на вводе данных с диска и распаковке. В случае множества копий, затыка не будет, ибо распаковка будет в разых потоках для каждой копии. Вроде так.&lt;br /&gt;&lt;br /&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/20197/</id>
    <title type="text">Я на самом деле еще на S# не перешел, не понимаю ещ как некоторые вещи в нем реализовать. И все ещ с...</title>
    <published>2012-07-06T08:06:41Z</published>
    <updated>2012-07-06T08:06:41Z</updated>
    <author>
      <name>MenDel</name>
      <uri>https://stocksharp.com/users/6356/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Я на самом деле еще на S# не перешел, не понимаю ещ как некоторые вещи в нем реализовать. И все ещ считываю данные с txt файлов, а вся тиковая история за 6,5 лет занимает порядка 8 Гб и поэтому приходится считывать их с разных дисков.&lt;br /&gt;Просто когда за раз 10000 вариантов прогоняешь, надо все эти результаты вести. Сейчас я знаю как это сделать, а в S# не знаю.&lt;br /&gt;&lt;br /&gt;Ладно, суть не в этом.&lt;br /&gt;Я ваще спрашивал про многопоточность.&lt;br /&gt;Что лучше, идти в сторону создания потоков или же запускать несколько копий программы?&lt;br /&gt;Я так и не понял.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/20192/</id>
    <title type="text">Как писали умные люди, потратившие много времени на исследования, ввод вывод редко является проблемо...</title>
    <published>2012-07-06T05:48:50Z</published>
    <updated>2012-07-06T05:48:50Z</updated>
    <author>
      <name>ra81</name>
      <uri>https://stocksharp.com/users/16581/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Как писали умные люди, потратившие много времени на исследования, ввод вывод редко является проблемой. Почти всегда алгоритм расчета пожирает все процессорное время и является узким местом.&lt;br /&gt;Считать 300 мегабайт данных по фучу ртс за 3 года дело пары секунд. А вот обработать - уже часы. Поэтому не знаю зачем нужны 7 винтов итд. &lt;br /&gt;&lt;br /&gt;Ну собственно тут выше сказано что распаковка данных и подготовка к работе пожирает все время одного ядра. А дальше еще стратегия будет, тоже сожрет :). </content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/20191/</id>
    <title type="text">Если уж бутылочным горлышком является ввод-вывод, почему бы не попробовать посмотреть в сторону SSD?...</title>
    <published>2012-07-06T03:58:41Z</published>
    <updated>2012-07-06T03:58:41Z</updated>
    <author>
      <name>Антон</name>
      <uri>https://stocksharp.com/users/6106/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Если уж бутылочным горлышком является ввод-вывод, почему бы не попробовать посмотреть в сторону SSD? 7 винтов - жесть...</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/20190/</id>
    <title type="text">У меня 4 реальных и 4 виртульных, пенек 2600. Чтоб скорость доступа к данным не тормозила программу ...</title>
    <published>2012-07-06T03:49:36Z</published>
    <updated>2012-07-06T03:53:59Z</updated>
    <author>
      <name>MenDel</name>
      <uri>https://stocksharp.com/users/6356/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">У меня 4 реальных и 4 виртульных, пенек 2600. Чтоб скорость доступа к данным не тормозила программу у меня каждая копия считывает данные с отдельного винта, пришлось 7 жестких дисков воткнуть.&lt;br /&gt;Я всегда тестирую не один контракт, а склееный фьюч за 6,5 лет. А это очень долго, бывает 1 тест занимает несколько дней, но зато прогоняет десятки тысяч всевозможных вариантов.&lt;br /&gt;Мое мнение, тест истории 1 контракта из 27 существующих не совсем правильно. Надо смотреть как стратегия вела себя в разные времена.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/20156/</id>
    <title type="text">В тестере 2 потока 1й грузит с диска и распаковывает тики и стаканы и помещает их в очередь 2й читае...</title>
    <published>2012-07-05T08:10:35Z</published>
    <updated>2012-07-05T08:10:35Z</updated>
    <author>
      <name>pyhta4og</name>
      <uri>https://stocksharp.com/users/497/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">В тестере 2 потока &lt;br /&gt;1й грузит с диска и распаковывает тики и стаканы и помещает их в очередь&lt;br /&gt;2й читает эту очередь и скармливает данные стратегиям, получает заявки от стратегий и эмулирует их&lt;br /&gt;&lt;br /&gt;Если написать стратегию которая ничего не делает (и не тратит времени), то 2й поток будет в основном просто ждать когда 1й загрузит данные.&lt;br /&gt;Если добавить 7 копий этой быстрой стратегии, то все равно все будет упираться в скорость загрузки данных.&lt;br /&gt;&lt;br /&gt;То что у вас загрузка 13% видимо означает что у вас много ядер. Сколько, кстати?&lt;br /&gt;&lt;br /&gt;Поток загрузки данных полностью занимает одно ядро, а остальные простаивают.&lt;br /&gt;&lt;br /&gt;К сожалению разумной схемы как использовать больше чем 1 ядро для загрузки и распаковки данных мы пока не придумали. Возможно в будущем это изменится.&lt;br /&gt;&lt;br /&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/20155/</id>
    <title type="text">Сделай так: по-быстрому создай (скопируй) ещё 6 копий стратегий, запусти их с разными параметрами вм...</title>
    <published>2012-07-05T07:19:04Z</published>
    <updated>2012-07-05T07:19:04Z</updated>
    <author>
      <name>MenDel</name>
      <uri>https://stocksharp.com/users/6356/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;div class="quote"&gt;&lt;span class="quotetitle"&gt;BigBen &lt;a href="https://stocksharp.com/posts/m/20152/" class="quote_nav"&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="innerquote"&gt;Сделай так: по-быстрому создай (скопируй) ещё 6 копий стратегий, запусти их с разными параметрами вместе с базовой и сам увидишь, что из этого получится. Это быстрее и полезнее для тебя, чем ждать, что кто-то когда-то откликнется на твой вопрос.&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;Я так и делаю). Все копии отлично работают. Скорость не падает.&lt;br /&gt;Но мне кажется это не совсеи правильно, хотел вот узнать, стоит ли вместо копий делать потоки. Я с ними еще не работал, потому это займет уйму времени.&lt;br /&gt;Вот хотел поинтересоваться стоит ли это того.&lt;br /&gt;&lt;br /&gt;</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/20152/</id>
    <title type="text">Сделай так: по-быстрому создай (скопируй) ещё 6 копий стратегий, запусти их с разными параметрами вм...</title>
    <published>2012-07-05T04:42:50Z</published>
    <updated>2012-07-05T04:42:50Z</updated>
    <author>
      <name>BigBen</name>
      <uri>https://stocksharp.com/users/6302/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Сделай так: по-быстрому создай (скопируй) ещё 6 копий стратегий, запусти их с разными параметрами вместе с базовой и сам увидишь, что из этого получится. Это быстрее и полезнее для тебя, чем ждать, что кто-то когда-то откликнется на твой вопрос.</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/20120/</id>
    <title type="text">Ребят, обьясните пожалуйста. Вот я написал код на тестирование пересечения скользящих средних и всяк...</title>
    <published>2012-07-03T15:19:08Z</published>
    <updated>2012-07-03T15:19:08Z</updated>
    <author>
      <name>MenDel</name>
      <uri>https://stocksharp.com/users/6356/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">Ребят, обьясните пожалуйста. Вот я написал код на тестирование пересечения скользящих средних и всякой другой хрени. При тестировании процессор загружается всего на 13%. Если я создам 7 потоков, то я сделаю тестов в 7 раз больше?</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>