[Developers] Modification to input of -cbs and -gbs

John Sibert sibert at hawaii.edu
Thu Aug 19 17:32:32 PDT 2010


Hi Alan -
Thanks for your note. Where did you post your document?

The 64-bit issue in ADMB could get complex and should be approached 
carefully.  Johnoel sent me a useful link you might want to look at: 
http://www.ibm.com/developerworks/linux/library/l-port64.html

Incidentally I just added the following functions to the AUTODIF library 
for saving and restoring pointers in the cmpdif stack:
void save_pointer_value(void* ptr);
void * restore_pointer_value(void);

Cheers,
John

On 08/18/2010 11:38 AM, Allan Hicks wrote:
> Ian Taylor and I just posted a document discussing the results of 
> testing different values of cbs and gbs for a large ADMB model (SS3).  
> One thing that we learned is that when using the command line to set 
> -gbs and -cbs (and -ams) it uses an integer data type. However, it 
> seems that the code for the calculations associated with the buffers 
> (excuse my ignorance) uses a long data type.  This limits the inputs 
> to values less than 2^31 and a total memory allocation around 2Gb.  
> Linux uses 64-bits to store long integers, thus we made a simple 
> change to how the command line inputs are read in (used long) and were 
> able to allocate 12Gb to an ADMB program.  However, Windows uses 
> 32-bits for a long integer, thus this change makes no difference in 
> Windows (I have no clue about macs).
>
> I made these changes to the xmodel3m.cpp file and attempted to add 
> some Doxygen comments. I did not attempt to change any of the memory 
> allocation warnings in gs_set.cpp that still reference 16-bit 
> systems.  I do not feel I understand the gradstack or cmpdiff buffers 
> enough to do this intelligently.
> I am wondering if this change would be useful to add to the source 
> code, and I am curious of the process to make changes to the source 
> code and how these changes are verified or moderated.
>
> Thanks,
> Allan
>
>
> _______________________________________________
> Developers mailing list
> Developers at admb-project.org
> http://lists.admb-project.org/mailman/listinfo/developers
>    

-- 
John Sibert
Emeritus Researcher, SOEST
University of Hawaii at Manoa

Visit the ADMB project http://admb-project.org/



More information about the Developers mailing list