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

Segmentation fault with OpenMP

Riyad_Parvez
Beginner
195 Views

I'm using Intel TBB concurrent_hash_map and concurrent_vector with OpenMP for loop parallelization. I've used tbb::task_scheduler_init. But I'm getting segemntation fault. Interesting matter is when I open the terminal and run for first time the code in that terminal, it works perfectly. But after first run in terminal, if I run that code again in same terminal without closing it gives segmentation fault. How can I debug that?

0 Kudos
3 Replies
Riyad_Parvez
Beginner
195 Views

After checking in Valgrind, I've found the problem. I was trying to sort concurrent_vector by using std::sort. Can I use std::sort to sort concurrent_vector? Otherwise how can I do it?

0 Kudos
Vladimir_P_1234567890
195 Views

I guess you can try to use tbb::parallel_sort.

0 Kudos
RafSchietekat
Valued Contributor III
195 Views

Neither sort nor parallel_sort is allowed while the container is also being accessed by other threads. If it is not, both should work.

0 Kudos
Reply