Данный пост является продолжением авторского перевода статьи «Flow Graphs, Speculative Locks, and Task Arenas in Intel® Threading Building Blocks» из Parallel Universe Magazine, выпуск 18, 2014. В этой половине статьи мы рассмотрим спекулятивные замки (speculative locks), которые используют преимущества технологии Intel® Transactional Synchronization Extensions и управляемые пользователем арены для задач (user-managed task arenas), которые обеспечивают расширенный контроль и управление уровнем параллелизма и изоляции задач. Если Вас заинтересовало — добро пожаловать под кат.
Читать полностью »
Рубрика «intel threading building blocks»
Вычислительные Графы, Спекулятивные Замки и Арены для Задач в Intel® Threading Building Blocks (продолжение)
2014-07-28 в 6:14, admin, рубрики: c++, c++ библиотеки, c++11, intel parallel studio, intel tbb, intel threading building blocks, tbb, Блог компании Intel, параллельное программирование, ПрограммированиеВычислительные Графы, Спекулятивные Замки и Арены для Задач в Intel® Threading Building Blocks
2014-07-15 в 5:48, admin, рубрики: c++, c++ библиотеки, c++11, intel parallel studio, intel tbb, intel threading building blocks, tbb, Блог компании Intel, параллельное программирование Данный пост является переводом статьи «Flow Graphs, Speculative Locks, and Task Arenas in Intel® Threading Building Blocks» из Parallel Universe Magazine, выпуск 18, 2014. Если вас интересует библиотека Intel® TBB в частности, и интересные современные концепции параллельного программирования в общем, то — добро пожаловать под кат.
Читать полностью »
Написание многопоточных приложений для магазина Windows с помощью Intel Threading Building Blocks — теперь с DLL
2013-04-10 в 4:33, admin, рубрики: c++, c++ библиотеки, c++11, intel parallel studio, intel tbb, intel threading building blocks, tbb, Visual Studio, Блог компании Intel, параллельное программирование, метки: c++, c++ библиотеки, c++11, intel parallel studio, intel tbb, intel threading building blocks, tbbЭта статья описывает, как построить простое приложение для магазина Windows используя Intel® Threading Building Blocks (Intel® TBB).
Мой предыдущий пост Windows 8: Написание многопоточных приложений для магазина Windows с помощью Intel® Threading Building Blocks описывает экспериментальную поддержку для приложений для магазина Windows. Обновление 3 для Intel TBB 4.1, так же как стабильный релиз tbb41_20130314oss содержит динамические библиотеки для таких приложений.
Читать полностью »
Android: Написание многопоточных приложений с помощью Intel® Threading Building Blocks
2012-12-21 в 12:27, admin, рубрики: android, android development, c++, c++ библиотеки, c++11, intel tbb, intel threading building blocks, tbb, Блог компании Intel, параллельное программирование, Разработка под android, метки: android, android development, c++, c++ библиотеки, c++11, intel tbb, intel threading building blocks, tbb Совсем недавно мы рассматривали написание многопоточных приложений для магазина Windows с помощью Intel® Threading Building Blocks(Intel® TBB). Там утверждается, что использование кроссплатформенной библиотеки TBB позволяет легко переносить вычислительную часть на другие платформы. Android как раз сгодится для хорошего примера одной из «других платформ», подробности под катом.
Читать полностью »
Windows 8: Написание многопоточных приложений для магазина Windows с помощью Intel® Threading Building Blocks
2012-11-16 в 4:58, admin, рубрики: c++, c++ библиотеки, c++11, intel parallel studio, intel tbb, intel threading building blocks, tbb, Visual Studio, Блог компании Intel, параллельное программирование, метки: c++, c++ библиотеки, c++11, intel parallel studio, intel tbb, intel threading building blocks, tbb Как известно, в программном интерфейсе приложений для магазина Windows (Windows Store apps) отсутствуют многие функции работы с потоками, начиная с CreateThread() и заканчивая работой с TLS ключами. И это отличный повод перейти от параллелизма, основанного на системно-зависимых потоках к параллелизму, основанному на задачах. Данный пост излагает пошаговую инструкцию о том, как написать простейший многопоточный пример, который проходит аттестацию для магазина Windows (Windows App Certification Kit validation) и, гипотетически, может быть масштабирован до игрушек космического масштаба. А поскольку используется кроссплатформенная библиотека Intel® Threading Building Blocks (Intel® TBB, TBB, threadingbuildingblocks.org), то вычислительная часть может быть легко перенесена на другие платформы, и задача будет заключаться только в том, чтобы нарисовать новый красивый графический интерфейс.
Читать полностью »
Параллельное программирование с помощью вычислительного графа
2012-11-12 в 15:25, admin, рубрики: c++, intel parallel studio, intel threading building blocks, Блог компании Intel, параллельное программирование, метки: intel parallel studio, intel threading building blocksЕсть приложения, которые хорошо реализуются как системы передачи сообщений. Сообщениями в широком смысле может быть что угодно – блоки данных, управляющие «сигналы» и т.д. Логика же состоит из узлов, обрабатывающих сообщения, и связей между ними. Такая структура естественно представляется графом, по рёбрам которого «текут» сообщения, обрабатываемые в узлах. Наиболее устоявшееся название такой модели – вычислительный граф.
С помощью вычислительного графа можно установить зависимости между задачами и в какой-то мере программно реализовать «dataflow архитектуру».
В этом посте я опишу, как реализовать такую модель на С++, используя библиотеку Intel® Threading Building Blocks (Intel® TBB), а именно класс tbb::flow::graph.