From 805761d865f47153fb29ce58b7fbdb449dd34229 Mon Sep 17 00:00:00 2001 From: Bo Haglund Date: Mon, 16 Jul 2012 01:50:46 -0400 Subject: [PATCH] historical commit dds 1.1.14 --- DLL-dds_1113_m.rtf => DLL-dds_1114_m.rtf | 2 +- dds.cpp | 13 +++++++------ dll.h | 2 +- release_notes.txt | 12 ++++++++++++ 4 files changed, 21 insertions(+), 8 deletions(-) rename DLL-dds_1113_m.rtf => DLL-dds_1114_m.rtf (98%) diff --git a/DLL-dds_1113_m.rtf b/DLL-dds_1114_m.rtf similarity index 98% rename from DLL-dds_1113_m.rtf rename to DLL-dds_1114_m.rtf index ffaf56c4..0e6dc727 100644 --- a/DLL-dds_1113_m.rtf +++ b/DLL-dds_1114_m.rtf @@ -6,7 +6,7 @@ Rev M, 2011-10-14\par Latest DLL issue with this description is available at {\field{\*\fldinst{HYPERLINK "http://www.bahnhof.se/wb758135/"}}{\fldrslt{\ul\cf1 http://www.bahnhof.se/wb758135/}}}\f0\fs20\par \par \par -\pard\keepn\nowidctlpar\s2\cf2\ul\b Short description of the DLL functions supported in Double Dummy Problem Solver 1.1.13\par +\pard\keepn\nowidctlpar\s2\cf2\ul\b Short description of the DLL functions supported in Double Dummy Problem Solver 1.1.14\par \pard\nowidctlpar\ulnone\b0\par \pard\keepn\nowidctlpar\s3\b Callable functions\par \pard\nowidctlpar\b0\par diff --git a/dds.cpp b/dds.cpp index f2e0909a..da2a0d5d 100644 --- a/dds.cpp +++ b/dds.cpp @@ -1,5 +1,5 @@ -/* DDS 1.1.13 A bridge double dummy solver. */ +/* DDS 1.1.14 A bridge double dummy solver. */ /* Copyright (C) 2006-2012 by Bo Haglund */ /* Cleanups and porting to Linux and MacOSX (C) 2006 by Alex Martelli */ /* */ @@ -47,7 +47,7 @@ struct winCardType temp_win[5]; int nodeSetSizeLimit=0; int winSetSizeLimit=0; int lenSetSizeLimit=0; -__int64 maxmem, allocmem, summem; +unsigned __int64 maxmem, allocmem, summem; int wmem, nmem, lmem; int maxIndex; int wcount, ncount, lcount; @@ -827,7 +827,7 @@ int _initialized=0; void InitStart(int gb_ram, int ncores) { int k, r, i, j; unsigned short int res; - long double pcmem; /* kbytes */ + unsigned __int64 pcmem; /* kbytes */ if (_initialized) return; @@ -842,15 +842,16 @@ void InitStart(int gb_ram, int ncores) { SYSTEM_INFO temp; MEMORYSTATUSEX statex; + statex.dwLength = sizeof (statex); GlobalMemoryStatusEx (&statex); - pcmem=(long double)(statex.ullTotalPhys/1024); + pcmem=(unsigned __int64)(statex.ullTotalPhys/1024); GetSystemInfo(&temp); } else { - pcmem=(long double)(1000000 * gb_ram); + pcmem=(unsigned __int64)(1000000 * gb_ram); } nodeSetSizeLimit=NINIT; @@ -862,7 +863,7 @@ void InitStart(int gb_ram, int ncores) { 25000001*sizeof(struct winCardType)+ 400001*sizeof(struct posSearchType))); else { - maxmem = (__int64)(pcmem-32678) * 700; + maxmem = (unsigned __int64)(pcmem-32678) * 700; /* Linear calculation of maximum memory, formula by Michiel de Bondt */ if (maxmem < 10485760) exit (1); diff --git a/dll.h b/dll.h index 7d9d475b..3c768e58 100644 --- a/dll.h +++ b/dll.h @@ -29,7 +29,7 @@ /* end of portability-macros section */ -#define DDS_VERSION 10113 /* Version 1.1.13. Allowing for 2 digit +#define DDS_VERSION 10114 /* Version 1.1.14. Allowing for 2 digit minor versions */ /*#define BENCH*/ diff --git a/release_notes.txt b/release_notes.txt index a0ca4e1e..b0621700 100644 --- a/release_notes.txt +++ b/release_notes.txt @@ -326,9 +326,21 @@ function to detect the RAM size. 1.1.13 is 5-10% faster than 1.1.12. +Release Notes DDS 2.2.1 +----------------------- +Problem fixed in 2.2.1: +Fault in using the Windows function to detect RAM memory size that could +cause DDS termination. +Clarifying that DDS 2.2.1 is a 32-bit DLL not capable of using more than 4 GB. +Max threads are 8. +Release Notes DDS 1.1.14 +------------------------ +Problem fixed in 1.1.14: +Fault in using the Windows function to detect RAM memory size that could +cause DDS termination.