Alexander:
The change to defined(DARWIN) didn't work because the rest of the code doesn't
work with Os X. It won't compile.
/* Returns the physical memory size in k available for one process */
GB_ULONG GB_get_physical_memory(void){
#if defined(SUN5) || defined(LINUX)
long pagesize = sysconf(_SC_PAGESIZE);
long pages = sysconf(_SC_PHYS_PAGES);
ulong memsize = (pagesize/1024) * pages;
ulong nettomemsize = memsize - 10240; /* reduce by 10Mb (for kernel
etc.) */
_SC_PHYS_PAGES seems to be a problem.
I changed the hardcoded memory default to 2*1024*1024, rebuilt, reinstalled and
was able to get a medium sized database built and loaded. A larger, new
database failed on loading. This was using a 4 Gb MacBook Pro as well as a 8GB
MacPro.
As it stands ARB won't work with the new larger SILVA databases. I can't see
adding a patch that would be machine memory specific, but perhaps the default
memory should be adjusted to 1024*1024 in the distribution.
Thanks, Bob
-----Original Message-----
From: Alexander Hansen [mailto:[EMAIL PROTECTED]
Sent: Monday, April 21, 2008 5:13 PM
To: Forster, Robert
Cc: [email protected]
Subject: Re: [Fink-users] getting Fink to compile a new source file - ARb
related
On Apr 21, 2008, at 5:45 PM, Forster, Robert wrote:
ARB is running into a memory problem when large datasets are processed using
something called the pt_server. The pt_server process hangs and doesn't
establish a running system. I've tested this out with two different sized
datasets, the small one works, the large doesn't.
In discussions with Elmar Pruesse, a developer with ARB, he suggested this
memory fix in one of the source files.
>>
arb_assert(usedmemsize != 0);
return usedmemsize;
#else
return 128*1024; /* 128 Mb default memory */
#endif
<<<<
You can try two things:
a) replace the line
"#if defined(SUN5) || defined(LINUX)"
with
"#if defined(SUN5) || defined(LINUX) || defined(DARWIN)"
I don't know whether that code will work on darwin, so this might not
compile at all. But it's worth a try, and will really fix your problem
for good.
If that doesn't work, you could work around the problem, by changing the
default memory limit:
replace the line
"return 128*1024; /* 128 Mb default memory */"
with
"return 2*1024*1024; /* 2 GB default memory */"
<<
I made the first defined(DARWIN) change, repacked the file and put it into the
source directory. Now how do I get fink to see it? Do I just remove the deb
file or are there other things I need to do. Does anyone in the know think this
will work?
Thanks, Bob
Dr. Bob Forster
Bioproducts and Bioprocesses/Produits et procédés biologiques
Agriculture and Agri-Food Canada/Agriculture et Agroalimentaire Canada
Telephone/Téléphone: 403-317-2292
Facsimile/Télécopieur: 403-382-3156
Lethbridge Research Centre
PO Box 3000/5403 1st Ave. S.
Lethbridge, AB
T1J 4B1
[EMAIL PROTECTED]
The simplest way would be to do "fink rebuild arb" ; you'll have to ignore the
bad checksum error.
If that works the "right" way is to append it to
/sw/fink/10.4/unstable/main/finkinfo/sci/arb.patch and use the pristine source.
-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
Fink-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/fink-users