__gnu_para...GlobalData(3)
π
__gnu_para...GlobalData(3) β Library Functions Manual π
okay so bestie, welcome to the group chat for __gnu_parallel::DRandomShufflingGlobalData β it's a libstdc++ page, and it's basically the shared notes doc that every thread reads from when they're doing a parallel_random_shuffle(). everyone gets a copy, nobody gatekeeps. slay. β¨
β¨ NAME β¨
__gnu_parallel::DRandomShufflingGlobalData β the data that's known to every single thread participating in __gnu_parallel::parallel_random_shuffle(). it's giving "shared group chat, everyone's caught up." π
πΈ SYNOPSIS πΈ
π¦ Public Types
typedef traits_type::difference_type difference_typeβ the difference type, inherited straight fromtraits_type. icon behavior.typedef std::iterator_traits< RandomAccessIterator > traits_typeβ the iterator traits forRandomAccessIterator.typedef traits_type::value_type value_typeβ the value type, also riding ontraits_type.
π Public Member Functions
DRandomShufflingGlobalData (RandomAccessIterator &_source)β the constructor, bestie. takes a reference to the source.
π Public Attributes
thread_index_t * bin_procβ number of the thread that will further process the corresponding bin.difference_type ** distβ two-dimensional array holding the thread-bin distribution.int num_binsβ number of bins to distribute to.int num_bitsβ number of bits needed to address the bins.RandomAccessIterator & sourceβ begin iterator of the source.difference_type * startsβ start indexes of the threads' chunks.value_type ** temporariesβ temporary arrays for each thread.
π Detailed Description π
template<typename RandomAccessIterator> struct
__gnu_parallel::DRandomShufflingGlobalData< RandomAccessIterator >
Data known to every thread participating in __gnu_parallel::parallel_random_shuffle().
fr fr, that's the whole vibe β a templated struct on RandomAccessIterator, and it's the shared state everyone's working off. Definition at line 52 of file random_shuffle.h. periodt. π
π§ Constructor & Destructor Documentation π§
β DRandomShufflingGlobalData
template<typename RandomAccessIterator>
__gnu_parallel::DRandomShufflingGlobalData< RandomAccessIterator
>::DRandomShufflingGlobalData (RandomAccessIterator & _source) [inline]
Constructor. that's it, that's the whole note β it's [inline], it takes _source, and it does constructor things. no cap.
Definition at line 83 of file random_shuffle.h. π«Ά
π Member Data Documentation π
π bin_proc
template<typename RandomAccessIterator> thread_index_t*
__gnu_parallel::DRandomShufflingGlobalData< RandomAccessIterator
>::bin_proc
Number of the thread that will further process the corresponding bin.
Definition at line 74 of file random_shuffle.h.
Referenced by __gnu_parallel::parallel_random_shuffle_drs().
π¦ dist
template<typename RandomAccessIterator> difference_type**
__gnu_parallel::DRandomShufflingGlobalData< RandomAccessIterator >::dist
Two-dimensional array to hold the thread-bin distribution.
Dimensions (num_threads + 1) x (num_bins + 1). love a little grid moment. π₯
Definition at line 67 of file random_shuffle.h.
Referenced by __gnu_parallel::parallel_random_shuffle_drs(), and __gnu_parallel::parallel_random_shuffle_drs_pu().
π num_bins
template<typename RandomAccessIterator> int
__gnu_parallel::DRandomShufflingGlobalData< RandomAccessIterator
>::num_bins
Number of bins to distribute to.
Definition at line 77 of file random_shuffle.h.
Referenced by __gnu_parallel::parallel_random_shuffle_drs(), and __gnu_parallel::parallel_random_shuffle_drs_pu().
π num_bits
template<typename RandomAccessIterator> int
__gnu_parallel::DRandomShufflingGlobalData< RandomAccessIterator
>::num_bits
Number of bits needed to address the bins.
Definition at line 80 of file random_shuffle.h.
Referenced by __gnu_parallel::parallel_random_shuffle_drs(), and __gnu_parallel::parallel_random_shuffle_drs_pu().
π source
template<typename RandomAccessIterator> RandomAccessIterator&
__gnu_parallel::DRandomShufflingGlobalData< RandomAccessIterator
>::source
Begin iterator of the source.
Definition at line 59 of file random_shuffle.h.
lowkey iconic that this one has no "Referenced by" list. it's just out here living its truth. π
πΈ starts
template<typename RandomAccessIterator> difference_type*
__gnu_parallel::DRandomShufflingGlobalData< RandomAccessIterator
>::starts
Start indexes of the threads' chunks.
Definition at line 70 of file random_shuffle.h.
Referenced by __gnu_parallel::parallel_random_shuffle_drs(), and __gnu_parallel::parallel_random_shuffle_drs_pu().
π§ temporaries
template<typename RandomAccessIterator> value_type**
__gnu_parallel::DRandomShufflingGlobalData< RandomAccessIterator
>::temporaries
Temporary arrays for each thread.
Definition at line 62 of file random_shuffle.h.
Referenced by __gnu_parallel::parallel_random_shuffle_drs().
π Author π
Generated automatically by Doxygen for libstdc++ from the source code. not a human, just a robot doing its lil thing. we respect it. π€β¨
ok that's the whole page bestie, you ate. go forth and shuffle randomly, in parallel, with all your threads on the same page. π π¦
signed, sealed, delivered by libstdc++, dated 21 Apr 2009 β yeah she's an old queen but she still slays. ππ
π¦ where this page comes from
- nixpkgs unstable: std-man-pages 4.4.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms