Skip to content

BDE 2.22 Release Notes

mversche edited this page Nov 1, 2014 · 1 revision

10/31/2014 BDE 2.22

Release Highlights

Feature Sumary
Modular Hashing An new system for defining and using hash functions
Decimal Floating Pointer Performance Now 10x faster (using Intel's DFP library)
Support for VS2013 Support for the Visual Studio 2013 compiler

Release Details

Modular Hashing

BDE 2.22 contains a major revision to how hash functions should be defined. Based on C++ ISO Proposal N3980, the new bslh package decouples the task of defining a hash function for a type, from the implementation of a hash algorithm. This has a number of important benefits:

  • Significantly easier to define a hash function for a type
  • Allows clients to independently select the hash algorithm to use
  • Provides implementations for some good (tested) standard hash algorithms (selected based on performance comparisons).
    • Spooky Hash - a good general purpose hash algorithm
    • Sip Hash - a hash algorithm that is a good psuedo-random function (for protection against DOS attacks)
  • Integrates seamlessly with existing standard-conforming hash containers (e.g., bsl::unordered_map)

Further information can be found in bslh

Decimal Floating Point Performance

The performance of decimal floating point types in bdldfp have been improved by 10x BDE 2.22. In BDE 2.22 bdldfp has adopted the Intel Decimal Floating Point Math Library as its underlying implementation.

Note that this change may impact the formatting of bdldfp::Decimal values to text.

Support for VS2013

As of BDE 2.22, Visual Studio 2013 will be a supported platform for the BDE libraries.