| #------------------------------------------------------------- |
| # |
| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| # |
| #------------------------------------------------------------- |
| |
| # Options for executing the Resource Optimizer |
| |
| # AWS specific options --------------------------------------- |
| |
| # specifies cloud region (using the corresponding abbreviation) |
| REGION=us-east-1 |
| # specifies filename of CSV table containing the meta data about all available cloud VM instance |
| INFO_TABLE=scripts/resource/ec2_stats.csv |
| # specifies filename of CSV table containing the extra price metrics depending on the target cloud region |
| REGION_TABLE=scripts/resource/aws_regional_prices.csv |
| # output folder for configurations files; existing configurations files will be overwritten |
| OUTPUT_FOLDER=scripts/resource/output |
| # local inputs to that would be later read from s3; |
| # allows to save accessing s3 objects + metadata for speedup and avioding the need of setting local AWS credentials; |
| # define them as comma separated key=value pairs (no spaces) |
| LOCAL_INPUTS= |
| |
| # Options for the enumeration process ------------------------ |
| |
| # specifies enumeration strategy; it should be one of the following: 'grid', 'interest', 'prune'; default 'grid' |
| ENUMERATION=prune |
| # specifies optimization strategy (scoring function); |
| # it should be one of the following: 'costs', 'time', 'price'; default 'costs' |
| OPTIMIZATION_FUNCTION=price |
| # specifies the weighting factor for the optimization function 'costs', |
| # value should be always between 0 and 1 (default is 0.01), |
| # bigger values prioritize the time over the price |
| COSTS_WEIGHT=0.01 |
| # specifies constraint for maximum execution time; required and only relevant for OPTIMIZATION_FUNCTION=price |
| MAX_TIME=1000000 |
| # specifies constraint for maximum price on AWS for execution; required and only relevant for OPTIMIZATION_FUNCTION=time |
| MAX_PRICE= |
| # specifies the limit of (virtual) CPU cores allowed for evaluation; |
| # this corresponds to the most common VM service quota set by cloud providers |
| CPU_QUOTA=256 |
| # specifies minimum desired executors; default 0 (single node execution allowed); |
| # a negative value lead to setting the default |
| MIN_EXECUTORS= |
| # specifies maximum desired executors; default 200; a negative value leads to setting the default |
| MAX_EXECUTORS= |
| # specifies VM instance types for consideration at searching for optimal configuration; |
| # if not specified, all instances from the table with instance metadata are considered; |
| # define them as comma separated values (no spaces) |
| INSTANCE_FAMILIES= |
| # specifies VM instance sizes for consideration at searching for optimal configuration; |
| # if not specified, all instances from the table with instance metadata are considered; |
| # define them as comma separated values (no spaces) |
| INSTANCE_SIZES= |
| # specific to grid-based enum. strategy; specifies step size for enumerating number of executors; default 1 |
| STEP_SIZE= |
| # specific to grid-based strategy; specifies exponential base for increasing the number of executors exponentially; |
| # apply only if specified as larger than 1 |
| EXPONENTIAL_BASE= |
| # specific to interest-based enum. strategy; boolean ('true'/'false') to indicate if single node execution should be |
| # considered only in case of sufficient memory budget for the driver; default true |
| USE_LARGEST_ESTIMATE= |
| # specific to interest-based enum. strategy; boolean ('true'/'false') to indicate if the CP memory is an interest |
| # for the enumeration; default true |
| USE_CP_ESTIMATES= |
| # specific to interest-based enum. strategy; boolean ('true'/'false') to indicate if potential broadcast variables' |
| # size is an interest for driver and executors memory budget; default true |
| USE_BROADCASTS= |
| # specific to interest-based enum. strategy; boolean ('true'/'false') to indicate if the size of the outputs |
| # (potentially cached) is an interest for the enumerated number of executors; default false |
| USE_OUTPUTS= |