Files
secondo/Algebras/ParThread/Tests/TestConfigs/scfgNoDataParallelism.ini
2026-01-23 17:03:45 +08:00

389 lines
12 KiB
INI

# This file is part of SECONDO.
# Copyright (C) 2004, University in Hagen, Department of Computer Science,
# Database Systems for New Applications.
# SECONDO is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
# SECONDO is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with SECONDO; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# --- Secondo Configuration ---
#
# This is an example file. copy or rename it to SecondoConfig.ini
#
# Note: every parameter explained below can be overruled by an environment
# variable with name SECONDO_PARAM_<keyname>,
# e.g.: export SECONDO_PARAM_SecondoHome="/tmp/databases"
[Environment]
# Home directory of Secondo database, in fact the place where the Berkeley DB will
# store all record files used by Secondo. Note: By default, the directory /home/secondo-databases
# is used for the Berkeley DB files. A directory different from this will be used iff it is
# specified below AND it exists!
# Note: On windows you need absolute path names, e.g.
# C:\msys\1.0\home\user\secondo-dbtest
SecondoHome=$(HOME)/secondo-databases
# Algebralevel after startup (Executable|Descriptive|Hybrid).
AlgebraLevel=Executable
# Name prefix of the local socket used by the registar process. The
# process id will be appended in order to generate a unique name.
# On linux each socket is represented as a file in the /tmp directory.
RegistrarSocketNamePrefix=SECREGIS
# Name of the executable of the Secondo registrar programm
RegistrarProgram=SecondoRegistrar
# Name of the executable of the Secondo listener program
ListenerProgram=SecondoListener
# Host address of the Secondo server
SecondoHost=127.0.0.1
# Port of the Secondo server (default: )
SecondoPort=1234
# Runtime Flags (refer to class RTFlags). This key can be used to define
# a comma separated list of runtime flags which switch on some special messages
# (for debugging or profiling) or some features like creating binary
# list formats for CS-communication. Please document new flags otherwise
# this mechanism is not useful. Note: a += assignment will extend the list.
# It is also possible to change flags interactively by typing
#
# (set "<KeyName>" = TRUE | FALSE)
#
# at the SECONDO command prompt.
###
### SECONDO INTERFACE
###
# Print the counter values of Class Counter (refer Counter.h) after every query
# command
#RTFlags = SI:PrintCounters
# Show the used times for every Secondo Command
RTFlags += SI:PrintCmdTimes
# Supress to measure cpu-time, real-time
# for all steps of query processing
RTFlags += SI:NoQueryTimers
# Suppress the output of the command in NL format before execution
RTFlags += SI:NoCommandEcho
# Repeats the command and its starting time before execution
RTFlags += SI:ShowCommandTime
# Various statistical information about tuples and relations.
#RTFlags += SI:RelStatistics
# Print out nested list of the result before copying it into
# the applications list memory.
#RTFlags += SI:ResultList
#Adds the buffer operator to marked operators
#RTFlags += SI:AUTO_BUFFER
# passwords: uncomment this line if you want to
# restrict the access to secondo
#RTFlags += SI:UsePasswd
#File containing the passwords, default is "passwd"
#PASSWD_FILE=passwd
###
### CLIENT / SERVER
###
# This flag controls if binary encoded or textual lists are transferred.
RTFlags += Server:BinaryTransfer
# trace network communicaion
# Tracing Server
# The the filename given here is extended by an
# underscore, the processid, and .log
# Note that the server sends also binary coded nested
# lists. The file for TraceServerOut may be very large
# and unreadable by usual text editors
#TraceServerIn=traceserverin
#TraceServerOut=traceserverout
# Tracing clients
# Th filename given here will be extended by an
# underscore, the process id, a further underscore,
# a running number, and .log
# Note that for TraceClientIn hold the same as for the
# TraceServerOut.
#TraceClientIn=traceclientin
#TraceClientOut=traceclientout
# If set, a result.bnl file is created on the server side.
#RTFlags += Server:ResultFile
# Measure the time for writing the result list to the socket object.
#RTFlags += Server:SendTimeMsg
###
### SMI
###
# Switch off the transaction and logging subsystem of Berkeley-DB
#RTFlags += SMI:NoTransactions
# Remove non required log files , this will only take effekt if berkeley db version >4.8 is used
RTFlags += SMI:AutoRemoveLogs
#RTFlags += SMI:DbHandles
# Show how often the requested buffersize could not be
# transferred and the number of sleep calls;
#RTFlags += Socket:SendStat
# Send a "simple" message to the message center, when requesting for a new file
# id or construnction of a filename
#RTFlags += SMI:LogFileCreation
###
### ALGEBRA SPECIFIC SWITCHES
###
# Print out messages in methods of the FTextAlgebra.
#RTFlags += FText:Trace
# Print extra output in the ExtRelationAlgebra
#RTFLAGS += ERA:TraceMergeJoin
#RTFLAGS += ERA:ShowMemInfo
#RTFLAGS += ERA:Sort:PartitionInfo
# Extra output for the RelationAlgebra
#RTFLAGS += RA:TupleBufferInfo
#RTFLAGS += RA:ShowMemInfo
# Extra output for the ArrayAlgebra
#RTFLAGS += Array::ShowTimePerFunctionCall
###
### SCANNER AND PARSER
###
#RTFlags += SecondoScanner:Debug
#RTFlags += SecondoParser:Debug
#RTFlags += NLScanner:Debug
#RTFlags += NLParser:Debug
#RTFlags += NL:BinaryListDebug
# Uncomment the next line if you don't want
# to see a stack trace when Secondo chrashes.
# Note: The stack trace is not available on windows!
RTFlags += DEBUG:DemangleStackTrace
RTFlags += QP:OpTree2SVG
RTFlags += QP:ProgDisable
#Flobcache section--
[FlobCache]
# maximum size used by the native flob cache in bytes , default = 67108864
Native_MaxSize=67108864
# maximum size of a single slot in bytes, default : 16777216
Native_SlotSize=16777216
# average size of a native flob, default = 512
Native_AvgSize=512
# maximum size used by the native flob cache in bytes , default = 67108864
Persistent_MaxSize=67108864
# maximum size of a single slot in bytes, default : 16777216
Persistent_SlotSize=16777216
# average size of a native flob, default = 512
Persistent_AvgSize=512
# --- QueryProcessor Section ---
[QueryProcessor]
# Max memory in kb available for an operator (e.g. hashjoin or sort)
# default is 16348
# MaxMemPerOperator=4096
# Global memory available for all operators in MB
# default is 512
GlobalMemory=4096
# disable printing out the number of operators sharing global memory
#RTFLAGS += QP:DISABLE_PRINT_NO_MEM_OPS
# enable update of the heartbeat file
# if not enabled, the file is created but not updated during a query
#RTFLAGS += QP:HEARTBEAT
# Main memory buffers for global nested list storage used by the QueryProcessor.
# Values are given in kB.
# Defaults are NodeMem=2048, StringMem=1024, TextMem=1024
#NodeMem=2048
#StringMem=1024
#TextMem=1024
# --- ProgressEstimation Section ---
[ProgressEstimation]
# Disable progress estimation
#RTFlags += QP:ProgDisable
# define the file containing the progress constats, default "ProgressConstants.csv"
#PROGRESS_CONSTANTS_FILE = ProgressConstants.csv
# ProgNorm normalizes the progressbar to n points
# Example: ProgNorm=50
ProgNorm=50
# PogProt controls the verbose TTY-Output (1 enables, 0 disables)
ProgProt=0
# PogLog controls the Log-Output to files proglog.csv and proglogt.csv
# in the bin-folder (1 enables, 0 disables)
ProgLog=1
# ProgTypeCard controls the progress estimation by using the message
# CARDINALITY (1 enables, 0 disables)
ProgTypeCard = 0
# ProgTypeProg controls the progress estimation by using the message
# PROGRESS (1 enables, 0 disables)
ProgTypeProg = 1
# --- Berkeley DB Section ---
#
# If Secondo is configured to use the Berkeley DB for persistent
# storage, the parameters in this section need to be specified
[BerkeleyDB]
# Name of the executable of the Secondo server program
ServerProgram=SecondoBDB
#ServerProgram=SecondoServerBDB
# Name of the executable of the Berkeley DB checkpoint program
CheckpointProgram=SecondoCheckpoint
CheckpointTime=5
# Directory where logging files are stored (may be relative to home directory)
#LogDir=
# Cache Size in kB
CacheSize=65536
# Lock System Configuration
MaxLockers=100
MaxLocks=300000
MaxLockObjects=300000
# --- Context sections ---
#
# To allow fine tuning of the storage management it is possible to
# define several "context" sections which can be referenced when
# creating or opening SmiFiles. The "Default" context section lists
# all possible parameters.
[Default]
#Bdbxxx=
# --- Secondo Replay Client Configuration Section ---
[# --- Secondo Replay Client Configuration Section ---
[Replay]
DefaultReplayClusterConfig = Replay.cfg
#ReplayImportMode = Replication
ReplayImportMode = Partitioning
Master = ReplayHost1:127.0.0.1:1234:12
Node = ReplayHost2:192.168.40.131:1234:2
Node += Replayhost3:192.168.40.132:1234:3
# --- Secondo configuration section to enable multithreading query processing ---
[MultithreadedQueryProcessing]
# Number of working threads processing execution contexts in parallel.
# The multithreaded query processing needs at least 2 threads. If the property is
# set to 1, the regular, single threaded query processing is used. All values < 1
# let the query processor choose the number of concurrent threads depending on the
# number of processors (cores) used by the system
MaxNumberOfConcurrentThreads=0
# Maximum buffer size in MB for all execution contexts in total. If the value is set
# to 0, then the buffers size will be adjusted by the query processor as part of
# the operator memory assignment. If the query processor assigned less memory to
# the related par-Operator this setting is ignored.
TotalBufferSizeInByte=0
# Maximum number of tuples stored in one data block. After a data block is complete filled or
# the stream answered cancel, the block is submitted to the shared buffer and is available for
# consuming par operators.
MaxNumberOfTuplesPerBlock=1000
# The maximum time in microseconds per request task. The timeout is checked after
# every tuple block is completly filled. If set to 0 the timeout is not used and
# the task ends after the first filled tuple block
TimeoutPerTaskInMicroseconds=0
# The maximum capacity of tuple blocks in the queue to start producers. If the buffers capacity
# exceeds the threshold, no producers are triggered.
QueueCapacityThreshold=8
# A value of >1 enables the use of multiple threads to execute instances
# of the same execution context in parallel. Set to 1 indicates that only independent and
# pipeline parallelism is used.
MaxDegreeOfDataParallelism=1
# A value of 1 enables the use of pipeline parallelism, otherwise it is deactivated
UsePipelineParallelism=1
# A value 1 enables the automatic integration of parallel oparators. Set to 0
# disables the parallel optimization, but all user defined parallel operators
# will still be checked and removed if inappropriate inserted in the query expression.
UseStaticParallelOptimization=0
# Enables the logging mechanism. 0 disables logging, 1 enables just debug messages,
# 2 enables tracing
LoggerMode=2
# The full path to the directory where trace logs are stored
DebugOutputPath=$(HOME)/secondo/Algebras/ParThread/Tests/TestResults
# Operators which can be part of a dataparallized context. Value is a list of
# operator names delimitered by spaces.
OperatorsSupportingDataParallelism=filter renameAttr rename project attr and = > < hashjoin starts delayS makepoint extend * distanceOrthodrome intersects
# Operators which rely on a tuple order. All contexts after such a operator can't use dataparallelism,
# because this can change the order of tuples. Value is a list of operator names delimitered by spaces.
OperatorsRetainingOrder=sort
# Operators in this list need a partitioning by hashvalues to work correct with dataparallelism.
# Value is a list of operator names delimitered by spaces.
OperatorsRequiringHashPartitioning=hashjoin
######### End of Secondo Configuration ###########