Questions on TBB 3.0 and Cnc 0.6

Questions on TBB 3.0 and Cnc 0.6

I have been trying to run a piece of code using TBB and CnC, but I am getting some errors such as:undefined reference to 'tbb::internal::deallocate_via_handler_v3(void*)'
I believe that CnC 0.6 has been configured to run with TBB 3.0, but TBB 4.0 is currently installed on MTL.How do I use TBB 3.0?The getting started guide states that we should use:

$ source /opt/intel/composerxe/tbb/bin/ intel64

to set up the environment.

Any help would be greatly appreciated.

12 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

That's strange, tbb 4.0 should be backward compatible vs tbb 3.0 and tbb 2.2.There are several versions installed. To use 3.0 U3 version you can issue following command:source /opt/intel/composerxe-2011.0.084/tbb/bin/ intel64To use TBB 3.0 U8source /opt/intel/composerxe-2011.5.220/tbb/bin/ intel64--VladimirP.S.Update:could you check again pls? it looks that symlink/opt/intel/composerxe/tbb was fixed.To use TBB 4.0 you need to issue a commandsource /opt/intel/composer_xe_2011_sp1/tbb/bin/ intel64--Vladimir

Thanks.I tried all the TBB versions you suggested, but it still wont work for some reason.I then tried a simple code that only use the TBB function twice below:tick_count t1 = tick_count::now();
This too returns the following message:/tmp/ccvsJbuG.o: In function `main':SequentialSort.cpp:(.text+0xa6c): undefined reference to `clock_gettime'SequentialSort.cpp:(.text+0xce5): undefined reference to `clock_gettime'collect2: ld returned 1 exit status

Have you added (-lrt) to the command line?

No, I had no idea that line was needed. I was only using two lines to prepare the environment: the cnc sh and tbb sh file. Do you know of any guide that shows what commands are needed to run tbb and cnc?Thanks

I've only added -lrt to tbb examples in order to support vanilla gcc versions inrecent linux distributives.So I think this should be enough.--Vladimir

Thanks. What command do you use to run -lrt?

it can be next to -ltbb like:
$(CXX) -O2 -DNDEBUG $(CXXFLAGS) -o sub_string_finder sub_string_finder.cpp -ltbb -lrt--Vladimir

Thanks. I was able to run TBB successfully, but not CnC.I don't see any documentation for running it, but this is what I'm doing so far:$ source /opt/cnc/0.6/bin/intel64/$ source /opt/intel/composerxe/tbb/bin/ intel64$ g++ -o sort sort.cpp -ltbb -lrt
I get a long error report which contains something like this:undefined reference to `CnC::Internal::item_collection_i::~item_collection_i()'undefined reference to `CnC::Internal::context_base::current_step_instance()'Thanks a lot for your help.

have you added cnc library to the build? Like below$ g++ -o sort sort.cpp -ltbb -lrt -lcnc

Thanks. I realize I was also excluding the -ltbbmalloc library.
My program compiled successfully but was aborted during execution. My output from the PBS system is this:
MY QSUB FILE=========#!/bin/sh#PBS -l select=1:ncpus=32#PBS -N fitzSort./sortMESSEGE======-bash: /var/spool/PBS/mom_priv/jobs/15083.acaad01.SC: /bin/sh^M: bad interpreter: No such file or directoryDo you have any idea why it's giving this messge?Thanks

Run dos2unix command. You have windows end-of-lines.--Vladimir

Leave a Comment

Please sign in to add a comment. Not a member? Join today