summaryrefslogtreecommitdiff
path: root/setup_environment
diff options
context:
space:
mode:
authortgrogers <[email protected]>2018-06-29 17:34:22 -0400
committertgrogers <[email protected]>2018-06-29 17:34:22 -0400
commit112a3a2e3c9d17af420d2389f68a35407c692744 (patch)
tree728a9157fae6d77097fd19799e80a0c0511c8098 /setup_environment
parent8334828738e3dec7221bd411d3c541bd940fde59 (diff)
Allowing modern GPU configrations to properly run PTXPLUS.
There are several problems with this: 1) To get proper occupancy, based on register file usage, you must querry ptxas with the sm version that corresponds to the register usage in the config file. To enable this, a new config option has been added that determines what sm version you pass to ptxas to compute reg-usage. This configuration option is always required in the gpgpusim.config file 2) If you are running PTXPLUS with a modern card (i.e. volta/pascal), you need ptxas from CUDA 9.1. However since PTXPLUS only supports sm_13 - you need a version of CUDA where cudaobjectdump supports sm_1x. This ended at CUDA 5 - and PTXPLUS requires CUDA 4.2. Therefore, to run PTXPLUS on a modern card, you need CUDA 4.2 + modern CUDA installed. To fascilitate this, a new envronment varaible is added and the setup envrionment script prints an appropraite warning if you are using a newer CUDA. We have tried to make this as fail-proof as possible - and die appropraitely when something is wrong.
Diffstat (limited to 'setup_environment')
-rw-r--r--setup_environment13
1 files changed, 13 insertions, 0 deletions
diff --git a/setup_environment b/setup_environment
index 3f2476e..939fb85 100644
--- a/setup_environment
+++ b/setup_environment
@@ -53,6 +53,8 @@ if [ $CUDA_VERSION_NUMBER -gt 9100 -o $CUDA_VERSION_NUMBER -lt 2030 ]; then
return
fi
+
+
if [ $# = '1' ] ;
then
export GPGPUSIM_CONFIG=gcc-$CC_VERSION/cuda-$CUDA_VERSION_NUMBER/$1
@@ -134,4 +136,15 @@ fi
echo "setup_environment succeeded";
+if [ $CUDA_VERSION_NUMBER -gt 4200 ]; then
+ echo ""
+ echo "----------------------------------------------------------------------------"
+ echo "WARNING - If you only care about PTX execution, ignore this warning.";
+ echo "If you are using PTXPLUS, only sm_13 is supported and it requires that the app binaries are compiled in CUDA 4.2 or less.";
+ echo "New versions of CUDA tools have dropped parsing support for sm_1x - therefore to use PTXPLUS with a modern card configuration, you must";
+ echo "have both CUDA 4.2 and a modern CUDA installed. When running PTXPLUS under a CUDA version >= 4.2, the simulator will fail unless \$CUDA_42_INSTALL_PATH";
+ echo "has been set properly. You must set this manually.";
+ echo "----------------------------------------------------------------------------"
+fi
+
export GPGPUSIM_SETUP_ENVIRONMENT_WAS_RUN=1