ruby: Fix regressions and make Ruby configs Python packages
authorAndreas Hansson <andreas.hansson@arm.com>
Thu, 13 Oct 2016 07:17:19 +0000 (03:17 -0400)
committerAndreas Hansson <andreas.hansson@arm.com>
Thu, 13 Oct 2016 07:17:19 +0000 (03:17 -0400)
commit68fdccb30bd85cd99823fb411ec7ae67112062d7
treee6ef3d54238c64c63b00a3b83da96a9a1cdaad8b
parent2e5e9085792b1a7c47c231a2adf0da6f7ff8f20d
ruby: Fix regressions and make Ruby configs Python packages

This patch moves the addition of network options into the Ruby module
to avoid the regressions all having to add it explicitly. Doing this
exposes an issue in our current config system though, namely the fact
that addtoPath is relative to the Python script being executed. Since
both example and regression scripts use the Ruby module we would end
up with two different (relative) paths being added. Instead we take a
first step at turning the config modules into Python packages, simply
by adding a __init__.py in the configs/ruby, configs/topologies and
configs/network subdirectories.

As a result, we can now add the top-level configs directory to the
Python search path, and then use the package names in the various
modules. The example scripts are also updated, and the messy
path-deducing variations in the scripts are unified.
29 files changed:
configs/common/__init__.py [new file with mode: 0644]
configs/example/apu_se.py
configs/example/fs.py
configs/example/garnet_synth_traffic.py
configs/example/ruby_direct_test.py
configs/example/ruby_gpu_random_test.py
configs/example/ruby_mem_test.py
configs/example/ruby_random_test.py
configs/example/se.py
configs/network/__init__.py [new file with mode: 0644]
configs/ruby/AMD_Base_Constructor.py
configs/ruby/GPU_RfO.py
configs/ruby/GPU_VIPER.py
configs/ruby/GPU_VIPER_Baseline.py
configs/ruby/GPU_VIPER_Region.py
configs/ruby/MOESI_AMD_Base.py
configs/ruby/Ruby.py
configs/ruby/__init__.py [new file with mode: 0644]
configs/topologies/__init__.py [new file with mode: 0644]
tests/configs/gpu-randomtest-ruby.py
tests/configs/gpu-ruby.py
tests/configs/memtest-ruby.py
tests/configs/o3-timing-mp-ruby.py
tests/configs/o3-timing-ruby.py
tests/configs/pc-simple-timing-ruby.py
tests/configs/rubytest-ruby.py
tests/configs/simple-atomic-mp-ruby.py
tests/configs/simple-timing-mp-ruby.py
tests/configs/simple-timing-ruby.py