4,580 Posts served
11,093 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)
What’s New in Intel® Threading Building Blocks 3.0
By Terry Wilmarth (Intel) (10 posts) on May 4, 2010 at 6:20 am
After much hard work, extensive debate, prioritization, and efforts to eke out the last few percentages of performance gains, Intel® Threading Building Blocks (Intel® TBB) version 3.0 has arrived! With it come several new features and improvements, available now for download.
In the upcoming weeks, look for detailed blogs from the TBB developers on several of these topics, starting with Arch Robison who will discuss making the quick and painless transition to Intel® TBB 3.0. Intel® TBB 3.0 fully preserves binary compatibility and thus simple library substitution, even without re-linking, should work for most applications. Arch will discuss the very few exceptions to this rule in his blog.
Here’s a brief summary of the major changes since the release of version 2.2:
Extended compatibility and interoperability support
• Added support for Microsoft* Visual Studio* 2010
• Intel® TBB 3.0 can run on top of Microsoft* Concurrency Runtime on Microsoft* Windows* 7
• Added Microsoft* Parallel Patterns Library*-compatible critical_section and reader_writer_lock
• Apple* Snow Leopard* support
• C++0x feature support: Intel® TBB 3.0 now provides std::thread, std::lock_guard, std::unique_lock, and most of std::condition_variable
New and improved parallel pipeline
• Elegant new parallel_pipeline function provides a strongly-typed lambda-friendly pipeline interface
New and improved data containers
• New concurrent_unordered_map, an associative container that permits concurrent insertion and traversal with no visible locking; similar to C++0x std::unordered_map; based on a prototype developed at Microsoft for a future version of PPL
• Faster enumerable_thread_specific and combinable
Enhanced task scheduler features
• Fire and forget tasks: To start worker tasks from a GUI, process tasks in FIFO-like fashion and increase starvation-resistance of tasks, see the new task::enqueue method
• Independent task scheduling for foreign threads: the scheduler maps tasks to threads in a way that avoids causing a user-created thread to block directly or indirectly on another user-created thread
• A task_group_context can now be created and destroyed in different threads
Enhanced scalable memory allocator
• More reliable dynamic function substitution on Windows*
• Improved performance for large object allocation
New Design Patterns Manual
• Get the most out of Intel® TBB: This excellent resource, for everyone from the novice to the expert, illustrates the power of Intel® TBB for implementing common parallel programming design patterns
Categories: Parallel Programming, Software Tools
Tags: Game Development, parallel programming, parallelism, TBB, Threading Building Blocks
For more complete information about compiler optimizations, see our Optimization Notice.
Comments (5)
| May 4, 2010 9:18 AM PDT
Terry Wilmarth (Intel)
| Arch's blog on Transitioning to TBB 3.0 is now available here: http://software.intel.com/en-us/blogs/2010/05/04/transitioning-to -tbb-30/ |
| May 10, 2010 2:03 PM PDT
Bob Scheier |
Hello, Terry; my name is Bob Scheier, a free-lance writer doing a story for InfoWorld on what developers can do to get higher performance out of client-side applications (such as on Windows 7) from today's multicore chips and multithreading operating systems. TBB seems like a key enabling technology our audience should know about -- was wondering if we could schedule a phone chat or if I could send you some questions via email? Thanks in advance; Bob |
| May 12, 2010 1:47 PM PDT
rolandr
|
Reading your changes about this new task scheduler strategy I wonder whether my initially reported problem that Robert Reed later followed up on in his blog: "Under the hood: Learning more about task scheduling" will now behave the way I'd prefer to have it. Or did I interpret this wrong? |
| May 14, 2010 4:32 PM PDT
Alexey Kukanov (Intel)
| ronaldr, I suggest you ask the question on the TBB forum; it's just more convenient place for discussions than blog comments. I would be glad to explain in more details how new fire-and-forget tasks are scheduled and executed, and help to match it to your use case if necessary. |
Trackbacks (5)
-
Twitter Trackbacks for
What’s New in Intel® Threading Building Blocks 3.0 – Intel Software Network Blogs
[intel.com]
on Topsy.com
May 4, 2010 7:57 AM PDT - What’s New in Intel® Threading Building Blocks 3.0
May 6, 2010 3:19 PM PDT - Comment on What’s New in Intel® Threading Building Blocks 3.0 By Bob Scheier - SYSVOLT Technologies
May 11, 2010 2:26 PM PDT - JOBS AUTOMOTIVE 2007 Cadillac DTS Yankton SD – by EveryCarListed.com | Cadillac Automotive Marque
May 14, 2010 9:23 AM PDT - Весенний выпуск Intel® Threading Building Blocks – Блоги Intel® Software Network
May 14, 2010 6:31 PM PDT




Terry Wilmarth (Intel)
1,260