LUMIERA.clone/tests/library
Ichthyostega bdb2f12b80 Library: RandomDraw - use dynamic quantiser
For sake of simplicity, since this whole exercise is a byproduct,
the mapping calculations are done in doubles. To get even distribution
of values and a good randomisation, it is thus necessary to break
down the size_t hash value in a first step (size_t can be 64bit
and random numbers would be subject to rounding errors otherwise)

The choice of this quantiser is tricky; it must be a power of two
to guarantee even distribution, and if chosen to close to the grid
of the result values, with lower probabilities we'd fail to cover
some of the possible result values.  If chosen to large, then
of course we'd run danger of producing correlated numbers on
consecutive picks.

Attempting to use 4 bits of headroom above the log-2 of the
required value range. For example, 10-step values would use
a quantiser of 128, which looks like a good compromise.
The following tests will show how good this choice holds up.
2023-11-21 19:50:22 +01:00
..
advice Library: allow to check if Advice was explicitly given 2019-07-13 17:00:23 +02:00
c-lib Library/Application: complete technology switch (closes #1279) 2023-10-16 01:44:04 +02:00
diff Segmentation: structure analysis for splitSplice operation 2023-05-02 04:29:34 +02:00
idi
meta Scheduler: rectify λ-post API 2023-10-23 01:48:46 +02:00
query
test Test: helper for transitory manipulations 2023-11-08 19:27:08 +01:00
allocation-cluster-test.cpp
app-config-test.cpp
builder-qualifier-support-test.cpp Job-Planning: switch to processing references 2023-05-23 01:08:05 +02:00
cmdline-wrapper-test.cpp
custom-shared-ptr-test.cpp GCC-5 compatibility: remove the last remaining auto_ptrs 2017-05-01 21:43:10 +02:00
del-stash-test.cpp reduce include dependencies of DelStash 2018-04-01 00:37:58 +02:00
DIR_INFO
exception-error-test.cpp Library: discontinue setting error flag from Exceptions (see #1341) 2023-10-01 20:11:45 +02:00
format-cout-test.cpp Library: define string conversion trait more precisely 2017-12-04 03:53:36 +01:00
format-helper-test.cpp Scheduler: rectify λ-post API 2023-10-23 01:48:46 +02:00
format-string-test.cpp fix failing test - boost::format is getting better 2020-02-17 03:32:43 +01:00
hash-generator-test.cpp GCC-7: minor adjustments to make the testsuite PASS again 2018-04-29 03:15:57 +02:00
hash-indexed-test.cpp
hash-standard-to-boost-bridge-test.cpp
helloworldtest.cpp
ios-savepoint-test.cpp Lib: fix a bug with diagnostic output 2022-09-27 01:51:21 +02:00
item-wrapper-test.cpp C++17: fix detector for function signatures 2020-02-21 20:16:59 +01:00
iter-adapter-stl-test.cpp Library: allow to consume an iterator while taking the snapshot 2017-08-13 07:25:32 +02:00
iter-adapter-test.cpp Block-Flow: maintain an »Epoch« within the raw allocation Extent 2023-07-09 01:32:27 +02:00
iter-chain-search-test.cpp C++17: fix detector for STL container iterability 2020-02-21 18:57:49 +01:00
iter-cursor-test.cpp DOC: fix syntax of some doxygen links 2018-09-21 14:33:12 +02:00
iter-explorer-test.cpp Library: generalise pipeline summation into fold-left 2023-09-24 02:45:43 +02:00
iter-queue-test.cpp Modernise Unknown Exception handler and Exception messages 2018-04-02 01:48:51 +02:00
iter-source-test.cpp Modernise Unknown Exception handler and Exception messages 2018-04-02 01:48:51 +02:00
iter-stack-test.cpp Modernise Unknown Exception handler and Exception messages 2018-04-02 01:48:51 +02:00
itertools-test.cpp Modernise Unknown Exception handler and Exception messages 2018-04-02 01:48:51 +02:00
life-cycle-test.cpp Doxygen Fixes (#1062) 2017-04-02 04:22:51 +02:00
linked-elements-test.cpp Library: allow to reverse intrusive single linked list 2023-04-20 18:53:17 +02:00
multifact-argument-test.cpp
multifact-singleton-test.cpp Modernise Unknown Exception handler and Exception messages 2018-04-02 01:48:51 +02:00
multifact-test.cpp
null-value-test.cpp
opaque-holder-test.cpp Modernise Unknown Exception handler and Exception messages 2018-04-02 01:48:51 +02:00
opaque-unchecked-buffer-test.cpp Library: verify PlantingHandle's extended capabilities 2021-05-07 22:50:13 +02:00
optional-ref-test.cpp
path-array-test.cpp Global-Layer-Renaming: fix remaining textual usages and IDs in the code 2018-12-10 00:09:56 +01:00
polymorphic-value-test.cpp Chain-Load: work out DSL for generating DOT scripts 2023-11-16 03:19:19 +01:00
query-text-test.cpp
random-draw-test.cpp Library: RandomDraw - use dynamic quantiser 2023-11-21 19:50:22 +01:00
rational-test.cpp Timeline: safely calculate sum/difference of large fractional times 2022-12-01 23:23:50 +01:00
ref-array-test.cpp
removefromsettest.cpp
replaceable-item-test.cpp Job-Planning: dispose of FrameCoord in pipeline and Dispatcher interface 2023-06-18 03:50:48 +02:00
result-test.cpp Library: augment the »Either« wrapper to funciton invocation 2023-09-27 23:17:56 +02:00
scoped-collection-test.cpp Modernise Unknown Exception handler and Exception messages 2018-04-02 01:48:51 +02:00
scoped-holder-test.cpp Library: replace boost::noncopyable by our own library solution 2018-03-24 05:35:13 +01:00
scoped-holder-transfer-test.cpp
scoped-ptrvect-test.cpp
search-path-splitter-test.cpp
simple-allocator-test.cpp
split-splice-test.cpp Segmentation: add test case to cover instance management 2023-05-05 01:34:41 +02:00
sub-id-test.cpp
symbol-hashtable-test.cpp
symbol-test.cpp Symbol: also document usage as (tree)map key 2017-04-08 03:50:29 +02:00
sync-barrier-performance-test.cpp Library/Application: consolidate Monitor API and usage 2023-10-15 20:42:55 +02:00
sync-barrier-test.cpp Library/Application: switch Microbenchmark + SyncBarrier tests 2023-10-03 22:56:09 +02:00
sync-classlock-test.cpp Library/Application: consolidate Monitor API and usage 2023-10-15 20:42:55 +02:00
sync-locking-test.cpp Library/Application: complete technology switch (closes #1279) 2023-10-16 01:44:04 +02:00
sync-timedwait-test.cpp Library/Application: consolidate Monitor API and usage 2023-10-15 20:42:55 +02:00
sync-waiting-test.cpp Library/Application: consolidate Monitor API and usage 2023-10-15 20:42:55 +02:00
thread-wrapper-autonomous-test.cpp Library: test coverage for self-managed thread 2023-10-11 21:06:56 +02:00
thread-wrapper-join-test.cpp Library: complete and modernise ThreadWrapperJoin_test 2023-09-29 23:42:22 +02:00
thread-wrapper-lifecycle-test.cpp Library: test coverage for lifecycle management 2023-10-11 22:02:52 +02:00
thread-wrapper-self-recognition-test.cpp Library: verify thread self-recognition 2023-09-30 00:10:09 +02:00
thread-wrapper-test.cpp Library/Application: switch Microbenchmark + SyncBarrier tests 2023-10-03 22:56:09 +02:00
typed-allocation-manager-test.cpp
unique-malloc-owner-test.cpp
util-collection-test.cpp Library: integrate generic min/max function 2020-03-08 02:05:39 +01:00
util-floordiv-test.cpp Doxygen Fixes (#1062) 2017-04-02 04:22:51 +02:00
util-floorwrap-test.cpp Doxygen Fixes (#1062) 2017-04-02 04:22:51 +02:00
util-foreach-test.cpp Library: draft a SyncBarrier latch 2023-09-22 21:55:53 +02:00
util-parse-bool-test.cpp Util: use case-insensitive matching for parsing bool values 2021-08-20 14:33:59 +02:00
util-sanitised-identifier-test.cpp Library: new thread-wrapper implementation complete 2023-09-26 02:32:48 +02:00
util-tuple-test.cpp Library: extract helper for unloading a sequence into a tuple 2023-05-10 14:49:51 +02:00
variant-test.cpp
vector-transfer-test.cpp
verb-function-dispatch-test.cpp Library: complete test coverage of VerbPack 2019-06-11 02:40:20 +02:00
verb-visitor-dispatch-test.cpp the new design takes the old name 2023-06-22 20:23:55 +02:00