Configuration
#
SuperBench configSuperBench uses a YAML config file to configure the details of benchmarkings, including which benchmark to run, which distributing mode to choose, which parameter to use, etc.
Here's the default config file. By default, all benchmarks in default configuration will be run if you don't specify customized configuration.
If you want to have a quick try, you can modify this config a little bit. For example, only run resnet101 model.
- copy the default config to a file named
resnet.yaml
in current path.cp superbench/config/default.yaml resnet.yaml
- enable only
resnet_models
in the config and remove other models except resnet101 underbenchmarks.resnet_models.models
.resnet.yaml# SuperBench Configsuperbench: enable: ['resnet_models'] var:# ...# omit the middle part# ... resnet_models: <<: *default_pytorch_mode models: - resnet101 parameters: <<: *common_model_config batch_size: 128
#
Ansible InventorySuperBench leverages Ansible to run benchmarking workloads on managed nodes, you need to provide an inventory file to configure host list for managed nodes.
Here're some basic examples as your starting point.
One managed node, same node as control node.
local.ini[all]localhost ansible_connection=local
Two managed nodes, one is control node and the other can be remote accessed.
mix.ini[all]localhost ansible_connection=local10.0.0.100 ansible_user=username ansible_ssh_private_key_file=id_rsa
Eight managed nodes, all can be accessed remotely.
remote.ini[all]10.0.0.[100:103]10.0.0.[200:203] [all:vars]ansible_user=usernameansible_ssh_private_key_file=id_rsa