Stxxl  1.4.0
containers/app_config.h
Go to the documentation of this file.
00001 //
00002 // File: app_config.h
00003 // Authors: Darren Erik Vengroff
00004 //          Octavian Procopiuc <tavi@cs.duke.edu>
00005 //
00006 // Created: 10/6/94
00007 //
00008 // $Id: app_config.h,v 1.36 2004/08/17 16:49:16 jan Exp $
00009 //
00010 #ifndef _APP_CONFIG_H
00011 #define _APP_CONFIG_H
00012 
00013 // Get the configuration as set up by the TPIE configure script.
00014 #include <config.h>
00015 
00016 // <><><><><><><><><><><><><><><><><><><><><><> //
00017 // <><><><><><><> Developer use  <><><><><><><> //
00018 // <><><><><><><><><><><><><><><><><><><><><><> //
00019 
00020 #define USE_LIBAIO 0
00021 
00022 // Set up some defaults for the test applications
00023 
00024 #include <portability.h>
00025 #include <sys/types.h> // for size_t
00026 #include <stdlib.h>    // for random()
00027 
00028 #define DEFAULT_TEST_SIZE (20000000)
00029 #define DEFAULT_RANDOM_SEED 17
00030 #define DEFAULT_TEST_MM_SIZE (1024 * 1024 * 32)
00031 
00032 extern bool verbose;
00033 extern TPIE_OS_SIZE_T test_mm_size;
00034 extern TPIE_OS_OFFSET test_size;
00035 extern int random_seed;
00036 
00037 
00038 // <><><><><><><><><><><><><><><><><><><><><><> //
00039 // <><><> Choose default BTE COLLECTION  <><><> //
00040 // <><><><><><><><><><><><><><><><><><><><><><> //
00041 
00042 #if (!defined (BTE_COLLECTION_IMP_MMAP) && !defined (BTE_COLLECTION_IMP_UFS) && !defined (BTE_COLLECTION_IMP_USER_DEFINED))
00043 // Define only one (default is BTE_COLLECTION_IMP_MMAP)
00044  #define BTE_COLLECTION_IMP_MMAP
00045 //#define BTE_COLLECTION_IMP_UFS
00046 //#define BTE_COLLECTION_IMP_USER_DEFINED
00047 #endif
00048 
00049 // <><><><><><><><><><><><><><><><><><><><><><> //
00050 // <><><><><><> Choose BTE STREAM  <><><><><><> //
00051 // <><><><><><><><><><><><><><><><><><><><><><> //
00052 
00053 // Define only one (default is BTE_STREAM_IMP_UFS)
00054 #define BTE_STREAM_IMP_UFS
00055 //#define BTE_STREAM_IMP_MMAP
00056 //#define BTE_STREAM_IMP_STDIO
00057 //#define BTE_STREAM_IMP_USER_DEFINED
00058 
00059 
00060 // <><><><><><><><><><><><><><><><><><><><><><><><> //
00061 // <> BTE_COLLECTION_MMAP configuration options  <> //
00062 // <><><><><><><><><><><><><><><><><><><><><><><><> //
00063 
00064 // Define write behavior.
00065 // Allowed values:
00066 //  0    (synchronous writes)
00067 //  1    (asynchronous writes using MS_ASYNC - see msync(2))
00068 //  2    (asynchronous bulk writes) [default]
00069 #ifndef BTE_COLLECTION_MMAP_LAZY_WRITE
00070  #define BTE_COLLECTION_MMAP_LAZY_WRITE 2
00071 #endif
00072 
00073 // <><><><><><><><><><><><><><><><><><><><><><><><> //
00074 // <> BTE_COLLECTION_UFS configuration options   <> //
00075 // <><><><><><><><><><><><><><><><><><><><><><><><> //
00076 
00077 
00078 // <><><><><><><><><><><><><><><><><><><><><><><><> //
00079 // <><> BTE_STREAM_MMAP configuration options  <><> //
00080 // <><><><><><><><><><><><><><><><><><><><><><><><> //
00081 
00082 #ifdef BTE_STREAM_IMP_MMAP
00083 // Define logical blocksize factor (default is 32)
00084  #ifndef BTE_STREAM_MMAP_BLOCK_FACTOR
00085   #ifdef _WIN32
00086    #define BTE_STREAM_MMAP_BLOCK_FACTOR 4
00087   #else
00088    #define BTE_STREAM_MMAP_BLOCK_FACTOR 512
00089   #endif
00090  #endif
00091 
00092 // Enable/disable TPIE read ahead; default is enabled (set to 1)
00093 //#define BTE_STREAM_MMAP_READ_AHEAD 1
00094 
00095 // read ahead method, ignored unless BTE_STREAM_MMAP_READ_AHEAD is set
00096 // to 1; if USE_LIBAIO is enabled, use asynchronous IO read ahead;
00097 // otherwise use use mmap-based read ahead; default is mmap-based read
00098 // ahead (USE_LIBAIO not defined)
00099 
00100 //#define USE_LIBAIO
00101 #endif
00102 
00103 
00104 // <><><><><><><><><><><><><><><><><><><><><><><><> //
00105 // <><> BTE_STREAM_UFS configuration options <><><> //
00106 // <><><><><><><><><><><><><><><><><><><><><><><><> //
00107 
00108 #ifdef BTE_STREAM_IMP_UFS
00109 // Define logical blocksize factor (default is 32)
00110  #ifndef BTE_STREAM_UFS_BLOCK_FACTOR
00111   #ifdef _WIN32
00112    #define BTE_STREAM_UFS_BLOCK_FACTOR 4
00113   #else
00114    #define BTE_STREAM_UFS_BLOCK_FACTOR 512
00115   #endif
00116  #endif
00117 
00118 // Enable/disable TPIE read ahead; default is disabled (set to 0)
00119  #define BTE_STREAM_UFS_READ_AHEAD 0
00120 // read ahead method, ignored unless BTE_STREAM_UFS_READ_AHEAD is set
00121 // to 1; if USE_LIBAIO is set to 1, use asynchronous IO read ahead;
00122 // otherwise no TPIE read ahead is done; default is disabled (set to 0)
00123  #define USE_LIBAIO 0
00124 #endif
00125 
00126 
00127 // <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> //
00128 //                   logging and assertions;                    //
00129 //            this should NOT be modified by user!!!            //
00130 //   in order to enable/disable library/application logging,    //
00131 //     run tpie configure script with appropriate options       //
00132 // <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> //
00133 
00134 // Use logs if requested.
00135 #if TP_LOG_APPS
00136  #define TPL_LOGGING 1
00137 #endif
00138 
00139 #include <tpie_log.h>
00140 
00141 // Enable assertions if requested.
00142 #if TP_ASSERT_APPS
00143  #define DEBUG_ASSERTIONS 1
00144 #endif
00145 
00146 #include <tpie_assert.h>
00147 
00148 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines