Re: [AMBER] Problem with increasing values in limits.h for resp

From: FyD <fyd.q4md-forcefieldtools.org>
Date: Thu, 25 Jul 2013 08:58:19 +0200

Dear Hamed,

> Actually I used the Amber12 resp.F with modified limits in limits.h
> with -mcmodel=large, before Jean suggested me to use your resp
> version, and it worked. So is there any specific reason that you
> suggest me to use it instead of the original version?

This is just that we have only tested the standalone version, and we
did not know the impact of the -mcmodel=large on the global
installation of the AmberTools.

> It seems that the values used in Amber12 resp.F are commented out;
> although I don't know fortran!

I do not know fortran either, but I can try to read and understand
what is done ;-)

Yes this _was_ in resp.f and because these multiple occurrences are
quite painful they were commented and replaced by include calls of
limits.h in AmberTools/resp.F.

> However, it worked.
> No I am not sure about the amount of RAM it can get in my machine
> and I don't have chance to check it with "top" as it is killed
> immediately.
> Maxq=20000 is enough for my case, but I am curious about the upper
> limits because I am thinking about having bigger systems in near
> future...

Well we set up the new limits in resp.f (besides other modifications):
       parameter (maxq = 8000)
       parameter (maxlgr = 900)
       parameter (maxmol = 400)
and these modifications were copied by one Amber developer but in
limits.h and the include calls were added in resp.F.

from our tests maxq = 8000, maxlgr = 900 & maxmol = 400 (we could
imagine defining two parameters as a function a first one that would
be modified) are more or less the limits for a 32 bit system.

my understanding is that there is almost no RAM limit for 64 bit
systems - except the amount of physical RAM available on the machine.
but I am sure people in this list can explain that better than me.

regards, Francois


> On Jul 24, 2013, at 12:06 AM, FyD <fyd.q4md-forcefieldtools.org> wrote:
>
>> Dear Hamed,
>>
>>> Just to verify,
>>> Recompiling resp with -mcmodel=large as Jean advised, worked for me,
>>> but it seems that changing the values in limits.h is enough and
>>> there is no need to change all the maxq, maxlgr and maxmol values in
>>> resp.F.
>>
>> My understanding is that you can_not_ modify the values of maxq,
>> maxlgr and maxmol in 'resp.F' (from the AmberTools & you have to apply
>> these corrections in 'src/etc/limits.h'); while you have to do it in
>> 'resp.f' in the standalone version of the RESP program we provide.
>>
>>> However, when I raised them to extreme
>>> (maxq=50000,maxlgr=10000,maxmol=1000) values in limits.h, the
>>> installation succeeded, but running resp immediately terminated with
>>> "Killed" prompt which seems to be a real memory isuue and I think
>>> it is machine-dependent.
>>
>> are you sure you have the requested amount of RAM in the machine you use?
>>
>>> So when I relaxed the parameters to maxq=20000, maxlgr=2900 and
>>> maxmol=300 (which is good enough for my problem), everything seemed
>>> to be fine.
>>
>> well if maxq=20000, maxlgr=2900 and maxmol=300 work for you why
>> increasing these values even more?
>>
>> regards, Francois
>>
>>
>>> On Jul 23, 2013, at 2:46 AM, Jean-Paul Becker
>>> <jpb.q4md-forcefieldtools.org> wrote:
>>>
>>>> Hi Hamed,
>>>>
>>>> You are welcome.
>>>> You may go the easy way and download the standalone version
>>>> of RESP from our web site at:
>>>> http://q4md-forcefieldtools.org/RED/resp/
>>>> (You will find the download link at the bottom of the page)
>>>> You will have to:
>>>> - correct the maxq and maxmol parameters
>>>> in each routine (likely 15 corrections for each of them)
>>>> - edit the Makefile to choose your Fortran compiler
>>>> and add the -mcmodel=medium option when required.
>>>>
>>>> We are currently developing a new version of RESP
>>>> that will bring new functionalities devoted to the assessment
>>>> of the fit quality.
>>>> In this new version all the values of these parameters
>>>> (maxq, maxmol...) will be determined in a single place
>>>> to avoid the annoyance of going through the whole code
>>>> to change them.
>>>>
>>>> Cheers.
>>>> JPB.
>>>>
>>>> "Hamed S. Hayatshahi" <biophysicist1981.yahoo.com> a écrit :
>>>>> Thanks everyone. So I would start with changing the compilation
>>>>> option Jean suggested and then think about changing more stuff in
>>>>> the code.
>>>>> But how and where should I change those compilation options?
>>>>> Should I change them prior to configuring?
>>>>>
>>>>> Thanks,
>>>>>
>>>>> Hamed S. Hayatshahi
>>>>> PhD student of Medicinal Chemistry
>>>>> University of Utah
>>>>> ??? ???? ????? ????????
>>>>> ??????? ?????? ???? ??????
>>>>> ??????? ????
>>>>>
>>>>> On Jul 22, 2013, at 1:38 AM, Jean-Paul Becker
>>>>> <jpb.q4md-forcefieldtools.org> wrote:
>>>>>
>>>>>> Dear Hamed,
>>>>>>
>>>>>> 1. Regarding your first question, I would change the compilation
>>>>>> option for resp and try something like:
>>>>>> -mcmodel=medium or even -mcmodel=large
>>>>>> That will change the way memory is handled and should
>>>>>> allow for larger arrays of data.
>>>>>>
>>>>>> 2. Regarding your second question, you figured it out right:
>>>>>> - maxmol is the maximum number of molecules.
>>>>>> - maxq is the maximum number of charge centers of all molecules
>>>>>> considered together.
>>>>>> - maxlgr is the maximum number of charge constraints you want
>>>>>> to apply.
>>>>>> You have to consider in this number not only the charges imposed
>>>>>> to each molecule of your set but also all the intra- and inter-molecular
>>>>>> charge constraints.
>>>>>>
>>>>>> I hope this helps.
>>>>>> Cheers.
>>>>>> JPB.
>>>>>>
>>>>>>
>>>>>>
>>>>>> "Hamed S. Hayatshahi" <biophysicist1981.yahoo.com> a écrit :
>>>>>>
>>>>>>> Hi
>>>>>>>
>>>>>>> I am about to do a resp charge fit (using R.E.D. script) for totally
>>>>>>> 276 molecules (46 conformations each with 6 reorientations) each
>>>>>>> having 65 atoms which make totally 17940 centers. As expected, the
>>>>>>> resp cannot handle these many centers with its default maxq value
>>>>>>> defined in $AMBEHOME/AmberTools/src/etc/limits.h. So I increased the
>>>>>>> values and recompiled amber (amber12 with ambertoolds13). But when I
>>>>>>> go beyond "maxq=8000, maxlgr=2900 and maxmol=300", amber
>>>>>>> installation fails at "make install" step finishing with the
>>>>>>> following lines:
>>>>>>>
>>>>>>> 235/amber-em/amber12/include -shared-intel \
>>>>>>> lapack.o resp.o -o resp
>>>>>>> resp.o: In function `MAIN__':
>>>>>>> resp.F:(.text+0x130): relocation truncated to fit: R_X86_64_PC32
>>>>>>> against symbol `infoa_' defined in COMMON section in resp.o
>>>>>>> resp.F:(.text+0x13b): relocation truncated to fit: R_X86_64_PC32
>>>>>>> against symbol `infoa_' defined in COMMON section in resp.o
>>>>>>> resp.o: In function `readin_':
>>>>>>> resp.F:(.text+0x58b): relocation truncated to fit: R_X86_64_PC32
>>>>>>> against symbol `infoa_' defined in COMMON section in resp.o
>>>>>>> resp.F:(.text+0x5a9): relocation truncated to fit: R_X86_64_PC32
>>>>>>> against symbol `infoa_' defined in COMMON section in resp.o
>>>>>>> resp.F:(.text+0x5b3): relocation truncated to fit: R_X86_64_PC32
>>>>>>> against symbol `infoa_' defined in COMMON section in resp.o
>>>>>>> resp.F:(.text+0xb1f): relocation truncated to fit: R_X86_64_PC32
>>>>>>> against symbol `infoa_' defined in COMMON section in resp.o
>>>>>>> resp.F:(.text+0xb51): relocation truncated to fit: R_X86_64_PC32
>>>>>>> against symbol `infoa_' defined in COMMON section in resp.o
>>>>>>> resp.F:(.text+0x10a2): relocation truncated to fit: R_X86_64_PC32
>>>>>>> against symbol `infoa_' defined in COMMON section in resp.o
>>>>>>> resp.F:(.text+0x1108): relocation truncated to fit: R_X86_64_PC32
>>>>>>> against symbol `infoa_' defined in COMMON section in resp.o
>>>>>>> resp.F:(.text+0x112d): relocation truncated to fit: R_X86_64_PC32
>>>>>>> against symbol `infoa_' defined in COMMON section in resp.o
>>>>>>> resp.F:(.text+0x14b2): additional relocation overflows omitted from
>>>>>>> the output
>>>>>>> make[2]: *** [resp] Error 1
>>>>>>> make[2]: Leaving directory
>>>>>>> `/uufs/chpc.utah.edu/common/home/u0723235/amber-em/amber12/AmberTools/src/etc'
>>>>>>> make[1]: *** [serial] Error 2
>>>>>>> make[1]: Leaving directory
>>>>>>> `/uufs/chpc.utah.edu/common/home/u0723235/amber-em/amber12/AmberTools/src'
>>>>>>> make: *** [install] Error 2
>>>>>>>
>>>>>>>
>>>>>>> Then all tests fail in "make test" step. I used ./configure intel.
>>>>>>> Now, two questions:
>>>>>>>
>>>>>>> 1- Is there anyway that I can go beyond the mentioned limits,
>>>>>>> especially maxq > 8000?
>>>>>>>
>>>>>>> 2- I think maxq is the max number of centers and maxmol is the max
>>>>>>> number of molecules; but I am not sure what maxlgr is and how it
>>>>>>> should be balanced with other values? There is an advice in a
>>>>>>> discussion in 2009
>>>>>>> (http://structbio.vanderbilt.edu/archives/amber-archive/2009/3026.php)
>>>>>>> to
>>>>>>> pay attention to the multiple occurrences of these values in resp.F,
>>>>>>> but I couldn't understand why and how is it important?
>>



_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Thu Jul 25 2013 - 00:00:02 PDT
Custom Search