1regression.py 2 3Copyright (c) 2010-2014 Advanced Micro Devices, Inc. 4All rights reserved. 5 6Redistribution and use in source and binary forms, with or without 7modification, are permitted provided that the following conditions are 8met: redistributions of source code must retain the above copyright 9notice, this list of conditions and the following disclaimer; 10redistributions in binary form must reproduce the above copyright 11notice, this list of conditions and the following disclaimer in the 12documentation and/or other materials provided with the distribution; 13neither the name of the copyright holders nor the names of its 14contributors may be used to endorse or promote products derived from 15this software without specific prior written permission. 16 17THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 18"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 19LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 20A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 21OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 23LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 24DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 25THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 27OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 29Authors: Yasuko Eckert <yasuko.eckert@amd.com> 30 Joel Hestness <hestness@cs.wisc.edu> (while interning at AMD) 31 32 33Introduction 34============ 35 36This regression tester is for the McPAT power model. 37This tester can compile and runs McPAT on the input contained in the 38specified directory, and then compares the output to that of a golden run in 39order to ensure that specific power and area calculations do not change. 40 41Nine tests are included in the initial version of this tester in the directories: 42 $GEM5/ext/mcpat/regression/test-* 43 44In each directory, you will find a regression test input file 45(power_region0.xml) and the golden-run output (region0.out.bak). 46The tester's output file is saved as region0.out, which is then checked against 47region0.out.bak. 48 49 50Options 51======= 52--help, -h Show a help message and exit 53--build, -b Build McPAT before running tests 54--cleanup, -c Clean up the specified regression directory 55--force, -f Force run regression even if directory isn't set up 56--maketest, -m Set up the specified test directory 57--verbose, -v Print verbose output 58 59 60How to Use 61========== 62 63The regression tester must be invoked from the McPAT directory. 64 65% cd $GEM5/ext/mcpat 66 67 68To run all regression tests: 69% ./regression/regression.py ./regression/ 70 71 72To run a particular regression test, specify its directory to the tester: 73% ./regression/regression.py ./regression/test-0 74 75Specify the "-v" option to see a diff of the regression output. 76