Intel® oneAPI Threading Building Blocks
Ask questions and share information about adding parallelism to your applications when using this threading library.

Integrating TBB with other library

irisshinra308
Beginner
798 Views
Hello~
I am trying to integrate the perfmon library to TBB to give the task scheduler some extra hardware information.
However, I need to modify the Makefile to link an extra libpfm.a file provided by perfmon library.
I have scaned through the Makefiles in TBB package but still don't know how to do this.
Could you please help me with this problem

Any help would be grateful!!

Dennis
0 Kudos
5 Replies
Vladimir_P_1234567890
798 Views

hi Dennis,

LIBS variable is responsible for this. It is set in compiler-specific include files i.e. linux.icc.inc for the Intel compiler or linux.gcc.inc for the gcc.

Vladimir
0 Kudos
Anton_Pegushin
New Contributor II
798 Views
Quoting - irisshinra308
Hello~
I am trying to integrate the perfmon library to TBB to give the task scheduler some extra hardware information.
However, I need to modify the Makefile to link an extra libpfm.a file provided by perfmon library.
I have scaned through the Makefiles in TBB package but still don't know how to do this.
Could you please help me with this problem

Any help would be grateful!!

Dennis
Hello Dennis,

may I also ask you what kind of additional hardware information you want task scheduler to have and what is the purpose of it?
0 Kudos
irisshinra308
Beginner
798 Views
Thanks for the reply. That do help me a lot!!

After solving the library problem, I want to add a new cpp file into the src/tbb directory.
How should I modify the Makefile to compile the my new cpp file and link the corresponding object file?

I have try to compile the new cpp file into a object file manually and put the object file into the build diretory.
Then I add the object file into the TBB_CPLUS_OBJ in the Makefile.tbb.
However, the error message shows that the newly added object file could not be found.

Any help would be grateful

Dennis

0 Kudos
irisshinra308
Beginner
798 Views
Hello Dennis,

may I also ask you what kind of additional hardware information you want task scheduler to have and what is the purpose of it?

I am trying to make the task scheduler aware of the cache interference between threads.
Then I would try to solve this interference problem by re-scheduling tasks to lower the required cache footprint.

Dennis
0 Kudos
RafSchietekat
Valued Contributor III
798 Views

I assume you mean "TBB_CPLUS.OBJ" instead of "TBB_CPLUS_OBJ"? Did you use a backslash at the very end of the line? What is the error message?

0 Kudos
Reply