Releases: dds-bridge/dds
Releases · dds-bridge/dds
v2.2.1
- Fixed fault in using the Windows function to detect RAM memory size that could cause DDS termination.
- Add clarification that DDS 2.2.1 is a 32-bit DLL, not capable of using more than 4 GB. Max threads are 8.
v2.2.0
- 2.2.0 is 10-15% faster than 2.1.2.
- Added function
SolveAllBoards
. - DDS used a deficient function in Windows to detect RAM memory size, which could cause too few threads to be allocated. DDS now uses a correct Windows function to detect the RAM size.
- Corrected failure by DDS to detect PBN text coded card distributions with less than 52 cards.
- Fixed hang when a faulty card distribution was provided in the CalcDDtable call. (This fault was not present in the openMP alternative though.)
v2.1.2
- 2.1.2 is about 10% faster than 2.1.1.
- 2 new callable functions have been added:
SolveBoardPBN
andCalcDDtablePBN
. They both accept PBN format for the remaining cards in the deal information instead of the bit codes. - Code improvements have been done concerning quick tricks detection and move ordering.
v2.1.1
- The maximum number of threads is configurable depending on the size of the physical memory. The configuration is either done automatically by reading out the physical memory size by the operating system, or by supplying parameter values in
InitStart
.
v2.1.0
- Added OpenMP as multi-thread support for
CalcDDtable
when compiling with gcc 4.4.0 or later. - Added a similarity deals test function for reuse of the transposition table contents when the current deal is similar to the previous deal.
v2.0.1
- In 2.0.0, the contents of the transposition table could be erroneously be reused when the previous position contained a different number of cards. This was caused by an erroneous implementation of the deal similarity test. This bug was fixed by removing the similarity test.
- The DDS version number is defined by a #define statement in
dll.h
.
v2.0.0
SolveBoard
is now thread-safe.- The
SolveBoard
parametermode
no longer needs to be set to 2. - DDS automatically detects situations when the transposition table contents can be reused.
- Used with a single thread, DDS 2.0.0 has about the same speed as DDS 1.1.9.
- Used with 2 parallel threads, DDS 2.0.0 is twice as fast as the single thread case.
- A new function
CalcDDtable
has been added.CalcDDtable
callsSolveBoard
using parallel threads. The number of - Parallel threads is the same as the number of processor cores.
CalcDDtable
calculates the double dummy values of the initial 52 cards for all the 20 trump suit/leading hand combinations.
v1.1.20
- "Plus" version has
CalcDDtable
,CalcDDtablePBN
,CalcPar
andCalcParPBN
functions available. - "PBN" version means the application using the DLL may have to be adapted to handle the PBN alternative.
- "No PBN" version means previous DLL prior to 1.1.20 can be replaced by the 1.1.20 DLL without any further implications.
v1.1.18
- This release is licensed under Apache 2.0 instead of GPL for the previous releases.
- There is a slight change of the move ordering compared to 1.1.17.
v1.1.17
- A total speed increase of 4% is achieved compared to 1.1.16.
- A newer port from GCC to Windows, the TDM-GCC 4.7.1 version is used. It gives faster DLLs and does not require any supporting DLLs.
- Also, the move ordering has been slightly improved.