help-glpk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Help-glpk] Makefiles for 64 bit Windows


From: Andrew Makhorin
Subject: Re: [Help-glpk] Makefiles for 64 bit Windows
Date: Fri, 29 Aug 2008 02:26:55 +0400

> when I compiled with
> #define align_boundary sizeof(double)
> example/sql/sudoku_odbc.mod 
> and some other models glpsol stopped without returning results.

> With
> #define align_boundary 16
> I obtained the expect results.

> http://msdn.microsoft.com/en-us/library/aa290049.aspx
> teaches "On both of the 64-bit platforms, the top of each stackframe
> is 16-byte aligned."

> http://msdn.microsoft.com/en-us/library/ycsb6wwf.aspx
> teaches "malloc is required to return memory on a 16-byte boundary."

> AMD Athlon offers 128 bit memory operations (e.g. CMPXCHG16B). 
> http://en.wikipedia.org/wiki/X86-64

> AMD64 technology for simultaneous high-performance 32- and 64-bit
> computing with a 128-bit integrated DDR memory controller
> http://www.amd.com/us-en/Corporate/VirtualPressRoom/0,,51_104_543_5730~82319,00.html

> Hence 128-bit alignment makes some sense.

Thank you. All this is very educational. :)

Nonetheless, it is unclear to me why and where the addressing error
happens, because all basic data types used in glpk are not longer than
8 bytes, so 8-byte alignment for structs and arrays is sufficient in
all cases, even in the case of 8-byte pointers.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]