This is a very important information and it belongs in the library docs.
https://github.com/cppalliance/decimal/issues/1114
I would also request that you describe what happens upon addition,
when a new number is being produced: which item from the cohort is chosen? Does that matter for performance?
Yes having non-normalized numbers effects performance. Generally, with regular types 1 significand has to get shifted around to perform the operation (i.e. they have different exponents). After the rounding step (as applicable) you're left with the minimum representation which was one values initial cohort, or it's the minimum exponent required to represent the value. With the fast types this logic is easier because you know you're always starting with significands in a 1 decimal digit range. Matt