LibreOffice Module comphelper (master)  1
Namespaces | Macros | Functions | Variables
parallelsort.hxx File Reference
#include <comphelper/comphelperdllapi.h>
#include <comphelper/threadpool.hxx>
#include <tools/cpuid.hxx>
#include <memory>
#include <iterator>
#include <thread>
#include <algorithm>
#include <cmath>
#include <random>
#include <functional>
#include <iostream>
#include <chrono>
Include dependency graph for parallelsort.hxx:

Go to the source code of this file.

Namespaces

 comphelper
 

Macros

#define PARALLELSORT_ENABLEPZ   0
 

Functions

static comphelper::ThreadPoolcomphelper::rTPool (comphelper::ThreadPool::getSharedOptimalPool())
 
template<class RandItr , class Compare = std::less<>>
void comphelper::parallelSort (const RandItr aBegin, const RandItr aEnd, Compare aComp=Compare())
 

Variables

static const size_t comphelper::nThreadCountGlobal = std::thread::hardware_concurrency()
 
static const bool comphelper::bHyperThreadingActive = cpuid::hasHyperThreading()
 

Macro Definition Documentation

#define PARALLELSORT_ENABLEPZ   0

Definition at line 35 of file parallelsort.hxx.

Variable Documentation

size_t maBinEnds[nMaxTreeArraySize]

Definition at line 171 of file parallelsort.hxx.

ValueType maDividers[nMaxTreeArraySize]

Definition at line 165 of file parallelsort.hxx.

const std::function<void()> maFunc

Definition at line 109 of file parallelsort.hxx.

uint8_t maLabels[mnMaxStaticSize]

Definition at line 164 of file parallelsort.hxx.

size_t maSepBinEnds[nMaxTreeArraySize *nMaxTreeArraySize]

Definition at line 167 of file parallelsort.hxx.

std::shared_ptr<comphelper::ThreadTaskTag> maTag

Definition at line 123 of file parallelsort.hxx.

bool mbDummy

Definition at line 89 of file parallelsort.hxx.

bool mbThreaded

Definition at line 168 of file parallelsort.hxx.

const size_t mnDividers

Definition at line 162 of file parallelsort.hxx.

constexpr size_t mnMaxStaticSize = 1024 * 50
static

Definition at line 163 of file parallelsort.hxx.

const size_t mnTreeArraySize

Definition at line 161 of file parallelsort.hxx.

std::unique_ptr<uint8_t[]> pLabels

Definition at line 166 of file parallelsort.hxx.