> If the data are stored as a byte array but retrieve into a ResultSet,
> the unpacking time goes up by an order of magnitude and the
> observed total throughput is 25 MB/s. If the data are stored in a
> Postgres float array and unpacked into a byte stream, the
> observed throughput is 20 MB/s.
float <-> text conversions are very slow, this is in fact due to the
mismatch between base-2 (IEEE754) and base-10 (text) floating point
representation, which needs very very complex calculations.