| @@ -22,27 +22,3 @@ jobs: | |||
| run: export PATH=`pwd`/1.1.114.0/x86_64/bin:$PATH && mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_HOME/ndk-bundle/build/cmake/android.toolchain.cmake -DANDROID_ABI="armeabi-v7a" -DANDROID_ARM_NEON=ON -DANDROID_PLATFORM=android-24 -DNCNN_VULKAN=ON .. | |||
| - name: build | |||
| run: cmake --build build -j 2 | |||
| android-armv7-gpu-online-spirv: | |||
| runs-on: ubuntu-latest | |||
| steps: | |||
| - uses: actions/checkout@v2 | |||
| with: | |||
| submodules: 'true' | |||
| - name: cache-vulkansdk | |||
| id: cache-vulkansdk | |||
| uses: actions/cache@v1 | |||
| with: | |||
| path: "1.1.114.0" | |||
| key: vulkansdk-linux-x86_64-1.1.114.0 | |||
| - name: vulkansdk | |||
| if: steps.cache-vulkansdk.outputs.cache-hit != 'true' | |||
| run: | | |||
| wget https://sdk.lunarg.com/sdk/download/1.1.114.0/linux/vulkansdk-linux-x86_64-1.1.114.0.tar.gz?Human=true -O vulkansdk-linux-x86_64-1.1.114.0.tar.gz | |||
| tar -xf vulkansdk-linux-x86_64-1.1.114.0.tar.gz | |||
| rm -rf 1.1.114.0/source 1.1.114.0/samples | |||
| find 1.1.114.0 -type f | grep -v -E 'vulkan|glslang' | xargs rm | |||
| - name: configure | |||
| run: export PATH=`pwd`/1.1.114.0/x86_64/bin:$PATH && mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_HOME/ndk-bundle/build/cmake/android.toolchain.cmake -DANDROID_ABI="armeabi-v7a" -DANDROID_ARM_NEON=ON -DANDROID_PLATFORM=android-24 -DNCNN_VULKAN=ON -DNCNN_VULKAN_ONLINE_SPIRV=ON .. | |||
| - name: build | |||
| run: cmake --build build -j 2 | |||
| @@ -22,27 +22,3 @@ jobs: | |||
| run: export PATH=`pwd`/1.1.114.0/x86_64/bin:$PATH && mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_HOME/ndk-bundle/build/cmake/android.toolchain.cmake -DANDROID_ABI="arm64-v8a" -DANDROID_PLATFORM=android-24 -DNCNN_VULKAN=ON .. | |||
| - name: build | |||
| run: cmake --build build -j 2 | |||
| android-aarch64-gpu-online-spirv: | |||
| runs-on: ubuntu-latest | |||
| steps: | |||
| - uses: actions/checkout@v2 | |||
| with: | |||
| submodules: 'true' | |||
| - name: cache-vulkansdk | |||
| id: cache-vulkansdk | |||
| uses: actions/cache@v1 | |||
| with: | |||
| path: "1.1.114.0" | |||
| key: vulkansdk-linux-x86_64-1.1.114.0 | |||
| - name: vulkansdk | |||
| if: steps.cache-vulkansdk.outputs.cache-hit != 'true' | |||
| run: | | |||
| wget https://sdk.lunarg.com/sdk/download/1.1.114.0/linux/vulkansdk-linux-x86_64-1.1.114.0.tar.gz?Human=true -O vulkansdk-linux-x86_64-1.1.114.0.tar.gz | |||
| tar -xf vulkansdk-linux-x86_64-1.1.114.0.tar.gz | |||
| rm -rf 1.1.114.0/source 1.1.114.0/samples | |||
| find 1.1.114.0 -type f | grep -v -E 'vulkan|glslang' | xargs rm | |||
| - name: configure | |||
| run: export PATH=`pwd`/1.1.114.0/x86_64/bin:$PATH && mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_HOME/ndk-bundle/build/cmake/android.toolchain.cmake -DANDROID_ABI="arm64-v8a" -DANDROID_PLATFORM=android-24 -DNCNN_VULKAN=ON -DNCNN_VULKAN_ONLINE_SPIRV=ON .. | |||
| - name: build | |||
| run: cmake --build build -j 2 | |||
| @@ -22,27 +22,3 @@ jobs: | |||
| run: export PATH=`pwd`/1.1.114.0/x86_64/bin:$PATH && mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_HOME/ndk-bundle/build/cmake/android.toolchain.cmake -DANDROID_ABI="x86_64" -DANDROID_PLATFORM=android-24 -DNCNN_VULKAN=ON .. | |||
| - name: build | |||
| run: cmake --build build -j 2 | |||
| android-x86_64-gpu-online-spirv: | |||
| runs-on: ubuntu-latest | |||
| steps: | |||
| - uses: actions/checkout@v2 | |||
| with: | |||
| submodules: 'true' | |||
| - name: cache-vulkansdk | |||
| id: cache-vulkansdk | |||
| uses: actions/cache@v1 | |||
| with: | |||
| path: "1.1.114.0" | |||
| key: vulkansdk-linux-x86_64-1.1.114.0 | |||
| - name: vulkansdk | |||
| if: steps.cache-vulkansdk.outputs.cache-hit != 'true' | |||
| run: | | |||
| wget https://sdk.lunarg.com/sdk/download/1.1.114.0/linux/vulkansdk-linux-x86_64-1.1.114.0.tar.gz?Human=true -O vulkansdk-linux-x86_64-1.1.114.0.tar.gz | |||
| tar -xf vulkansdk-linux-x86_64-1.1.114.0.tar.gz | |||
| rm -rf 1.1.114.0/source 1.1.114.0/samples | |||
| find 1.1.114.0 -type f | grep -v -E 'vulkan|glslang' | xargs rm | |||
| - name: configure | |||
| run: export PATH=`pwd`/1.1.114.0/x86_64/bin:$PATH && mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_HOME/ndk-bundle/build/cmake/android.toolchain.cmake -DANDROID_ABI="x86_64" -DANDROID_PLATFORM=android-24 -DNCNN_VULKAN=ON -DNCNN_VULKAN_ONLINE_SPIRV=ON .. | |||
| - name: build | |||
| run: cmake --build build -j 2 | |||
| @@ -22,27 +22,3 @@ jobs: | |||
| run: export PATH=`pwd`/1.1.114.0/x86_64/bin:$PATH && mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_HOME/ndk-bundle/build/cmake/android.toolchain.cmake -DANDROID_ABI="x86" -DANDROID_PLATFORM=android-24 -DNCNN_VULKAN=ON .. | |||
| - name: build | |||
| run: cmake --build build -j 2 | |||
| android-x86-gpu-online-spirv: | |||
| runs-on: ubuntu-latest | |||
| steps: | |||
| - uses: actions/checkout@v2 | |||
| with: | |||
| submodules: 'true' | |||
| - name: cache-vulkansdk | |||
| id: cache-vulkansdk | |||
| uses: actions/cache@v1 | |||
| with: | |||
| path: "1.1.114.0" | |||
| key: vulkansdk-linux-x86_64-1.1.114.0 | |||
| - name: vulkansdk | |||
| if: steps.cache-vulkansdk.outputs.cache-hit != 'true' | |||
| run: | | |||
| wget https://sdk.lunarg.com/sdk/download/1.1.114.0/linux/vulkansdk-linux-x86_64-1.1.114.0.tar.gz?Human=true -O vulkansdk-linux-x86_64-1.1.114.0.tar.gz | |||
| tar -xf vulkansdk-linux-x86_64-1.1.114.0.tar.gz | |||
| rm -rf 1.1.114.0/source 1.1.114.0/samples | |||
| find 1.1.114.0 -type f | grep -v -E 'vulkan|glslang' | xargs rm | |||
| - name: configure | |||
| run: export PATH=`pwd`/1.1.114.0/x86_64/bin:$PATH && mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_HOME/ndk-bundle/build/cmake/android.toolchain.cmake -DANDROID_ABI="x86" -DANDROID_PLATFORM=android-24 -DNCNN_VULKAN=ON -DNCNN_VULKAN_ONLINE_SPIRV=ON .. | |||
| - name: build | |||
| run: cmake --build build -j 2 | |||
| @@ -22,27 +22,3 @@ jobs: | |||
| run: export VULKAN_SDK=`pwd`/vulkansdk-macos-1.1.114.0/macOS && mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/ios.toolchain.cmake -DIOS_PLATFORM=OS64 -DVulkan_INCLUDE_DIR=`pwd`/../vulkansdk-macos-1.1.114.0/MoltenVK/include -DVulkan_LIBRARY=`pwd`/../vulkansdk-macos-1.1.114.0/MoltenVK/iOS/dynamic/libMoltenVK.dylib -DNCNN_VULKAN=ON .. | |||
| - name: build | |||
| run: cmake --build build -j 2 | |||
| ios-iphone-os-gpu-online-spirv: | |||
| runs-on: macos-latest | |||
| steps: | |||
| - uses: actions/checkout@v2 | |||
| with: | |||
| submodules: 'true' | |||
| - name: cache-vulkansdk | |||
| id: cache-vulkansdk | |||
| uses: actions/cache@v1 | |||
| with: | |||
| path: "vulkansdk-macos-1.1.114.0" | |||
| key: vulkansdk-macos-1.1.114.0 | |||
| - name: vulkansdk | |||
| if: steps.cache-vulkansdk.outputs.cache-hit != 'true' | |||
| run: | | |||
| wget https://sdk.lunarg.com/sdk/download/1.1.114.0/mac/vulkansdk-macos-1.1.114.0.tar.gz?Human=true -O vulkansdk-macos-1.1.114.0.tar.gz | |||
| tar -xf vulkansdk-macos-1.1.114.0.tar.gz | |||
| rm -rf vulkansdk-macos-1.1.114.0/Applications | |||
| find vulkansdk-macos-1.1.114.0 -type f | grep -v -E 'vulkan|glslang|MoltenVK' | xargs rm | |||
| - name: configure | |||
| run: export VULKAN_SDK=`pwd`/vulkansdk-macos-1.1.114.0/macOS && mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/ios.toolchain.cmake -DIOS_PLATFORM=OS64 -DVulkan_INCLUDE_DIR=`pwd`/../vulkansdk-macos-1.1.114.0/MoltenVK/include -DVulkan_LIBRARY=`pwd`/../vulkansdk-macos-1.1.114.0/MoltenVK/iOS/dynamic/libMoltenVK.dylib -DNCNN_VULKAN=ON -DNCNN_VULKAN_ONLINE_SPIRV=ON .. | |||
| - name: build | |||
| run: cmake --build build -j 2 | |||
| @@ -60,65 +60,3 @@ jobs: | |||
| run: | | |||
| export VK_ICD_FILENAMES="$GITHUB_WORKSPACE/swiftshader-install/vk_swiftshader_icd.json" | |||
| cd build && ctest --output-on-failure -j 2 | |||
| linux-clang-gpu-online-spirv: | |||
| runs-on: ubuntu-latest | |||
| steps: | |||
| - uses: actions/checkout@v2 | |||
| with: | |||
| submodules: 'true' | |||
| - name: update | |||
| run: sudo apt-get update | |||
| - name: protobuf | |||
| run: sudo apt-get install libprotobuf-dev protobuf-compiler libopencv-dev | |||
| - name: cache-vulkansdk | |||
| id: cache-vulkansdk | |||
| uses: actions/cache@v1 | |||
| with: | |||
| path: "1.1.114.0" | |||
| key: vulkansdk-linux-x86_64-1.1.114.0 | |||
| - name: vulkansdk | |||
| if: steps.cache-vulkansdk.outputs.cache-hit != 'true' | |||
| run: | | |||
| wget https://sdk.lunarg.com/sdk/download/1.1.114.0/linux/vulkansdk-linux-x86_64-1.1.114.0.tar.gz?Human=true -O vulkansdk-linux-x86_64-1.1.114.0.tar.gz | |||
| tar -xf vulkansdk-linux-x86_64-1.1.114.0.tar.gz | |||
| rm -rf 1.1.114.0/source 1.1.114.0/samples | |||
| find 1.1.114.0 -type f | grep -v -E 'vulkan|glslang' | xargs rm | |||
| - name: cache-swiftshader | |||
| id: cache-swiftshader | |||
| uses: actions/cache@v1 | |||
| with: | |||
| path: swiftshader-install | |||
| key: swiftshader-linux-install-20200508 | |||
| - name: checkout-swiftshader | |||
| if: steps.cache-swiftshader.outputs.cache-hit != 'true' | |||
| uses: actions/checkout@v2 | |||
| with: | |||
| repository: google/swiftshader | |||
| path: swiftshader | |||
| ref: 2dd864470e310d173d35fa95ca3a14d216734aab | |||
| - name: checkout-swiftshader-submodules | |||
| if: steps.cache-swiftshader.outputs.cache-hit != 'true' | |||
| run: | | |||
| cd swiftshader | |||
| git submodule update --init --recursive | |||
| - name: swiftshader | |||
| if: steps.cache-swiftshader.outputs.cache-hit != 'true' | |||
| run: | | |||
| cd swiftshader | |||
| mkdir -p build; cd build | |||
| cmake -DCMAKE_INSTALL_PREFIX=install -DSWIFTSHADER_BUILD_EGL=FALSE -DSWIFTSHADER_BUILD_GLESv2=FALSE -DSWIFTSHADER_BUILD_GLES_CM=FALSE -DSWIFTSHADER_BUILD_VULKAN=TRUE -DSWIFTSHADER_BUILD_PVR=FALSE -DSWIFTSHADER_BUILD_TESTS=FALSE -DSWIFTSHADER_ENABLE_ASTC=FALSE -DSWIFTSHADER_WARNINGS_AS_ERRORS=FALSE -DREACTOR_BACKEND=Subzero -DREACTOR_DEFAULT_OPT_LEVEL=Default -DCMAKE_BUILD_TYPE=Release .. | |||
| cmake --build . -j 2 | |||
| mkdir $GITHUB_WORKSPACE/swiftshader-install | |||
| cp Linux/* $GITHUB_WORKSPACE/swiftshader-install | |||
| - name: configure | |||
| env: | |||
| CC: clang | |||
| CXX: clang++ | |||
| run: export VULKAN_SDK=`pwd`/1.1.114.0/x86_64 && mkdir build && cd build && cmake -DNCNN_VULKAN=ON -DNCNN_VULKAN_ONLINE_SPIRV=ON .. | |||
| - name: build | |||
| run: cmake --build build -j 2 | |||
| - name: test | |||
| run: | | |||
| export VK_ICD_FILENAMES="$GITHUB_WORKSPACE/swiftshader-install/vk_swiftshader_icd.json" | |||
| cd build && ctest --output-on-failure -j 2 | |||
| @@ -57,62 +57,3 @@ jobs: | |||
| run: | | |||
| export VK_ICD_FILENAMES="$GITHUB_WORKSPACE/swiftshader-install/vk_swiftshader_icd.json" | |||
| cd build && ctest --output-on-failure -j 2 | |||
| linux-gcc-gpu-online-spirv: | |||
| runs-on: ubuntu-latest | |||
| steps: | |||
| - uses: actions/checkout@v2 | |||
| with: | |||
| submodules: 'true' | |||
| - name: update | |||
| run: sudo apt-get update | |||
| - name: protobuf | |||
| run: sudo apt-get install libprotobuf-dev protobuf-compiler libopencv-dev | |||
| - name: cache-vulkansdk | |||
| id: cache-vulkansdk | |||
| uses: actions/cache@v1 | |||
| with: | |||
| path: "1.1.114.0" | |||
| key: vulkansdk-linux-x86_64-1.1.114.0 | |||
| - name: vulkansdk | |||
| if: steps.cache-vulkansdk.outputs.cache-hit != 'true' | |||
| run: | | |||
| wget https://sdk.lunarg.com/sdk/download/1.1.114.0/linux/vulkansdk-linux-x86_64-1.1.114.0.tar.gz?Human=true -O vulkansdk-linux-x86_64-1.1.114.0.tar.gz | |||
| tar -xf vulkansdk-linux-x86_64-1.1.114.0.tar.gz | |||
| rm -rf 1.1.114.0/source 1.1.114.0/samples | |||
| find 1.1.114.0 -type f | grep -v -E 'vulkan|glslang' | xargs rm | |||
| - name: cache-swiftshader | |||
| id: cache-swiftshader | |||
| uses: actions/cache@v1 | |||
| with: | |||
| path: swiftshader-install | |||
| key: swiftshader-linux-install-20200508 | |||
| - name: checkout-swiftshader | |||
| if: steps.cache-swiftshader.outputs.cache-hit != 'true' | |||
| uses: actions/checkout@v2 | |||
| with: | |||
| repository: google/swiftshader | |||
| path: swiftshader | |||
| ref: 2dd864470e310d173d35fa95ca3a14d216734aab | |||
| - name: checkout-swiftshader-submodules | |||
| if: steps.cache-swiftshader.outputs.cache-hit != 'true' | |||
| run: | | |||
| cd swiftshader | |||
| git submodule update --init --recursive | |||
| - name: swiftshader | |||
| if: steps.cache-swiftshader.outputs.cache-hit != 'true' | |||
| run: | | |||
| cd swiftshader | |||
| mkdir -p build; cd build | |||
| cmake -DCMAKE_INSTALL_PREFIX=install -DSWIFTSHADER_BUILD_EGL=FALSE -DSWIFTSHADER_BUILD_GLESv2=FALSE -DSWIFTSHADER_BUILD_GLES_CM=FALSE -DSWIFTSHADER_BUILD_VULKAN=TRUE -DSWIFTSHADER_BUILD_PVR=FALSE -DSWIFTSHADER_BUILD_TESTS=FALSE -DSWIFTSHADER_ENABLE_ASTC=FALSE -DSWIFTSHADER_WARNINGS_AS_ERRORS=FALSE -DREACTOR_BACKEND=Subzero -DREACTOR_DEFAULT_OPT_LEVEL=Default -DCMAKE_BUILD_TYPE=Release .. | |||
| cmake --build . -j 2 | |||
| mkdir $GITHUB_WORKSPACE/swiftshader-install | |||
| cp Linux/* $GITHUB_WORKSPACE/swiftshader-install | |||
| - name: configure | |||
| run: export VULKAN_SDK=`pwd`/1.1.114.0/x86_64 && mkdir build && cd build && cmake -DNCNN_VULKAN=ON -DNCNN_VULKAN_ONLINE_SPIRV=ON .. | |||
| - name: build | |||
| run: cmake --build build -j 2 | |||
| - name: test | |||
| run: | | |||
| export VK_ICD_FILENAMES="$GITHUB_WORKSPACE/swiftshader-install/vk_swiftshader_icd.json" | |||
| cd build && ctest --output-on-failure -j 2 | |||
| @@ -56,61 +56,3 @@ jobs: | |||
| export DYLD_LIBRARY_PATH="vulkansdk-macos-1.1.114.0/macOS/lib":$DYLD_LIBRARY_PATH | |||
| export VK_ICD_FILENAMES="$GITHUB_WORKSPACE/swiftshader-install/vk_swiftshader_icd.json" | |||
| cd build && ctest --output-on-failure -j 2 | |||
| macos-clang-gpu-online-spirv: | |||
| runs-on: macos-latest | |||
| steps: | |||
| - uses: actions/checkout@v2 | |||
| with: | |||
| submodules: 'true' | |||
| - name: protobuf | |||
| run: brew install protobuf opencv3 | |||
| - name: cache-vulkansdk | |||
| id: cache-vulkansdk | |||
| uses: actions/cache@v1 | |||
| with: | |||
| path: "vulkansdk-macos-1.1.114.0" | |||
| key: vulkansdk-macos-1.1.114.0 | |||
| - name: vulkansdk | |||
| if: steps.cache-vulkansdk.outputs.cache-hit != 'true' | |||
| run: | | |||
| wget https://sdk.lunarg.com/sdk/download/1.1.114.0/mac/vulkansdk-macos-1.1.114.0.tar.gz?Human=true -O vulkansdk-macos-1.1.114.0.tar.gz | |||
| tar -xf vulkansdk-macos-1.1.114.0.tar.gz | |||
| rm -rf vulkansdk-macos-1.1.114.0/Applications | |||
| find vulkansdk-macos-1.1.114.0 -type f | grep -v -E 'vulkan|glslang|MoltenVK' | xargs rm | |||
| - name: cache-swiftshader | |||
| id: cache-swiftshader | |||
| uses: actions/cache@v1 | |||
| with: | |||
| path: swiftshader-install | |||
| key: swiftshader-macos-install-20200508 | |||
| - name: checkout-swiftshader | |||
| if: steps.cache-swiftshader.outputs.cache-hit != 'true' | |||
| uses: actions/checkout@v2 | |||
| with: | |||
| repository: google/swiftshader | |||
| path: swiftshader | |||
| ref: 2dd864470e310d173d35fa95ca3a14d216734aab | |||
| - name: checkout-swiftshader-submodules | |||
| if: steps.cache-swiftshader.outputs.cache-hit != 'true' | |||
| run: | | |||
| cd swiftshader | |||
| git submodule update --init --recursive | |||
| - name: swiftshader | |||
| if: steps.cache-swiftshader.outputs.cache-hit != 'true' | |||
| run: | | |||
| cd swiftshader | |||
| mkdir -p build; cd build | |||
| cmake -DCMAKE_INSTALL_PREFIX=install -DSWIFTSHADER_BUILD_EGL=FALSE -DSWIFTSHADER_BUILD_GLESv2=FALSE -DSWIFTSHADER_BUILD_GLES_CM=FALSE -DSWIFTSHADER_BUILD_VULKAN=TRUE -DSWIFTSHADER_BUILD_PVR=FALSE -DSWIFTSHADER_BUILD_TESTS=FALSE -DSWIFTSHADER_ENABLE_ASTC=FALSE -DSWIFTSHADER_WARNINGS_AS_ERRORS=FALSE -DREACTOR_BACKEND=Subzero -DREACTOR_DEFAULT_OPT_LEVEL=Default -DCMAKE_BUILD_TYPE=Release .. | |||
| cmake --build . -j 2 | |||
| mkdir $GITHUB_WORKSPACE/swiftshader-install | |||
| cp Darwin/* $GITHUB_WORKSPACE/swiftshader-install | |||
| - name: configure | |||
| run: export VULKAN_SDK=`pwd`/vulkansdk-macos-1.1.114.0/macOS && mkdir build && cd build && cmake -DNCNN_VULKAN=ON -DNCNN_VULKAN_ONLINE_SPIRV=ON .. | |||
| - name: build | |||
| run: cmake --build build -j 2 | |||
| - name: test | |||
| run: | | |||
| export DYLD_LIBRARY_PATH="vulkansdk-macos-1.1.114.0/macOS/lib":$DYLD_LIBRARY_PATH | |||
| export VK_ICD_FILENAMES="$GITHUB_WORKSPACE/swiftshader-install/vk_swiftshader_icd.json" | |||
| cd build && ctest --output-on-failure -j 2 | |||
| @@ -67,74 +67,6 @@ jobs: | |||
| token: ${{ secrets.CODECOV_TOKEN }} | |||
| file: build/lcov.info | |||
| linux-gcc-gpu-online-spirv: | |||
| runs-on: ubuntu-latest | |||
| steps: | |||
| - uses: actions/checkout@v2 | |||
| with: | |||
| submodules: 'true' | |||
| - name: lcov | |||
| run: sudo apt-get install lcov | |||
| - name: cache-vulkansdk | |||
| id: cache-vulkansdk | |||
| uses: actions/cache@v1 | |||
| with: | |||
| path: "1.1.114.0" | |||
| key: vulkansdk-linux-x86_64-1.1.114.0 | |||
| - name: vulkansdk | |||
| if: steps.cache-vulkansdk.outputs.cache-hit != 'true' | |||
| run: | | |||
| wget https://sdk.lunarg.com/sdk/download/1.1.114.0/linux/vulkansdk-linux-x86_64-1.1.114.0.tar.gz?Human=true -O vulkansdk-linux-x86_64-1.1.114.0.tar.gz | |||
| tar -xf vulkansdk-linux-x86_64-1.1.114.0.tar.gz | |||
| rm -rf 1.1.114.0/source 1.1.114.0/samples | |||
| find 1.1.114.0 -type f | grep -v -E 'vulkan|glslang' | xargs rm | |||
| - name: cache-swiftshader | |||
| id: cache-swiftshader | |||
| uses: actions/cache@v1 | |||
| with: | |||
| path: swiftshader-install | |||
| key: swiftshader-linux-install-20200508 | |||
| - name: checkout-swiftshader | |||
| if: steps.cache-swiftshader.outputs.cache-hit != 'true' | |||
| uses: actions/checkout@v2 | |||
| with: | |||
| repository: google/swiftshader | |||
| path: swiftshader | |||
| ref: 2dd864470e310d173d35fa95ca3a14d216734aab | |||
| - name: checkout-swiftshader-submodules | |||
| if: steps.cache-swiftshader.outputs.cache-hit != 'true' | |||
| run: | | |||
| cd swiftshader | |||
| git submodule update --init --recursive | |||
| - name: swiftshader | |||
| if: steps.cache-swiftshader.outputs.cache-hit != 'true' | |||
| run: | | |||
| cd swiftshader | |||
| mkdir -p build; cd build | |||
| cmake -DCMAKE_INSTALL_PREFIX=install -DSWIFTSHADER_BUILD_EGL=FALSE -DSWIFTSHADER_BUILD_GLESv2=FALSE -DSWIFTSHADER_BUILD_GLES_CM=FALSE -DSWIFTSHADER_BUILD_VULKAN=TRUE -DSWIFTSHADER_BUILD_PVR=FALSE -DSWIFTSHADER_BUILD_TESTS=FALSE -DSWIFTSHADER_ENABLE_ASTC=FALSE -DSWIFTSHADER_WARNINGS_AS_ERRORS=FALSE -DREACTOR_BACKEND=Subzero -DREACTOR_DEFAULT_OPT_LEVEL=Default -DCMAKE_BUILD_TYPE=Release .. | |||
| cmake --build . -j 2 | |||
| mkdir $GITHUB_WORKSPACE/swiftshader-install | |||
| cp Linux/* $GITHUB_WORKSPACE/swiftshader-install | |||
| - name: configure | |||
| run: export VULKAN_SDK=`pwd`/1.1.114.0/x86_64 && mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=debug -DNCNN_COVERAGE=ON -DNCNN_VULKAN=ON -DNCNN_VULKAN_ONLINE_SPIRV=ON -DNCNN_BUILD_TOOLS=OFF -DNCNN_BUILD_EXAMPLES=OFF .. | |||
| - name: build | |||
| run: cmake --build build -j 2 | |||
| - name: test | |||
| run: | | |||
| export VK_ICD_FILENAMES="$GITHUB_WORKSPACE/swiftshader-install/vk_swiftshader_icd.json" | |||
| cd build && ctest --output-on-failure -j 2 | |||
| - name: lcov-collect | |||
| run: | | |||
| cd build | |||
| lcov -d ./src -c -o lcov.info | |||
| lcov -r lcov.info '/usr/*' -o lcov.info | |||
| lcov --list lcov.info | |||
| - name: codecov | |||
| uses: codecov/codecov-action@v1 | |||
| with: | |||
| token: ${{ secrets.CODECOV_TOKEN }} | |||
| file: build/lcov.info | |||
| linux-gcc-avx2: | |||
| runs-on: ubuntu-latest | |||
| steps: | |||
| @@ -71,76 +71,3 @@ jobs: | |||
| Copy-Item -Path '.\VulkanSDK\RunTimeInstaller\x64\vulkan-1.dll' -Destination 'build\tests' | |||
| $env:VK_ICD_FILENAMES="$env:GITHUB_WORKSPACE\swiftshader-install\vk_swiftshader_icd.json" | |||
| cd build; ctest --output-on-failure -j 2 | |||
| windows-vs2019-gpu-online-spirv: | |||
| runs-on: windows-latest | |||
| steps: | |||
| - uses: actions/checkout@v2 | |||
| with: | |||
| submodules: 'true' | |||
| - name: cache-protobuf | |||
| id: cache-protobuf | |||
| uses: actions/cache@v1 | |||
| with: | |||
| path: "protobuf-install" | |||
| key: protobuf-windows-install | |||
| - name: protobuf | |||
| if: steps.cache-protobuf.outputs.cache-hit != 'true' | |||
| run: | | |||
| Invoke-WebRequest -Uri https://github.com/protocolbuffers/protobuf/archive/v3.11.2.zip -OutFile protobuf-3.11.2.zip | |||
| 7z x ./protobuf-3.11.2.zip | |||
| cd protobuf-3.11.2 | |||
| mkdir build-vs2019; cd build-vs2019; cmake -DCMAKE_INSTALL_PREFIX="$env:GITHUB_WORKSPACE\protobuf-install" -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_MSVC_STATIC_RUNTIME=OFF ../cmake | |||
| cmake --build . --config Release -j 2 | |||
| cmake --build . --config Release --target install | |||
| - name: cache-vulkansdk | |||
| id: cache-vulkansdk | |||
| uses: actions/cache@v1 | |||
| with: | |||
| path: "VulkanSDK" | |||
| key: VulkanSDK-1.1.114.0-Installer | |||
| - name: vulkansdk | |||
| if: steps.cache-vulkansdk.outputs.cache-hit != 'true' | |||
| run: | | |||
| Invoke-WebRequest -Uri https://sdk.lunarg.com/sdk/download/1.1.114.0/windows/VulkanSDK-1.1.114.0-Installer.exe?Human=true -OutFile VulkanSDK-1.1.114.0-Installer.exe | |||
| 7z x -aoa ./VulkanSDK-1.1.114.0-Installer.exe -oVulkanSDK | |||
| Remove-Item .\VulkanSDK\Demos, .\VulkanSDK\glslang, .\VulkanSDK\Samples, .\VulkanSDK\shaderc, .\VulkanSDK\spirv-tools, .\VulkanSDK\Third-Party, .\VulkanSDK\Tools, .\VulkanSDK\Tools32 -Recurse | |||
| - name: cache-swiftshader | |||
| id: cache-swiftshader | |||
| uses: actions/cache@v1 | |||
| with: | |||
| path: swiftshader-install | |||
| key: swiftshader-windows-install-20200508 | |||
| - name: checkout-swiftshader | |||
| if: steps.cache-swiftshader.outputs.cache-hit != 'true' | |||
| uses: actions/checkout@v2 | |||
| with: | |||
| repository: google/swiftshader | |||
| path: swiftshader | |||
| ref: 2dd864470e310d173d35fa95ca3a14d216734aab | |||
| - name: checkout-swiftshader-submodules | |||
| if: steps.cache-swiftshader.outputs.cache-hit != 'true' | |||
| run: | | |||
| cd swiftshader | |||
| git submodule update --init --recursive | |||
| - name: swiftshader | |||
| if: steps.cache-swiftshader.outputs.cache-hit != 'true' | |||
| run: | | |||
| cd swiftshader | |||
| mkdir build-vs2019; cd build-vs2019 | |||
| cmake -DCMAKE_INSTALL_PREFIX=install -DSWIFTSHADER_BUILD_EGL=FALSE -DSWIFTSHADER_BUILD_GLESv2=FALSE -DSWIFTSHADER_BUILD_GLES_CM=FALSE -DSWIFTSHADER_BUILD_VULKAN=TRUE -DSWIFTSHADER_BUILD_PVR=FALSE -DSWIFTSHADER_BUILD_TESTS=FALSE -DSWIFTSHADER_ENABLE_ASTC=FALSE -DSWIFTSHADER_WARNINGS_AS_ERRORS=FALSE -DREACTOR_BACKEND=Subzero -DREACTOR_DEFAULT_OPT_LEVEL=Default -DCMAKE_BUILD_TYPE=Release .. | |||
| cmake --build . --config Release -j 2 | |||
| mkdir "$env:GITHUB_WORKSPACE/swiftshader-install" | |||
| Copy-Item -Path "Windows\*" -Destination "$env:GITHUB_WORKSPACE\swiftshader-install" | |||
| - name: configure | |||
| run: | | |||
| $env:VULKAN_SDK="$(pwd)/VulkanSDK" | |||
| mkdir build; cd build | |||
| cmake -DProtobuf_INCLUDE_DIR="$env:GITHUB_WORKSPACE\protobuf-install\include" -DProtobuf_LIBRARIES="$env:GITHUB_WORKSPACE\protobuf-install\lib\libprotobuf.lib" -DProtobuf_PROTOC_EXECUTABLE="$env:GITHUB_WORKSPACE\protobuf-install\bin\protoc.exe" -DNCNN_VULKAN=ON -DNCNN_VULKAN_ONLINE_SPIRV=ON .. | |||
| - name: build | |||
| run: cmake --build build --config Release -j 2 | |||
| - name: test | |||
| run: | | |||
| Copy-Item -Path '.\VulkanSDK\RunTimeInstaller\x64\vulkan-1.dll' -Destination 'build\tests' | |||
| $env:VK_ICD_FILENAMES="$env:GITHUB_WORKSPACE\swiftshader-install\vk_swiftshader_icd.json" | |||
| cd build; ctest --output-on-failure -j 2 | |||
| @@ -694,69 +694,77 @@ cooling_down = 1 | |||
| Qualcomm MSM8916 Snapdragon 410 (Cortex-A53 1.2GHz x 4) | |||
| ``` | |||
| HM2014812:/data/local/tmp # ./benchncnn 8 4 0 -1 | |||
| HM2014812:/data/local/tmp # ./benchncnn 8 4 0 -1 1 | |||
| no vulkan device | |||
| loop_count = 8 | |||
| num_threads = 4 | |||
| powersave = 0 | |||
| gpu_device = -1 | |||
| squeezenet min = 66.28 max = 71.76 avg = 68.42 | |||
| squeezenet_int8 min = 80.27 max = 86.95 avg = 84.41 | |||
| mobilenet min = 87.53 max = 93.44 avg = 91.11 | |||
| mobilenet_int8 min = 121.72 max = 134.20 avg = 128.89 | |||
| mobilenet_v2 min = 78.41 max = 84.16 avg = 80.65 | |||
| mobilenet_v3 min = 63.52 max = 68.81 avg = 65.06 | |||
| shufflenet min = 50.21 max = 55.31 avg = 51.05 | |||
| shufflenet_v2 min = 41.84 max = 47.19 avg = 43.29 | |||
| mnasnet min = 69.69 max = 75.25 avg = 71.82 | |||
| proxylessnasnet min = 78.53 max = 83.97 avg = 80.69 | |||
| googlenet min = 186.86 max = 194.13 avg = 191.75 | |||
| googlenet_int8 min = 254.33 max = 282.34 avg = 268.64 | |||
| resnet18 min = 162.89 max = 176.29 avg = 168.70 | |||
| resnet18_int8 min = 221.94 max = 233.40 avg = 228.47 | |||
| alexnet min = 136.68 max = 147.43 avg = 141.04 | |||
| vgg16 min = 820.71 max = 1179.12 avg = 935.40 | |||
| vgg16_int8 min = 1489.99 max = 1728.10 avg = 1557.09 | |||
| resnet50 min = 417.40 max = 422.28 avg = 419.54 | |||
| resnet50_int8 min = 526.23 max = 556.69 avg = 540.22 | |||
| squeezenet_ssd min = 176.31 max = 187.60 avg = 182.31 | |||
| squeezenet_ssd_int8 min = 238.51 max = 249.05 avg = 243.61 | |||
| mobilenet_ssd min = 188.66 max = 197.45 avg = 193.79 | |||
| mobilenet_ssd_int8 min = 247.35 max = 269.80 avg = 253.90 | |||
| mobilenet_yolo min = 395.71 max = 407.36 avg = 401.46 | |||
| mobilenetv2_yolov3 min = 250.01 max = 261.79 avg = 256.15 | |||
| cooling_down = 1 | |||
| squeezenet min = 66.19 max = 72.82 avg = 68.21 | |||
| squeezenet_int8 min = 114.98 max = 130.46 avg = 118.16 | |||
| mobilenet min = 89.62 max = 95.83 avg = 93.29 | |||
| mobilenet_int8 min = 241.53 max = 251.06 avg = 246.45 | |||
| mobilenet_v2 min = 78.90 max = 89.02 avg = 81.46 | |||
| mobilenet_v3 min = 63.31 max = 72.72 avg = 65.19 | |||
| shufflenet min = 50.80 max = 59.33 avg = 53.10 | |||
| shufflenet_v2 min = 43.13 max = 50.89 avg = 44.53 | |||
| mnasnet min = 72.71 max = 81.03 avg = 75.36 | |||
| proxylessnasnet min = 78.31 max = 87.47 avg = 81.05 | |||
| efficientnet_b0 min = 133.79 max = 144.34 avg = 139.61 | |||
| regnety_400m min = 112.34 max = 119.73 avg = 114.92 | |||
| blazeface min = 17.01 max = 17.21 avg = 17.15 | |||
| googlenet min = 187.44 max = 198.45 avg = 193.39 | |||
| googlenet_int8 min = 308.24 max = 414.77 avg = 333.01 | |||
| resnet18 min = 172.57 max = 185.75 avg = 178.58 | |||
| resnet18_int8 min = 259.60 max = 278.97 avg = 270.88 | |||
| alexnet min = 186.46 max = 197.99 avg = 190.98 | |||
| vgg16 min = 807.01 max = 993.53 avg = 840.82 | |||
| vgg16_int8 min = 1552.74 max = 1616.45 avg = 1579.95 | |||
| resnet50 min = 416.01 max = 456.37 avg = 423.99 | |||
| resnet50_int8 min = 633.55 max = 665.31 avg = 650.97 | |||
| squeezenet_ssd min = 189.73 max = 205.13 avg = 196.05 | |||
| squeezenet_ssd_int8 min = 303.99 max = 330.38 avg = 311.27 | |||
| mobilenet_ssd min = 191.16 max = 201.49 avg = 195.73 | |||
| mobilenet_ssd_int8 min = 341.66 max = 360.41 avg = 352.74 | |||
| mobilenet_yolo min = 404.64 max = 414.32 avg = 409.58 | |||
| mobilenetv2_yolov3 min = 255.36 max = 260.57 avg = 258.33 | |||
| HM2014812:/data/local/tmp # ./benchncnn 4 1 0 -1 | |||
| HM2014812:/data/local/tmp # ./benchncnn 4 1 0 -1 1 | |||
| no vulkan device | |||
| loop_count = 4 | |||
| num_threads = 1 | |||
| powersave = 0 | |||
| gpu_device = -1 | |||
| squeezenet min = 152.92 max = 155.51 avg = 153.70 | |||
| squeezenet_int8 min = 201.83 max = 205.87 avg = 203.62 | |||
| mobilenet min = 242.75 max = 243.80 avg = 243.08 | |||
| mobilenet_int8 min = 360.94 max = 363.18 avg = 361.70 | |||
| mobilenet_v2 min = 169.94 max = 171.54 avg = 170.60 | |||
| mobilenet_v3 min = 148.18 max = 149.00 avg = 148.47 | |||
| shufflenet min = 99.96 max = 100.62 avg = 100.32 | |||
| shufflenet_v2 min = 86.17 max = 87.17 avg = 86.68 | |||
| mnasnet min = 163.09 max = 163.60 avg = 163.30 | |||
| proxylessnasnet min = 208.37 max = 208.83 avg = 208.63 | |||
| googlenet min = 550.35 max = 558.00 avg = 552.59 | |||
| googlenet_int8 min = 716.89 max = 729.11 avg = 723.14 | |||
| resnet18 min = 499.56 max = 500.78 avg = 499.96 | |||
| resnet18_int8 min = 614.61 max = 621.81 avg = 617.39 | |||
| alexnet min = 485.58 max = 486.32 avg = 486.06 | |||
| vgg16 min = 2218.44 max = 2267.49 avg = 2239.35 | |||
| vgg16_int8 min = 3655.84 max = 3663.73 avg = 3659.39 | |||
| resnet50 min = 1220.40 max = 1227.92 avg = 1223.96 | |||
| resnet50_int8 min = 1449.73 max = 1452.61 avg = 1451.31 | |||
| squeezenet_ssd min = 358.87 max = 361.47 avg = 360.33 | |||
| squeezenet_ssd_int8 min = 535.02 max = 538.82 avg = 536.98 | |||
| mobilenet_ssd min = 523.74 max = 528.69 avg = 525.57 | |||
| mobilenet_ssd_int8 min = 713.93 max = 716.41 avg = 714.92 | |||
| mobilenet_yolo min = 1130.12 max = 1135.57 avg = 1132.88 | |||
| mobilenetv2_yolov3 min = 603.32 max = 606.46 avg = 604.85 | |||
| cooling_down = 1 | |||
| squeezenet min = 157.84 max = 163.57 avg = 160.17 | |||
| squeezenet_int8 min = 235.90 max = 236.90 avg = 236.36 | |||
| mobilenet min = 244.48 max = 245.33 avg = 244.93 | |||
| mobilenet_int8 min = 566.65 max = 585.54 avg = 574.41 | |||
| mobilenet_v2 min = 173.31 max = 184.20 avg = 179.05 | |||
| mobilenet_v3 min = 149.89 max = 151.90 avg = 150.65 | |||
| shufflenet min = 103.08 max = 104.07 avg = 103.67 | |||
| shufflenet_v2 min = 88.62 max = 88.85 avg = 88.70 | |||
| mnasnet min = 165.94 max = 166.74 avg = 166.42 | |||
| proxylessnasnet min = 210.10 max = 215.64 avg = 212.17 | |||
| efficientnet_b0 min = 396.79 max = 409.39 avg = 401.78 | |||
| regnety_400m min = 224.94 max = 226.49 avg = 225.46 | |||
| blazeface min = 38.27 max = 39.03 avg = 38.67 | |||
| googlenet min = 548.29 max = 556.97 avg = 551.88 | |||
| googlenet_int8 min = 763.95 max = 776.59 avg = 768.95 | |||
| resnet18 min = 496.89 max = 500.24 avg = 498.06 | |||
| resnet18_int8 min = 651.89 max = 655.10 avg = 653.40 | |||
| alexnet min = 490.47 max = 492.03 avg = 491.29 | |||
| vgg16 min = 2203.58 max = 2236.58 avg = 2222.08 | |||
| vgg16_int8 min = 3753.17 max = 3761.56 avg = 3756.99 | |||
| resnet50 min = 1209.85 max = 1215.09 avg = 1212.06 | |||
| resnet50_int8 min = 1657.36 max = 1665.21 avg = 1660.50 | |||
| squeezenet_ssd min = 366.46 max = 369.47 avg = 367.88 | |||
| squeezenet_ssd_int8 min = 601.46 max = 603.23 avg = 602.37 | |||
| mobilenet_ssd min = 520.79 max = 523.17 avg = 521.59 | |||
| mobilenet_ssd_int8 min = 867.12 max = 876.73 avg = 872.79 | |||
| mobilenet_yolo min = 1130.78 max = 1135.02 avg = 1132.42 | |||
| mobilenetv2_yolov3 min = 600.01 max = 602.18 avg = 600.88 | |||
| ``` | |||
| Raspberry Pi 3 Model B+ Broadcom BCM2837B0, Cortex-A53 (ARMv8) (1.4GHz x 4 ) | |||
| ``` | |||