Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Кто-нибудь тестировал, использовал и получал преимущества от T++?
|
|||
|---|---|---|---|
|
#18+
Кто-нибудь тестировал, использовал и получал преимущества от Т++ (функциональное распараллеливающее расширение C++) ? авторOpenTS (Open T-System, Т-система с открытой архитектурой) — это современная реализация Т-системы. Она обеспечивает автоматическое динамическое распараллеливание программ и предоставляет среду исполнения для языка программирования высокого уровня Т++, который является параллельным диалектом языка Си++[3]. OpenTS использует легковесные потоки и быстрым переключением (несколько наносекунд) и может работать с более чем миллионом легковесных потоков на процессор. На основе этих потоков реализован ряд возможностей, таких как мобильные потоки, объекты и ссылки, распределенная сборка мусора, доска объявлений для обмена данными и заданиями, и т. д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2013, 13:53 |
|
||
|
Кто-нибудь тестировал, использовал и получал преимущества от T++?
|
|||
|---|---|---|---|
|
#18+
преимущества от T++, Думаю, что в С++ вполне можно было реализовать все, за счет чего работает T++, не расширением синтаксиса, а просто библиотеками. Например: tfun реализуется std::async и tval - std::future. Тогда можно было бы пользоваться. А так, кто его знает какие ограничения имеются у их препроцессора. Например, проглотит он Boost, С++11? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2013, 15:03 |
|
||
|
Кто-нибудь тестировал, использовал и получал преимущества от T++?
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovskyпреимущества от T++, Думаю, что в С++ вполне можно было реализовать все, за счет чего работает T++, не расширением синтаксиса, а просто библиотеками. Например: tfun реализуется std::async и tval - std::future. Тогда можно было бы пользоваться. А так, кто его знает какие ограничения имеются у их препроцессора. Например, проглотит он Boost, С++11? С одной стороны вполне легко синхронный код превращается в асинхронный. Было: Код: plaintext 1. 2. 3. Стало: Код: plaintext 1. 2. 3. 4. С другой стороны, для случаев не требующих большого оттачивания при распараллеливании приятней бывает использовать директивы по типу OpenMP, особенно для чужого кода, когда его строки вообще не меняются, а только добавляются новые. Внешне код почти не меняется и остается понятным его разработчику. Ну и некие легковесные потоки тоже наверно что-то дают в таких случаях. А для future/async существует в boost что-то подобное легковесным потокам? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2013, 23:37 |
|
||
|
Кто-нибудь тестировал, использовал и получал преимущества от T++?
|
|||
|---|---|---|---|
|
#18+
Да, забыл launch::async :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2013, 00:05 |
|
||
|
Кто-нибудь тестировал, использовал и получал преимущества от T++?
|
|||
|---|---|---|---|
|
#18+
преимущества от T++А для future/async существует в boost что-то подобное легковесным потокам? Думаю, что boost.coroutine можно прикрутить. Только для вашего примера легковесные потоки вряд ли будут полезны. Они скорее нужны не для параллельного, а асинхронного выполнения заданий (когда один из потоков ждет другой) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2013, 00:13 |
|
||
|
Кто-нибудь тестировал, использовал и получал преимущества от T++?
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovskyпреимущества от T++А для future/async существует в boost что-то подобное легковесным потокам? Думаю, что boost.coroutine можно прикрутить. Только для вашего примера легковесные потоки вряд ли будут полезны. Они скорее нужны не для параллельного, а асинхронного выполнения заданий (когда один из потоков ждет другой) Если такие потоки ждут друг друга и параллельно не исполняются, то не проще ли просто вызывать функцию вообще без потоков, и тогда зачем легковесные вообще нужны? А для параллельного выполнения больше бы подошел пул потоков из boost::asio, когда потоки уже созданы и нет необходимости их создавать каждый раз при вызове функции? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2013, 00:36 |
|
||
|
Кто-нибудь тестировал, использовал и получал преимущества от T++?
|
|||
|---|---|---|---|
|
#18+
преимущества от T++Если такие потоки ждут друг друга и параллельно не исполняются, то не проще ли просто вызывать функцию вообще без потоков А по-вашему, как именно легковесные потоки в T++ выполняются внутри одного системного потока?:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2013, 01:43 |
|
||
|
Кто-нибудь тестировал, использовал и получал преимущества от T++?
|
|||
|---|---|---|---|
|
#18+
преимущества от T++Если такие потоки ждут друг друга и параллельно не исполняются, то не проще ли просто вызывать функцию вообще без потоков, и тогда зачем легковесные вообще нужны? Речь идет про потоки у которых есть состояние, причем это состояние не в разделяемой памяти, а в стеке потока - в локальных переменных. Например один поток в цикле генерирует данные кусками, а второй их парсит по мере поступления. Тогда простой вызов функции уже не годится. Можно правда такое состояние сделать явным и хранить например в неком объекте, который передавать в функцию и с помощью такого приема имитировать продолжение работы функции с того места где она прервалась. С помощью макросов можно вполне красиво это реализовать. Но этот подход имеет кучу проблем. Гораздо универсальнее использовать полноценные корутины, с раздельными стеками, как сделали в Бусте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2013, 02:08 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=38215224&tid=2020313]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 305ms |
| total: | 430ms |

| 0 / 0 |
