For a long time my understanding of the prominent warning that the function node body will be copied was that there had to be at least as many instances of the body class as there are of concurrent threads executing that particular body. But that understanding was incorrect. Nothing seems to be preventing multiple threads from accessing the same instance of the body class, so there is an implicit (at least, I haven't seen it stated anywhere) assumption that the operator() associated with the body is reentrant. First of all, can somebody confirm this?
The videos on the site are not visible for now. I am not even getting errors. just an empty screen. Not sure if it is on my side by i would not be surprised if there is something wrong going on. I tried from work and home and both are failing on multiple machines.
Hello. I have been starded work with Intel TBB. Is it possible to set affinity in Intel TBB? I want to run one thread on one core. I write sample test code, but it's dont work correcly.
Hello! I have some confusing parallel timing results for my code, which performs
heavy numerical work.
For using 1 core, my timing is 882 seconds;
For using 8 cores, my timing is 121 seconds (7.3x faster);
for using 16 cores; my timing is 101 seconds (8.7x faster);
for using 32 logical cores; timing is 100 seconds, as same with using 16 cores.
My questions focus on two points:
We have recently evaluated tbb::concurrent_unordered_set with a new tool that finds linearizability violations, a certain class of concurrency-related bugs . I just wanted to share that link in case there is interest in using the tool for other data structures in TBB. Of course, any form of feedback, questions, feature requests etc. are always warmly invited.
All best regards,
I am planning on parallelizing a hotspot in a project. And I would like to know your opinion between the performance evaluation between parallel for, omp single followed by task and intel TBB task_list, under ideal conditions where number of threads are equal to computation items and when computation are much greater than available threads to see scheduling overhead(in order to evaluate the most efficient scheduler). I will also, be writing some sample test programs to evaluate myself but I also wanted to know if anybody had previously made these evaluations.
Thanks in advance.
In my program, I use the Boost-Spirit-Qi to parse large data sets. Input data are sequential records . I am trying to use the TBB to increase the efficiency of parsing. The procedure for parallel processing of text data is as follows:
Can multiple TBB DLL versions be installed side by side ?
For example, can we have <intel>_tbb_4.2 and <intel>_tbb_4.3 installed side by side on the same machine ?
What would be the impact on performance ?
Would both applications using separate code paths function without crashing or deadlocking ?
I am relatively new to ICC, TBB and just started learning. Currently I am trying to compile a test code given for tbb in GettingStarted folder in side /opt/int/composer_xe_2015.1.133/tbb/examples. but unfortunately the compilation fails with the following error.
catastrophic error: cannot open source file "tbb/parallel_for.h"
I set all the paths by executing the compilervars.sh shell script. With export command I can see paths have been set properly (CPATH. LD_LIBRARY_PATH). Please kindly provide a suggestion to solve this issue. This is taking soo much of time.
enumerable_thread_specific::local() lazily copy constructs thread local storage. What should happen if we try to allocate too much memory in the copy constructor of the thread local object? In this case, a std::bad_alloc is thrown. This causes the members which were constructed during member initialization to be destructed as the stack is unwound.