diff options
| author | Mahmoud <[email protected]> | 2020-06-24 11:30:12 -0400 |
|---|---|---|
| committer | Mahmoud <[email protected]> | 2020-06-24 11:30:12 -0400 |
| commit | be29db3644794dd66077428beb73cda1e7579684 (patch) | |
| tree | 8c8b2087555baf7ce09cab43c94685c11df2aadb | |
| parent | 1af6e1b6ace58c8b874660e2c371f9c2adfdb7ce (diff) | |
| parent | b1fdc6da937e638fc1cf735829613f1037bbbf1a (diff) | |
Merge branch 'dev' of https://github.com/purdue-aalp/gpgpu-sim_distribution into dev-4.x
| -rw-r--r-- | Jenkinsfile | 81 | ||||
| -rw-r--r-- | Makefile | 1 | ||||
| -rw-r--r-- | linux-so-version.txt | 2 | ||||
| -rw-r--r-- | nightly.jenkinsfile | 60 | ||||
| -rw-r--r-- | setup_environment | 2 |
5 files changed, 71 insertions, 75 deletions
diff --git a/Jenkinsfile b/Jenkinsfile index 4495461..a3db3e5 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -11,7 +11,7 @@ pipeline { stage('formatting-check') { steps { sh ''' - source /home/tgrogers-raid/a/common/gpgpu-sim-setup/common/export_gcc_version.sh 5.3.0 + source ./env-setup/common/export_gcc_version.sh 5.3.0 git remote add upstream https://github.com/purdue-aalp/gpgpu-sim_distribution git fetch upstream if git diff --name-only upstream/dev | grep -E "*.cc|*.h|*.cpp|*.hpp" ; then @@ -21,17 +21,18 @@ pipeline { } } */ + stage('env-setup') { + steps { + sh 'rm -rf env-setup && git clone [email protected]:purdue-aalp/env-setup.git &&\ + cd env-setup && git checkout cluster-ubuntu' + } + } stage('simulator-build') { steps { - parallel "4.2": { - sh 'source /home/tgrogers-raid/a/common/gpgpu-sim-setup/4.2_env_setup.sh &&\ - source `pwd`/setup_environment &&\ - make -j 10' - }, "10.1" : { - sh 'source /home/tgrogers-raid/a/common/gpgpu-sim-setup/10.1_env_setup.sh &&\ - source `pwd`/setup_environment &&\ - make -j 10' - } + sh '''#!/bin/bash + source ./env-setup/11.0_env_setup.sh + source `pwd`/setup_environment + make -j 10''' } } stage('simulations-build'){ @@ -41,36 +42,23 @@ pipeline { cd gpgpu-sim_simulations && \ git pull && \ ln -s /home/tgrogers-raid/a/common/data_dirs benchmarks/' - sh 'source /home/tgrogers-raid/a/common/gpgpu-sim-setup/4.2_env_setup.sh &&\ - source `pwd`/setup_environment &&\ - cd gpgpu-sim_simulations && \ - source ./benchmarks/src/setup_environment && \ - make -j 10 -C ./benchmarks/src rodinia_2.0-ft sdk-4.2 && \ - make -C ./benchmarks/src data' - sh 'source /home/tgrogers-raid/a/common/gpgpu-sim-setup/10.1_env_setup.sh &&\ - source `pwd`/setup_environment &&\ - cd gpgpu-sim_simulations && \ - source ./benchmarks/src/setup_environment && \ - make -j 10 -C ./benchmarks/src/ rodinia_2.0-ft sdk-4.2 && \ - make -C ./benchmarks/src data' + sh '''#!/bin/bash + source ./env-setup/11.0_env_setup.sh + source `pwd`/setup_environment + cd gpgpu-sim_simulations + source ./benchmarks/src/setup_environment + make -j 10 -C ./benchmarks/src/ rodinia_2.0-ft + make -C ./benchmarks/src data''' } } - stage('regress'){ + stage('11.0 Regressions'){ steps { - parallel "4.2-rodinia": { - sh 'source /home/tgrogers-raid/a/common/gpgpu-sim-setup/4.2_env_setup.sh &&\ - source `pwd`/setup_environment &&\ - export PTXAS_CUDA_INSTALL_PATH=/home/tgrogers-raid/a/common/cuda-10.1 &&\ - ./gpgpu-sim_simulations/util/job_launching/run_simulations.py -B rodinia_2.0-ft -C TITANV-PTXPLUS -N regress-$$ && \ - PLOTDIR="jenkins/${JOB_NAME}/${BUILD_NUMBER}/4.2" && ssh [email protected] mkdir -p /home/dynamo/a/tgrogers/website/gpgpu-sim-plots/$PLOTDIR && \ - ./gpgpu-sim_simulations/util/job_launching/monitor_func_test.py -v -N regress-$$ -s stats-per-app-4.2.csv' - }, "10.1-functest": { - sh 'source /home/tgrogers-raid/a/common/gpgpu-sim-setup/10.1_env_setup.sh &&\ - source `pwd`/setup_environment &&\ - ./gpgpu-sim_simulations/util/job_launching/run_simulations.py -B rodinia_2.0-ft,sdk-4.2 -C TITANV -N regress-$$ && \ - PLOTDIR="jenkins/${JOB_NAME}/${BUILD_NUMBER}/10.1" && ssh [email protected] mkdir -p /home/dynamo/a/tgrogers/website/gpgpu-sim-plots/$PLOTDIR && \ - ./gpgpu-sim_simulations/util/job_launching/monitor_func_test.py -v -s stats-per-app-10.1.csv -N regress-$$' - } + sh '''#!/bin/bash + source ./env-setup/11.0_env_setup.sh + source `pwd`/setup_environment + ./gpgpu-sim_simulations/util/job_launching/run_simulations.py -B rodinia_2.0-ft -C QV100 -N regress-$$ + PLOTDIR="jenkins/${JOB_NAME}/${BUILD_NUMBER}/11.0" && ssh [email protected] mkdir -p /home/dynamo/a/tgrogers/website/gpgpu-sim-plots/$PLOTDIR + ./gpgpu-sim_simulations/util/job_launching/monitor_func_test.py -v -s stats-per-app-11.0.csv -N regress-$$''' } } stage('correlate-delta-and-archive') { @@ -78,20 +66,15 @@ pipeline { sh './gpgpu-sim_simulations/run_hw/get_hw_data.sh' sh 'rm -rf ./gpgpu-sim_simulations/util/plotting/correl-html && rm -rf gpgpu-sim-results-repo && rm -rf ./gpgpu-sim_simulations/util/plotting/htmls' sh 'git clone [email protected]:purdue-aalp/gpgpu-sim-results-repo.git' - sh 'source /home/tgrogers-raid/a/common/gpgpu-sim-setup/4.2_env_setup.sh &&\ - ./gpgpu-sim_simulations/util/job_launching/get_stats.py -R -K -k -B rodinia_2.0-ft -C TITANV-PTXPLUS -A > stats-per-kernel-4.2-ptxplus.csv' - sh 'source /home/tgrogers-raid/a/common/gpgpu-sim-setup/10.1_env_setup.sh &&\ - ./gpgpu-sim_simulations/util/job_launching/get_stats.py -R -K -k -B rodinia_2.0-ft,sdk-4.2 -C TITANV -A > stats-per-kernel-10.1.csv' + sh '''#!/bin/bash + source ./env-setup/11.0_env_setup.sh + ./gpgpu-sim_simulations/util/job_launching/get_stats.py -R -K -k -B rodinia_2.0-ft -C QV100 -A > stats-per-kernel-11.0.csv''' sh 'if [ ! -d ./gpgpu-sim-results-repo/${JOB_NAME} ]; then mkdir -p ./gpgpu-sim-results-repo/${JOB_NAME}/ ; cp ./gpgpu-sim-results-repo/purdue-aalp/gpgpu-sim_distribution/dev/* ./gpgpu-sim-results-repo/${JOB_NAME}/ ; fi' - sh './gpgpu-sim_simulations/util/plotting/merge-stats.py -c ./gpgpu-sim-results-repo/${JOB_NAME}/stats-per-app-4.2.csv,./stats-per-app-4.2.csv -R > per-app-merge-4.2.csv' - sh './gpgpu-sim_simulations/util/plotting/merge-stats.py -c ./gpgpu-sim-results-repo/${JOB_NAME}/stats-per-app-10.1.csv,./stats-per-app-10.1.csv -R > per-app-merge-10.1.csv' + sh './gpgpu-sim_simulations/util/plotting/merge-stats.py -c ./gpgpu-sim-results-repo/${JOB_NAME}/stats-per-app-11.0.csv,./stats-per-app-11.0.csv -R > per-app-merge-11.0.csv' sh 'PLOTDIR="jenkins/${JOB_NAME}" &&\ - ./gpgpu-sim_simulations/util/plotting/plot-get-stats.py -c per-app-merge-4.2.csv -P cuda-4.2 &&\ - ./gpgpu-sim_simulations/util/plotting/plot-get-stats.py -c per-app-merge-10.1.csv -P cuda-10.1 &&\ - ./gpgpu-sim_simulations/util/plotting/merge-stats.py -c ./gpgpu-sim-results-repo/${JOB_NAME}/stats-per-kernel-4.2-ptxplus.csv,./stats-per-kernel-4.2-ptxplus.csv -R > per-kernel-merge-4.2-ptxplus.csv &&\ - ./gpgpu-sim_simulations/util/plotting/merge-stats.py -c ./gpgpu-sim-results-repo/${JOB_NAME}/stats-per-kernel-10.1.csv,./stats-per-kernel-10.1.csv -R > per-kernel-merge-10.1.csv &&\ - ./gpgpu-sim_simulations/util/plotting/plot-correlation.py -c per-kernel-merge-4.2-ptxplus.csv -p cuda-4.2 | grep -B 1 "Correl=" | tee correl.4.2.txt &&\ - ./gpgpu-sim_simulations/util/plotting/plot-correlation.py -c per-kernel-merge-10.1.csv -p cuda-10.1 | grep -B 1 "Correl=" | tee correl.10.1.txt &&\ + ./gpgpu-sim_simulations/util/plotting/plot-get-stats.py -c per-app-merge-11.0.csv -P cuda-11.0 &&\ + ./gpgpu-sim_simulations/util/plotting/merge-stats.py -c ./gpgpu-sim-results-repo/${JOB_NAME}/stats-per-kernel-11.0.csv,./stats-per-kernel-11.0.csv -R > per-kernel-merge-11.0.csv &&\ + ./gpgpu-sim_simulations/util/plotting/plot-correlation.py -H ./gpgpu-sim_simulations/run_hw/QUADRO-V100/device-0/9.1/ -c per-kernel-merge-11.0.csv -p cuda-11.0 | grep -B 1 "Correl=" | tee correl.11.0.txt &&\ mkdir -p ./gpgpu-sim-results-repo/${JOB_NAME}/ && cp stats-per-*.csv ./gpgpu-sim-results-repo/${JOB_NAME}/ &&\ cd ./gpgpu-sim-results-repo &&\ git diff --quiet && git diff --staged --quiet || git commit -am "Jenkins automated checkin ${JOB_NAME} Build:${BUILD_NUMBER}" &&\ @@ -167,6 +167,7 @@ $(SIM_LIB_DIR)/libcudart.so: makedirs $(LIBS) cudalib if [ ! -f $(SIM_LIB_DIR)/libcudart.so.9.2 ]; then ln -s libcudart.so $(SIM_LIB_DIR)/libcudart.so.9.2; fi if [ ! -f $(SIM_LIB_DIR)/libcudart.so.10.0 ]; then ln -s libcudart.so $(SIM_LIB_DIR)/libcudart.so.10.0; fi if [ ! -f $(SIM_LIB_DIR)/libcudart.so.10.1 ]; then ln -s libcudart.so $(SIM_LIB_DIR)/libcudart.so.10.1; fi + if [ ! -f $(SIM_LIB_DIR)/libcudart.so.11.0 ]; then ln -s libcudart.so $(SIM_LIB_DIR)/libcudart.so.11.0; fi $(SIM_LIB_DIR)/libcudart.dylib: makedirs $(LIBS) cudalib g++ -dynamiclib -Wl,-headerpad_max_install_names,-undefined,dynamic_lookup,-compatibility_version,1.1,-current_version,1.1\ diff --git a/linux-so-version.txt b/linux-so-version.txt index 45c40dd..3db07ac 100644 --- a/linux-so-version.txt +++ b/linux-so-version.txt @@ -8,5 +8,7 @@ libcudart.so.10.0{ }; libcudart.so.10.1{ }; +libcudart.so.11.0{ +}; libcuda.so.1{ }; diff --git a/nightly.jenkinsfile b/nightly.jenkinsfile index c841fb0..1c88551 100644 --- a/nightly.jenkinsfile +++ b/nightly.jenkinsfile @@ -13,11 +13,18 @@ pipeline { } stages { + stage('env-setup') { + steps { + sh 'rm -rf env-setup && git clone [email protected]:purdue-aalp/env-setup.git &&\ + cd env-setup && git checkout cluster-ubuntu' + } + } stage('nightly-simulator-build') { steps { - sh 'source /home/tgrogers-raid/a/common/gpgpu-sim-setup/9.1_env_setup.sh &&\ - source `pwd`/setup_environment &&\ - make -j 10' + sh '''#!/bin/bash + source ./env-setup/11.0_env_setup.sh + source `pwd`/setup_environment + make -j 10''' } } stage('nightly-simulations-build'){ @@ -30,12 +37,13 @@ pipeline { cd gpgpu-sim_simulations && \ git pull && \ ln -s /home/tgrogers-raid/a/common/data_dirs benchmarks/' - sh 'source /home/tgrogers-raid/a/common/gpgpu-sim-setup/9.1_env_setup.sh &&\ + sh '''#!/bin/bash + source ./env-setup/11.0_env_setup.sh &&\ source `pwd`/setup_environment &&\ cd gpgpu-sim_simulations && \ source ./benchmarks/src/setup_environment && \ make -i -j 10 -C ./benchmarks/src/ all && \ - make -C ./benchmarks/src data' + make -C ./benchmarks/src data''' } } stage('nightly-2B-insn-run'){ @@ -43,13 +51,14 @@ pipeline { sh 'rm -rf ./gpgpu-sim_simulations/util/plotting/correl-html && rm -rf gpgpu-sim-results-repo &&\ rm -rf ./gpgpu-sim_simulations/util/plotting/htmls' - sh 'source /home/tgrogers-raid/a/common/gpgpu-sim-setup/9.1_env_setup.sh &&\ - source `pwd`/setup_environment &&\ + sh '''#!/bin/bash + source ./env-setup/11.0_env_setup.sh + source `pwd`/setup_environment ./gpgpu-sim_simulations/util/job_launching/run_simulations.py \ - -B `cat ./gpgpu-sim_simulations/util/job_launching/apps/correlation-apps.list` -C QV100-2B -N nightly-$$ && \ + -B `cat ./gpgpu-sim_simulations/util/job_launching/apps/correlation-apps.list` -C QV100-2B -N nightly-$$ ./gpgpu-sim_simulations/util/job_launching/monitor_func_test.py -I -S 1800 -v \ - -s stats-per-app-9.1.csv -T 12 -K -N nightly-$$ && \ - ./gpgpu-sim_simulations/util/plotting/plot-get-stats.py -c stats-per-app-9.1.csv -P cuda-9.1.nightly' + -s stats-per-app-11.0.csv -T 12 -K -N nightly-$$ + ./gpgpu-sim_simulations/util/plotting/plot-get-stats.py -c stats-per-app-11.0.csv -P cuda-11.0.nightly''' } } stage('nightly-correlate'){ @@ -63,25 +72,26 @@ pipeline { fi && \ ./gpgpu-sim_simulations/run_hw/get_hw_data.sh' - sh 'source /home/tgrogers-raid/a/common/gpgpu-sim-setup/9.1_env_setup.sh &&\ + sh '''#!/bin/bash + source ./env-setup/11.0_env_setup.sh ./gpgpu-sim_simulations/util/job_launching/get_stats.py -R -K -k \ -B `cat ./gpgpu-sim_simulations/util/job_launching/apps/correlation-apps.list` \ - -C QV100-2B > stats-per-kernel-9.1.csv &&\ + -C QV100-2B > stats-per-kernel-11.0.csv ./gpgpu-sim_simulations/util/plotting/merge-stats.py \ - -c ./gpgpu-sim-results-repo/${JOB_NAME}/stats-per-app-9.1.csv,./stats-per-app-9.1.csv -R \ - > per-app-merge-9.1.csv &&\ + -c ./gpgpu-sim-results-repo/${JOB_NAME}/stats-per-app-11.0.csv,./stats-per-app-11.0.csv -R \ + > per-app-merge-11.0.csv ./gpgpu-sim_simulations/util/plotting/merge-stats.py \ - -c ./gpgpu-sim-results-repo/${JOB_NAME}/stats-per-kernel-9.1.csv,./stats-per-kernel-9.1.csv -R \ - > per-kernel-merge-9.1.csv &&\ - source `pwd`/setup_environment &&\ - ./gpgpu-sim_simulations/util/plotting/plot-correlation.py -c per-kernel-merge-9.1.csv \ - -p cuda-9.1.nightly -b ./gpgpu-sim_simulations/util/plotting/known.correlation.outliers.list \ - | grep "Correl=" -B 1 | tee correl.9.1.txt &&\ - cp stats-per-*.csv ./gpgpu-sim-results-repo/${JOB_NAME}/ &&\ - cd ./gpgpu-sim-results-repo &&\ - git pull &&\ - git diff --quiet && git diff --staged --quiet || git commit -am "Jenkins automated checkin ${JOB_NAME} Build:${BUILD_NUMBER}" &&\ - git push' + -c ./gpgpu-sim-results-repo/${JOB_NAME}/stats-per-kernel-11.0.csv,./stats-per-kernel-11.0.csv -R \ + > per-kernel-merge-11.0.csv + source `pwd`/setup_environment + ./gpgpu-sim_simulations/util/plotting/plot-correlation.py -c per-kernel-merge-11.0.csv \ + -p cuda-11.0.nightly -b ./gpgpu-sim_simulations/util/plotting/known.correlation.outliers.list \ + | grep "Correl=" -B 1 | tee correl.11.0.txt + cp stats-per-*.csv ./gpgpu-sim-results-repo/${JOB_NAME}/ + cd ./gpgpu-sim-results-repo + git pull + git diff --quiet && git diff --staged --quiet || git commit -am "Jenkins automated checkin ${JOB_NAME} Build:${BUILD_NUMBER}" + git push''' sh 'PLOTDIR="/home/dynamo/a/tgrogers/website/gpgpu-sim-plots/jenkins/${JOB_NAME}" &&\ ssh [email protected] mkdir -p $PLOTDIR/${BUILD_NUMBER} && \ diff --git a/setup_environment b/setup_environment index daf7fab..07d0788 100644 --- a/setup_environment +++ b/setup_environment @@ -48,7 +48,7 @@ CC_VERSION=`gcc --version | head -1 | awk '{for(i=1;i<=NF;i++){ if(match($i,/^[0 CUDA_VERSION_STRING=`$CUDA_INSTALL_PATH/bin/nvcc --version | awk '/release/ {print $5;}' | sed 's/,//'`; export CUDA_VERSION_NUMBER=`echo $CUDA_VERSION_STRING | sed 's/\./ /' | awk '{printf("%02u%02u", 10*int($1), 10*$2);}'` -if [ $CUDA_VERSION_NUMBER -gt 10100 -o $CUDA_VERSION_NUMBER -lt 2030 ]; then +if [ $CUDA_VERSION_NUMBER -gt 11100 -o $CUDA_VERSION_NUMBER -lt 2030 ]; then echo "ERROR ** GPGPU-Sim version $GPGPUSIM_VERSION_STRING not tested with CUDA version $CUDA_VERSION_STRING (please see README)"; echo $CUDA_VERSION_NUMBER return |
