未验证 提交 e09f4db9 编写于 作者: Y YUNSHEN XIE 提交者: GitHub

Check added ut on windows (#31826)

* added ut check on windows,notest,test=windows_ci

* debug,notest,test=windows_ci

* debug,notest,test=windows_ci

* fix bug,notest,test=windows_ci

* added ut check

* test for new ut add on windows

* test,notest,test=windows_ci

* fix bug,notest,test=windows_ci

* test

* test

* test

* test,notest,test=windows_ci

* test,notest,test=windows_ci

* check added ut on windows

* only fetch upstream develop

* modified according comment

* Update run_unittests.sh

* Update run_unittests.sh
上级 d91faf29
...@@ -501,6 +501,13 @@ setlocal enabledelayedexpansion ...@@ -501,6 +501,13 @@ setlocal enabledelayedexpansion
:: if %errorlevel% NEQ 0 exit /b 8 :: if %errorlevel% NEQ 0 exit /b 8
:: for /F %%# in ('cmd /C nvidia-smi -L ^|find "GPU" /C') do set CUDA_DEVICE_COUNT=%%# :: for /F %%# in ('cmd /C nvidia-smi -L ^|find "GPU" /C') do set CUDA_DEVICE_COUNT=%%#
set CUDA_DEVICE_COUNT=1 set CUDA_DEVICE_COUNT=1
echo cmake .. -G %GENERATOR% -DCMAKE_BUILD_TYPE=Release -DWITH_AVX=%WITH_AVX% -DWITH_GPU=%WITH_GPU% -DWITH_MKL=%WITH_MKL% ^
-DWITH_TESTING=%WITH_TESTING% -DWITH_PYTHON=%WITH_PYTHON% -DON_INFER=%ON_INFER% ^
-DWITH_INFERENCE_API_TEST=%WITH_INFERENCE_API_TEST% -DTHIRD_PARTY_PATH=%THIRD_PARTY_PATH% ^
-DINFERENCE_DEMO_INSTALL_DIR=%INFERENCE_DEMO_INSTALL_DIR% -DWITH_STATIC_LIB=%WITH_STATIC_LIB% ^
-DWITH_TENSORRT=%WITH_TENSORRT% -DTENSORRT_ROOT="%TENSORRT_ROOT%" -DMSVC_STATIC_CRT=%MSVC_STATIC_CRT% ^
-DWITH_UNITY_BUILD=%WITH_UNITY_BUILD% -DCUDA_ARCH_NAME=%CUDA_ARCH_NAME% >> %work_dir%\win_cmake.sh
set FLAGS_fraction_of_gpu_memory_to_use=0.92 set FLAGS_fraction_of_gpu_memory_to_use=0.92
%cache_dir%\tools\busybox64.exe bash %work_dir%\tools\windows\run_unittests.sh %NIGHTLY_MODE% %PRECISION_TEST% %WITH_GPU% %cache_dir%\tools\busybox64.exe bash %work_dir%\tools\windows\run_unittests.sh %NIGHTLY_MODE% %PRECISION_TEST% %WITH_GPU%
......
...@@ -16,32 +16,66 @@ ...@@ -16,32 +16,66 @@
set +e set +e
set -x set -x
SYSTEM=`uname -s`
if [ -z ${BRANCH} ]; then if [ -z ${BRANCH} ]; then
BRANCH="develop" BRANCH="develop"
fi fi
export CI_SKIP_CPP_TEST=OFF export CI_SKIP_CPP_TEST=OFF
PADDLE_ROOT="$( cd "$( dirname "${BASH_SOURCE[0]}")/../" && pwd )" if [[ "$SYSTEM" == "Linux" ]] || [[ "$SYSTEM" == "Darwin" ]];then
PADDLE_ROOT="$( cd "$( dirname "${BASH_SOURCE[0]}")/../" && pwd )"
elif [[ "$SYSTEM" == "Windows_NT" ]];then
PADDLE_ROOT="$(cd "$PWD/../" && pwd )"
fi
CURDIR=`pwd` CURDIR=`pwd`
cd $PADDLE_ROOT cd $PADDLE_ROOT
cp $PADDLE_ROOT/paddle/scripts/paddle_build.sh $PADDLE_ROOT/paddle/scripts/paddle_build_pre.sh if [[ "$SYSTEM" == "Linux" ]] || [[ "$SYSTEM" == "Darwin" ]];then
cp $PADDLE_ROOT/paddle/scripts/paddle_build.sh $PADDLE_ROOT/paddle/scripts/paddle_build_pre.sh
elif [[ "$SYSTEM" == "Windows_NT" ]];then
git remote | grep upstream
if [ $? != 0 ]; then
git remote add upstream https://github.com/PaddlePaddle/Paddle.git
git fetch upstream develop
fi
fi
CURBRANCH=`git rev-parse --abbrev-ref HEAD` CURBRANCH=`git rev-parse --abbrev-ref HEAD`
echo $CURBRANCH echo $CURBRANCH
if [ `git branch | grep 'prec_added_ut'` ];then
git branch -D 'prec_added_ut'
fi
git checkout -b prec_added_ut upstream/${BRANCH} git checkout -b prec_added_ut upstream/${BRANCH}
git branch
mkdir prec_build mkdir prec_build
cd prec_build cd prec_build
bash $PADDLE_ROOT/paddle/scripts/paddle_build_pre.sh cmake_gen_in_current_dir >prebuild.log 2>&1 if [[ "$SYSTEM" == "Linux" ]] || [[ "$SYSTEM" == "Darwin" ]];then
ctest -N | awk -F ':' '{print $2}' | sed '/^$/d' | sed '$d' | sed 's/ //g' > /$PADDLE_ROOT/br-ut bash $PADDLE_ROOT/paddle/scripts/paddle_build_pre.sh cmake_gen_in_current_dir >prebuild.log 2>&1
elif [[ "$SYSTEM" == "Windows_NT" ]];then
bash $PADDLE_ROOT/win_cmake.sh
fi
ctest -N | awk -F ':' '{print $2}' | sed '/^$/d' | sed '$d' | sed 's/ //g' | grep 'test' > $PADDLE_ROOT/br-ut
cd $PADDLE_ROOT/build cd $PADDLE_ROOT/build
ctest -N | awk -F ':' '{print $2}' | sed '/^$/d' | sed '$d' | sed 's/ //g' > /$PADDLE_ROOT/pr-ut ctest -N | awk -F ':' '{print $2}' | sed '/^$/d' | sed '$d' | sed 's/ //g' | grep 'test' > $PADDLE_ROOT/pr-ut
cd $PADDLE_ROOT cd $PADDLE_ROOT
echo "================================="
echo "br-ut"
cat $PADDLE_ROOT/br-ut
echo "================================="
echo "pr-ut"
cat $PADDLE_ROOT/pr-ut
echo "================================="
grep -F -x -v -f br-ut pr-ut > $PADDLE_ROOT/added_ut grep -F -x -v -f br-ut pr-ut > $PADDLE_ROOT/added_ut
sort pr-ut |uniq -d > $PADDLE_ROOT/duplicate_ut if [[ "$SYSTEM" == 'Linux' ]];then
sort pr-ut |uniq -d > $PADDLE_ROOT/duplicate_ut
fi
echo "New-UT:" echo "New-UT:"
cat $PADDLE_ROOT/added_ut cat $PADDLE_ROOT/added_ut
rm -rf prec_build rm -rf prec_build
rm $PADDLE_ROOT/br-ut $PADDLE_ROOT/pr-ut $PADDLE_ROOT/paddle/scripts/paddle_build_pre.sh if [[ "$SYSTEM" == "Linux" ]] || [[ "$SYSTEM" == "Darwin" ]];then
git checkout $CURBRANCH rm $PADDLE_ROOT/br-ut $PADDLE_ROOT/pr-ut $PADDLE_ROOT/paddle/scripts/paddle_build_pre.sh
elif [[ "$SYSTEM" == "Windows_NT" ]];then
rm $PADDLE_ROOT/br-ut $PADDLE_ROOT/pr-ut $PADDLE_ROOT/get_added_ut.sh
fi
git checkout -f $CURBRANCH
echo $CURBRANCH echo $CURBRANCH
git branch -D prec_added_ut git branch -D prec_added_ut
cd $CURDIR cd $CURDIR
......
...@@ -37,6 +37,14 @@ else ...@@ -37,6 +37,14 @@ else
disable_ut_quickly='' disable_ut_quickly=''
fi fi
# check added ut
set +e
cp $PADDLE_ROOT/tools/check_added_ut.sh $PADDLE_ROOT/tools/check_added_ut_win.sh
bash $PADDLE_ROOT/tools/check_added_ut_win.sh
rm -rf $PADDLE_ROOT/tools/check_added_ut_win.sh
set -e
# /*==================Fixed Disabled Windows unittests==============================*/ # /*==================Fixed Disabled Windows unittests==============================*/
# TODO: fix these unittest that is bound to fail # TODO: fix these unittest that is bound to fail
diable_wingpu_test="^lite_mul_model_test$|\ diable_wingpu_test="^lite_mul_model_test$|\
...@@ -379,6 +387,16 @@ function show_ut_retry_result() { ...@@ -379,6 +387,16 @@ function show_ut_retry_result() {
set +e set +e
if [ "${WITH_GPU:-OFF}" == "ON" ];then if [ "${WITH_GPU:-OFF}" == "ON" ];then
if [ -f "$PADDLE_ROOT/added_ut" ];then
added_uts=^$(awk BEGIN{RS=EOF}'{gsub(/\n/,"$|^");print}' $PADDLE_ROOT/added_ut)$
ctest -R "(${added_uts})" --output-on-failure -C Release --repeat-until-fail 3;added_ut_error=$?
if [ "$added_ut_error" != 0 ];then
echo "========================================"
echo "Added UT should pass three additional executions"
echo "========================================"
exit 8;
fi
fi
run_unittest_gpu $cpu_parallel_job 12 run_unittest_gpu $cpu_parallel_job 12
run_unittest_gpu $tetrad_parallel_job 4 run_unittest_gpu $tetrad_parallel_job 4
run_unittest_gpu $two_parallel_job 2 run_unittest_gpu $two_parallel_job 2
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册