badri@ur-valhalla.UUCP (Badri Lokanathan) (02/02/87)
We run BSD4.2 on a VAX 11/750 with 2M (yes, 2M!) core and configured with 16M swap space. We have a program with large pieces of fortran code that we cannot rewrite in C with dynamic memory allocation. It contains several large arrays hardwired in it. We also have another module, written in C, which needs to be linked to the program. Problems: (1) It is possible to run the program for small array sizes (and hence small examples,) but it does not run with large arrays (and examples.) We get the message "Not enough core". (2) The module can be compiled with an old version of the program and run, but not with the latest version of the program (even with arrays reduced to really small sizes.) I even know where the error lies, from some debug messages that I put into the kernel. Apparently I have a swap map overflow; for those who have seen the interns of BSD4.2 kernel code, the limit is exceeded in /usr/sys/vax/vm_machdep.c:chksize: ctod(ds) = 12906 exceeds maxdmap = 12256. None of the defined hardlimits (MAXTSIZE, MAXDSIZE and MAXSSIZE) are exceeded. I do not want to start tweaking parameters without knowing what goes on, but I need a fix! Can somebody shed some light? size on the binary that barfs gives: text data bss dec hex 424960 269312 6338512 7032784 6b4fd0 -- "Don't blame me for wanting more {) ur-valhalla!badri@rochester.arpa The facts are too hard to ignore //\\ {ames,caip,cmcl2,columbia,cornell, I'm scared to death of poverty ///\\\ harvard,ll-xn,rutgers,seismo, I only want what's best for me."-UB40 /\ topaz}!rochester!ur-valhalla!badri
hansen@mips.UUCP (02/03/87)
In article <1003@ur-valhalla.UUCP>, badri@ur-valhalla.UUCP (Badri Lokanathan) writes: > I even know where the error lies, from some debug messages that I put > into the kernel. Apparently I have a swap map overflow; for those who > have seen the interns of BSD4.2 kernel code, the limit is exceeded in > /usr/sys/vax/vm_machdep.c:chksize: ctod(ds) = 12906 exceeds maxdmap = 12256. > None of the defined hardlimits (MAXTSIZE, MAXDSIZE and MAXSSIZE) are > exceeded. BSD 4.2 has some hard limits at about 6.5 MegaBytes of data space, that require kernel changes to get past. An upgrade to BSD 4.3 will solve the problem, as the VM limits have been pushed up substantially. -- Craig Hansen | "Evahthun' tastes MIPS Computer Systems | bettah when it ...decwrl!mips!hansen | sits on a RISC"