#=========================================================================
# Copyright (C) VMware, Inc. 1986-2011.  All Rights Reserved.
#
# Name - large.conf
#
# Purpose - Example of how to configure a large database
#
#   Options below are suggested for configuring stone for a large database
#   The example "large" configuration is for
#     1500 users, 100GB database, 64GB SPC , 25 extents. 
#     Your hardware should have at least 128GB of Ram.
#
#   See system.conf for a complete list of available options including
#   descriptive comments.
#
# $Id: configlarge.unix,v 1.6 2008-01-09 22:50:40 stever Exp $
#
#=========================================================================

# Set STN_MAX_SESSIONS to number of sessions + number of reclaim GcGem 
# sessions + 1 each for Admin GcGem, Page Manager, Symbol Gem + 10%
STN_MAX_SESSIONS = 1658;

# STN_SIGNAL_ABORT_CR_BACKLOG should be about twice the expected number 
# of sessions
STN_SIGNAL_ABORT_CR_BACKLOG = 2800;

# STN_CR_BACKLOG_THRESHOLD should greater than STN_SIGNAL_ABORT_CR_BACKLOG 
STN_CR_BACKLOG_THRESHOLD = 3000;  

# Increase the Stone's private page cache
STN_PRIVATE_PAGE_CACHE_KB = 32768;

# 64 Gigabyte shared cache.  Unix kernel must support a shared memory
# region of at least 64500 MB (including cache overhead).
SHR_PAGE_CACHE_SIZE_KB = 64000000;

# Assume 25 extents of 4 GB each, on raw disk partitions.
# Edit this list to specify your actual partition names and sizes.
# For optimal performance, the DBF_EXTENT_SIZES be slightly smaller than
# the actual size of the disk partitions. 
DBF_EXTENT_NAMES = /dev/extent0, /dev/extent1, /dev/extent2, ...;
DBF_EXTENT_SIZES = 3995, 3995, 3995, 3995, ... ;

# Spread the database equally across all extents. For optimal performance
# the weighting factors should be about 10 (instead of 1, 1, 1, ...).
DBF_ALLOCATION_MODE = 10, 10, 10,...;

# Increase the free space STN_FREE_SPACE_THRESHOLD to allow disk full 
# conditions to be handled.
STN_FREE_SPACE_THRESHOLD = 100;

# pre-grow the extents for best performance.
DBF_PRE_GROW = TRUE;

# Use full logging for best performance on most large databases.
STN_TRAN_FULL_LOGGING = TRUE;

# Assume 10 raw partitions of 2 MB dedicated to tranlogs.
# Edit this list to put in your actual number of partitions and names.
STN_TRAN_LOG_DIRECTORIES = /dev/logPartition1, /dev/logPartition2,
   /dev/logPartition3, /dev/logPartition4, ... ;

# Edit STN_TRAN_LOG_SIZES to match actual sizes of your partitions.
# For best performance, these sizes should be slightly smaller than the
# actual size of the disk partitions.
STN_TRAN_LOG_SIZES = 1995, 1995, 1995, ... ;

# Increase the number of Reclaim GcGem sessions; start with one Reclaim 
# GcGem per 5 extents.
STN_NUM_GC_RECLAIM_SESSIONS = 5;

# Increase the number of free frame page servers.
SHR_NUM_FREE_FRAME_SERVERS = 5;

# Increase the number of aio page servers.
STN_NUM_LOCAL_AIO_SERVERS = 10;

# Increase timeouts to avoid terminating gem/remote cache inadvertently 
# when load is heavy.
STN_GEM_ABORT_TIMEOUT = 60;
STN_GEM_TIMEOUT = 10;
STN_REMOTE_CACHE_TIMEOUT =30;

# Increase the maximum I/O rate for the aio page servers.
STN_MAX_AIO_RATE = 600;

# A larger free frame cache allows the gems to make more efficient use of 
# the large cache.
GEM_FREE_FRAME_CACHE_SIZE = 25;
GEM_PGSVR_FREE_FRAME_CACHE_SIZE = 25;

# Remote gems should update their local cache for best remote performance
GEM_PGSVR_UPDATE_CACHE_ON_READ = TRUE;

# Setting GEM_SEND_STN_MSGS_VIA_PGSVR to true will give better performance 
# for remote gems
GEM_SEND_STN_MSGS_VIA_PGSVR = TRUE;


#  end of example options
#=========================================================================

#=========================================================================
#  Options below here have been added, either by the GemStone system
#  administrator, or automatically by the database monitor (Stone).
#=========================================================================

