[comp.unix.ultrix] How can I increase limit on datasize under Ultrix3.1?

patel@umvlsi.ecs.umass.edu (Baiju Patel) (08/14/90)

I am running this program (VLSI placement and routing prog) which requires
lot of memory. Unfortunatly, for some strange reasons, I am not able to 
increase the limit on datasize. Which makes my program to abort when 
the memory requirement exceed 21M. I trying increasing limit by 
typing 
limit 30m
I get a message saying
limit: Not owner

If I try the same command as root, it accepts it. Except, limit remains
unchanged. I tried this command on microvax GPX II, VAX 11/780, VAX 8800
and so on. It does not seem to work anywhere. 

Am I doing something wrong or is it system limitation?

Please send reply directly to patel@ecs.umass.edu

Thanks in advance

baiju

alan@shodha.dec.com ( Alan's Home for Wayward Notes File.) (08/14/90)

	I'll try to mail a copy of my reply directly to the
	author, but this of general interest...  Of course
	George will probably get to it first.

In article <1138@umvlsi.ecs.umass.edu>, patel@umvlsi.ecs.umass.edu (Baiju Patel) writes:
> I am running this program (VLSI placement and routing prog) which requires
> lot of memory. Unfortunatly, for some strange reasons, I am not able to 
> increase the limit on datasize. Which makes my program to abort when 
> the memory requirement exceed 21M. I trying increasing limit by 
> typing 
> limit 30m
> I get a message saying
> limit: Not owner
> 
> If I try the same command as root, it accepts it. Except, limit remains
> unchanged. I tried this command on microvax GPX II, VAX 11/780, VAX 8800
> and so on. It does not seem to work anywhere. 
> 
> Am I doing something wrong or is it system limitation?

	In ULTRIX V3.1 and earlier the data and stack size limits
	are controlled by the configuration file parameters "dmmin"
	and "dmmax".  They are documented in the Guide to System
	Configuration File Maintainence.  Dmmin and dmmax also controlled
	page/swap space allocation.  Setting dmmax too large would tend
	to create more page/swap wastage.  A very old set of release
	notes had the algorithm that was used included in them.  I'll
	include a program at the end of the post that uses it.

	Starting in V4.0 the text, data and stack size are more directly
	controlled by thier own parameters.  There parameters are
	"maxtsiz", "maxdsiz" and "maxssiz" respectively.  The page/swap
	space allocation size is controlled by "swapfrag".  These are
	documented in the "Guide to ...".
> 
> Please send reply directly to patel@ecs.umass.edu
> 
> Thanks in advance
> 
> baiju

- - - - - - - - - CUT HERE - - -
/*
 *	Author:  Alan Rollow, CSC/CS, Digital Equipment Corp.
 *	File:	 virtual.c
 *	Date:	 12/7/88
 *	Version: 1.3
 *
 *	virtual.c - Calculate value of maximium virtual memory given 
 *	values of dmmin and dmmax.
 */
#ifndef	lint
static	char	SccsId[] = "@(#)virtual.c	1.3 (virtual) 12/7/88" ;
#endif

#include <stdio.h>

main(argc, argv)
int	argc ;
char	**argv ;
{
	int	i, m, max_virtual_mem ;
	int	dmmin, dmmax ;

	if( argc < 3 ) {
		fprintf(stderr, "Usage: virtual dmmin dmmax\n");
		exit(0);
	}

	dmmin = atoi(argv[1]);
	dmmax = atoi(argv[2]);

	for(i = 0, m = dmmin; m < dmmax; i++)
		m *= 2 ;

	max_virtual_mem = (48 - i) * dmmax - dmmin - 32 ;

	printf("Maximium Virtual Memory: %d = %d stack + %d data.\n",
		max_virtual_mem,
		max_virtual_mem / 2,
		max_virtual_mem / 2);
}
-- 
Alan Rollow				alan@nabeth.enet.dec.com