# Parameters for this Virtual Application (Application Instance - AI) type should
# be set on YOUR private configuration configuration file, including the ones 
# commented.

[AI_TEMPLATES : FILEBENCH]

# Attributes MANDATORY for all Virtual Applications
SUT = filebench
LOAD_BALANCER_SUPPORTED = $False
RESIZE_SUPPORTED = $False
REGENERATE_DATA = $True
LOAD_GENERATOR_ROLE = filebench
LOAD_MANAGER_ROLE = filebench
METRIC_AGGREGATOR_ROLE = filebench
CAPTURE_ROLE=filebench
LOAD_PROFILE = fileserver
LOAD_LEVEL = uniformIXIXI1I1
LOAD_DURATION = uniformIXIXI60I90
CATEGORY = synthetic
PROFILES = fileserver, oltp_noism, varmail, videoserver, webproxy
REFERENCE = https://github.com/filebench/filebench/wiki
LICENSE = CDDL_v1
REPORTED_METRICS = bandwidth,throughput,latency,completion_time,quiescent_time,errors

# VApp-specific MANDATORY attributes
DESCRIPTION =Deploys a single instance and runs the "filebench" synthetic\n
DESCRIPTION +=(disk I/O) benchmark.\n 
DESCRIPTION +=  - LOAD_PROFILE possible values: _PROFILES_ (these are the \n
DESCRIPTION +=    "personalities" used by filebench to emulate the disk I/O\n
DESCRIPTION +=    generated by an application).\n
DESCRIPTION +=  - LOAD_LEVEL meaning: number of threads generating I/O.\n 
DESCRIPTION +=  - LOAD_DURATION meaning: maximum length of time to run (might end\n
DESCRIPTION +=    before the maximum, if the amount of data is small or disk fast).\n
DESCRIPTION +=  - COMMENT: One of the "Synthetic" Workloads. The filebench\n
DESCRIPTION +=    benchmark, due its internal timing idiosyncrasies, might not\n
DESCRIPTION +=    be able to fully stress the disk I/O capacity of a single instance.
FILEBENCH_SETUP1 = cb_start_filebench.sh
START = cb_run_filebench.sh

# VApp-specific OPTIONAL modifier parameters. Commented attributes imply default values assumed
FILEBENCH_DATA_DIR = /fstore
FILEBENCH_DATA_FSTYP = ext4
FILEBENCH_DATA_VOLUME = NONE

# Inter-Virtual Application instances (inter-AI) synchronized execution. Entirely optional
#SYNC_COUNTER_NAME = synchronization_counter
#CONCURRENT_AIS = 2
#SYNC_CHANNEL_NAME = synchronization_channel
#RUN_COUNTER_NAME = experiment_id_counter
