Commit 3611e176 by Johannes Singler Committed by Johannes Singler

random_shuffle.h: (parallel_random_shuffle_drs) Get the actual number of threads after entering...

2008-06-05  Johannes Singler  <singler@ira.uka.de>

        * include/parallel/random_shuffle.h:
        (parallel_random_shuffle_drs) Get the actual number of
        threads after entering the parallel region. Indentation.
        * include/parallel/algo.h: (random_shuffle(begin, end))
        Add namespace qualification to avoid ambiguity.

From-SVN: r136406
parent bd7415db
2008-06-05 Johannes Singler <singler@ira.uka.de>
* include/parallel/random_shuffle.h:
(parallel_random_shuffle_drs) Get the actual number of
threads after entering the parallel region. Indentation.
* include/parallel/algo.h: (random_shuffle(begin, end))
Add namespace qualification to avoid ambiguity.
2008-06-04 Benjamin Kosnik <bkoz@redhat.com> 2008-06-04 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pb_ds/assoc_container.hpp: Change allocator typedef * include/ext/pb_ds/assoc_container.hpp: Change allocator typedef
......
...@@ -1649,7 +1649,7 @@ namespace __parallel ...@@ -1649,7 +1649,7 @@ namespace __parallel
{ {
c_rand_number<> r; c_rand_number<> r;
// Parallelization still possible. // Parallelization still possible.
random_shuffle(begin, end, r); __gnu_parallel::random_shuffle(begin, end, r);
} }
// Parallel algorithm for random access iterators. // Parallel algorithm for random access iterators.
......
...@@ -333,6 +333,7 @@ template<typename RandomAccessIterator, typename RandomNumberGenerator> ...@@ -333,6 +333,7 @@ template<typename RandomAccessIterator, typename RandomNumberGenerator>
# pragma omp parallel num_threads(num_threads) # pragma omp parallel num_threads(num_threads)
{ {
thread_index_t num_threads = omp_get_num_threads();
# pragma omp single # pragma omp single
{ {
pus = new DRSSorterPU<RandomAccessIterator, random_number> pus = new DRSSorterPU<RandomAccessIterator, random_number>
...@@ -375,9 +376,9 @@ template<typename RandomAccessIterator, typename RandomNumberGenerator> ...@@ -375,9 +376,9 @@ template<typename RandomAccessIterator, typename RandomNumberGenerator>
} }
starts[num_threads] = start; starts[num_threads] = start;
} //single } //single
// Now shuffle in parallel. // Now shuffle in parallel.
parallel_random_shuffle_drs_pu(pus); parallel_random_shuffle_drs_pu(pus);
} } // parallel
delete[] starts; delete[] starts;
delete[] sd.bin_proc; delete[] sd.bin_proc;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment