Datamation content and product recommendations are
editorially independent. We may make money when you click on links
to our partners.
Learn More
Multiple cores are the norm now for chip-makers, though application
developers don’t always develop in ways that take advantage of more than one
processor core. How do you bridge the divide?
Intel thinks the key is by making a cornerstone development tool for parallelism open source. To that end Intel is open sourcing Intel Threading Building Blocks (TBB) under the GPL version 2 (define).
TBB is a method of programming for C++ for parallelism that Intel has offered for over a year. With version 2.0 they’re open sourcing it and making it available on more operating systems and processors.
James Reinders, chief evangelist and director of marketing for Intel software
development products, told internetnews.com that there were some
concerns with the 1.x version of TBB that open sourcing will help to
alleviate.
“Customers were concerned that Intel might decide to quit selling it [TBB] one day,” Reinders said.
“Open sourcing addresses the issue and paves the way for TBB to be
accessible for every C++ user to use on every platform that they care
about.”
Reinders explained that TBB works with nearly all C++ compilers and
enables developers to take advantage of parallelism without the need to move
from a familiar environment. TBB 2 also attempts to simplify programming for
multiple processors by abstraction. Rather than trying to write threads that
execute on a particular processor core, TBB handles parallelism based on
task.
Taking advantage of TBB is relatively straightforward, too. Reinders noted
that TBB is a template library. In the part of the program where you want
some parallelism you use a template.
A template looks like a function call,
but in C++ a template is expanded and compiled particular to the types that
you are giving it. TBB also helps with multi-core memory allocation, as well
as task allocation with the inclusion of a scalable memory allocator.
There is no hard limit now for how many cores TBB can scale to with Intel
seeing good results on both 8 and 16 cores. That said, Reinders speculated
that TBB was not ready for 100 cores.
“Once you start getting into a really large machine, you need to pay more
attention to how the data is distributed, because if the data is shuffled
back and forth across processors, the costs go up,” Reinders said. “TBB
doesn’t try to address data partitioning directly.”
Though Intel is open sourcing TBB, it is not open sourcing all of its
multi-core programming tools. In particular Thread Profiler 3.0 and Thread Checker 3.0, which were introduced last August, will stay as proprietary products. Reinders explained that Intel has
invested its time and energy into open sourcing TBB first and first want to
build a community around it.
In addition to open sourcing the TBB tools, Intel is launching a site called Threading Building Blocks, which is intended to be a community-oriented
site surrounding TBB usage and development. Reinders noted that Intel will
be accepting contributions to the project, though at launch the site will not
have a full versioning control system in place.
Intel considered going with either Apache or Eclipse instead of trying to
run the TBB project itself but ultimately decided to go it on their own.
“We wanted a place where parallelism is a passion,” Reinders said.
“Ultimately we decided it would work best if we took that role and ran as
our own project. Eclipse or Apache was decided to be not the best route to
take though we’re not closed to thinking about it. But right now we’re
committed to running it ourselves and making sure it has a passionate
parallelism.”
This article was first published on InternetNews.com. To read the full article, click here.
-
Huawei’s AI Update: Things Are Moving Faster Than We Think
FEATURE | By Rob Enderle,
December 04, 2020
-
Keeping Machine Learning Algorithms Honest in the ‘Ethics-First’ Era
ARTIFICIAL INTELLIGENCE | By Guest Author,
November 18, 2020
-
Key Trends in Chatbots and RPA
FEATURE | By Guest Author,
November 10, 2020
-
Top 10 AIOps Companies
FEATURE | By Samuel Greengard,
November 05, 2020
-
What is Text Analysis?
ARTIFICIAL INTELLIGENCE | By Guest Author,
November 02, 2020
-
How Intel’s Work With Autonomous Cars Could Redefine General Purpose AI
ARTIFICIAL INTELLIGENCE | By Rob Enderle,
October 29, 2020
-
Dell Technologies World: Weaving Together Human And Machine Interaction For AI And Robotics
ARTIFICIAL INTELLIGENCE | By Rob Enderle,
October 23, 2020
-
The Super Moderator, or How IBM Project Debater Could Save Social Media
FEATURE | By Rob Enderle,
October 16, 2020
-
Top 10 Chatbot Platforms
FEATURE | By Cynthia Harvey,
October 07, 2020
-
Finding a Career Path in AI
ARTIFICIAL INTELLIGENCE | By Guest Author,
October 05, 2020
-
CIOs Discuss the Promise of AI and Data Science
FEATURE | By Guest Author,
September 25, 2020
-
Microsoft Is Building An AI Product That Could Predict The Future
FEATURE | By Rob Enderle,
September 25, 2020
-
Top 10 Machine Learning Companies 2020
FEATURE | By Cynthia Harvey,
September 22, 2020
-
NVIDIA and ARM: Massively Changing The AI Landscape
ARTIFICIAL INTELLIGENCE | By Rob Enderle,
September 18, 2020
-
Continuous Intelligence: Expert Discussion [Video and Podcast]
ARTIFICIAL INTELLIGENCE | By James Maguire,
September 14, 2020
-
Artificial Intelligence: Governance and Ethics [Video]
ARTIFICIAL INTELLIGENCE | By James Maguire,
September 13, 2020
-
IBM Watson At The US Open: Showcasing The Power Of A Mature Enterprise-Class AI
FEATURE | By Rob Enderle,
September 11, 2020
-
Artificial Intelligence: Perception vs. Reality
FEATURE | By James Maguire,
September 09, 2020
-
Anticipating The Coming Wave Of AI Enhanced PCs
FEATURE | By Rob Enderle,
September 05, 2020
-
The Critical Nature Of IBM’s NLP (Natural Language Processing) Effort
ARTIFICIAL INTELLIGENCE | By Rob Enderle,
August 14, 2020
SEE ALL
ARTICLES