4,580 Posts served
11,094 Conversations started
- Academic

- Android

- Art, Music, & Animation

- Embedded Computing

- Events

- Game Development

- Graphics & Media

- Intel SW Partner Program

- Intel® AppUp Developer Program

- Manageability & Security

- Mobility

- Open Source

- Parallel Programming

- Performance and Optimization

- Power Efficiency

- Server

- Site News & Announcements

- Software Tools

- Ultrabook

- Association for Computing Machinery TechNews (ACM)
- Go Parallel! (Dr. Dobbs)
- HPCwire (Tabor Communications, Inc.)
- insideHPC (John West)
- Joe Duffy's Weblog (Microsoft)
- Microsoft Parallel Programming Development Center (Microsoft Germany)
- MultiCoreInfo.com
- scalability.org (Scalable Informatics)
- Software Dev Blog (Intel Germany)
- Soft Talk Blog (Intel United Kingdom)
- The Moth (Microsoft)
Archives
Posts from Andrey Marochko (Intel) 
TBB initialization, termination, and resource management details, juicy and gory.
By Andrey Marochko (Intel) (14 posts) on April 9, 2011 at 8:35 am
Comments (0)
Well, maybe more essential than juicy, and rather treacherous than gory. As I noted in my previous blog introducing a major task scheduler extension – support for task and task group priorities, TBB has been steadily evolving ever since its inception. My recent interactions with a few teams using TBB both inside and outside of [...]
Category: Open Source, Parallel Programming, Software Tools
Tags: Composer, concurrency, multithreading, parallel studio, parallelism, scheduler, task scheduling, TBB, Threading Building Blocks
Task and task group priorities in TBB
By Andrey Marochko (Intel) (14 posts) on April 1, 2011 at 9:37 am
Comments (3)
What I like most about Intel® Threading Building Blocks (TBB) library is its incessant evolution. Having been first released almost five years ago and enjoying quite broad adoption in the software development industry since then, it still keeps growing new features at unabated pace. Sustaining this trend and advancing TBB’s quest for ever better composability, [...]
Category: Open Source, Parallel Programming, Software Tools
Tags: composability, Composer, concurrency, multithreading, parallel studio, parallelism, priority, scheduler, task priority, task scheduler, task scheduling, TBB, Threading Building Blocks
TBB 3.0 and processor affinity
By Andrey Marochko (Intel) (14 posts) on December 28, 2010 at 4:04 am
Comments (0)
The blog describes new TBB 3.0 feature that allows controlling default size of TBB thread pool using process affinity mask, and discusses behavior variations peculiar to specific operating systems.
Category: Open Source, Parallel Programming, Software Tools
Tags: Affinity, Composer, concurrency, CPU affinity, multithreading, parallel studio, parallelism, scheduler, task scheduling, TBB, Threading Building Blocks
TBB 3.0, high end many-cores, and Windows processor groups
By Andrey Marochko (Intel) (14 posts) on December 16, 2010 at 9:06 am
Comments (3)
Recently released TBB 3.0 Update 4 contains not only the first ever Customer Preview Feature but also a few changes in the task scheduler that may come handy in some situations, for example when your TBB application has to work on a machine with more than 64 cores.
Category: Open Source, Parallel Programming, Software Tools
Tags: c++ parallel programming, Composer, concurrency, Intel TBB, multithreading, parallel studio, parallelism, scheduler, task scheduling, TBB, Threading Building Blocks
TBB scheduler clandestine evolution
By Andrey Marochko (Intel) (14 posts) on December 9, 2010 at 3:10 am
Comments (0)
This blog discusses earlier unpublished details of the TBB task scheduler's stealing kernel replacement that took place in TBB 2.2. This information may be useful to those interested in theory and practical aspects of work stealing, one of the most efficient techniques of implementing scalable shared memory parallelism.
Category: Open Source, Parallel Programming
Tags: c++ parallel programming, Composer, concurrency, Intel TBB, Intel(R) TBB, multithreading, parallel studio, task scheduling, TBB, Threading Building Blocks, work stealing
TBB 3.0 task scheduler improves composability of TBB based solutions. Part 2.
By Andrey Marochko (Intel) (14 posts) on May 21, 2010 at 1:12 am
Comments (0)
TBB 3.0 has its task scheduler upgraded to address several issues that limited composability of the code parallelized with TBB. Thus if you design or contribute to complex applications, this blog will help you understand the nature and impact of the changes in TBB 3.0 task scheduler. This is the second part of two.
Category: Open Source, Parallel Programming, Software Tools
Tags: composability, Composer, concurrency, multithreading, parallel studio, parallelism, scheduler, task scheduling, TBB, Threading Building Blocks
TBB 3.0 task scheduler improves composability of TBB based solutions. Part 1.
By Andrey Marochko (Intel) (14 posts) on May 13, 2010 at 5:34 am
Comments (1)
TBB 3.0 has its task scheduler upgraded to address several issues that limited composability of the code parallelized with TBB. Thus if you design or contribute to complex applications, this blog will help you understand the nature and impact of the changes in TBB 3.0 task scheduler. Read the first part of two.
Category: Open Source, Parallel Programming, Software Tools
Tags: composability, Composer, concurrency, multithreading, parallel studio, parallelism, scheduler, task scheduling, TBB, Threading Building Blocks
Exception handling in TBB 2.2 - Getting ready for C++0x
By Andrey Marochko (Intel) (14 posts) on August 18, 2009 at 5:22 am
Comments (0)
Just released TBB 2.2 utilizes the new C++ exception propagation functionality that is part of the upcoming C++0x standard, and thus makes exception handling in TBB based applications even more straightforward.
Category: Open Source, Parallel Programming, Software Tools
Tags: C++0x, exception handling, exception propagation, multithreading, TBB, Threading Building Blocks
TBB containers vs. STL. Performance in the multi-core age.
By Andrey Marochko (Intel) (14 posts) on October 20, 2008 at 2:26 am
Comments (4)
In my previous post I've tried to explain why TBB containers are so different from the STL ones, and claimed “efficiency” and “performance” considerations to be important reasons. For the starter let me to clarify what exactly did I mean when I talked about them. The meaning of performance in general is intuitively obvious - [...]
Category: Parallel Programming, Software Tools
Tags: locks, multithreading, STL, TBB, Threading Building Blocks
TBB containers vs. STL. Functionality rift
By Andrey Marochko (Intel) (14 posts) on October 13, 2008 at 2:28 am
Comments (1)
How TBB concurrent containers differ from the STL ones, why the particular design decisions were made, and what the efficiency of both approaches depends on...
Category: Parallel Programming, Software Tools
Tags: concurrent container, container, STL, TBB, Threading Building Blocks
Exception Handling and Cancellation in TBB - Part IV – Using context objects
By Andrey Marochko (Intel) (14 posts) on June 11, 2008 at 2:41 am
Comments (1)
After a good deal of theoretizing about various cancellation scenarios, we’ve finally reached the point where we can touch a bit more material substance (if one can say so about information☺). So let’s see how to use group contexts in practice. You can create an instance of task group context using any technique applicable to [...]
Category: Open Source, Parallel Programming, Software Tools
Tags: cancellation, composability, Composer, concurrency, multithreading, parallel studio, parallelism, scheduler, task scheduling, TBB, Threading Building Blocks
Exception Handling and Cancellation in TBB - Part III – Use cases with nested parallelism
By Andrey Marochko (Intel) (14 posts) on June 4, 2008 at 4:33 am
Comments (0)
Now that we’ve familiarized ourselves with the simple scenarios in the previous part of this post, let’s consider more complex, but nevertheless ubiquitous use case of nested parallelism (maybe it is even more widespread that non-nested usages). When we considered a standalone algorithm, canceling any of its tasks naturally caused unconditional cancellation of all its [...]
Category: Open Source, Parallel Programming, Software Tools
Tags: cancellation, exception handling, exceptions, multithreading, TBB, Threading Building Blocks
Exception Handling and Cancellation in TBB - Part II – Basic use cases
By Andrey Marochko (Intel) (14 posts) on May 29, 2008 at 1:54 am
Comments (2)
After the long-winded introduction let’s consider the semantics of task cancellation and exception handling in TBB. The basic usage model of cancellation was shaped in order to cover the following primary use cases: Cancelling an algorithm when one of its tasks decides that the purpose of the algorithm has been reached. A variety of parallel [...]
Category: Open Source, Parallel Programming, Software Tools
Tags: cancellation, composability, Composer, concurrency, exception handling, exceptions, multithreading, parallel studio, parallelism, scheduler, task scheduling, TBB, Threading Building Blocks
Exception Handling and Cancellation in TBB: Part I - The Past
By Andrey Marochko (Intel) (14 posts) on May 19, 2008 at 4:09 am
Comments (0)
The last stable TBB drop (tbb20_20080408oss) featured the first version of the exception handling and cancellation support in the library, and the upcoming 2.1 release will have a bit more mature variant of it. While the documentation is not yet available, in this blog I would like to outline the main usage models for this [...]
