From e4d1e6df4b1185ae695357d31a5a9e0afd44587d Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Mon, 30 Oct 2023 15:56:42 -0400 Subject: [PATCH 01/36] test --- .github/workflows/vendor_build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index 4877c29a4de..f824f26de98 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -18,7 +18,7 @@ jobs: name: core-cli.${{ matrix.os }}.amd64.${{ matrix.build_type }}.${{ matrix.compiler.cxx }}.standalone strategy: matrix: - os: ["ubuntu-22.04", "ubuntu-20.04"] + os: ["ubuntu-22.04", "ubuntu-20.04"] build_type: ["Debug", "Release"] compiler: - { cc: "gcc", cxx: "g++"} From 9caee56a442f29af2f36f1f245dd15fad35af6cb Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Mon, 30 Oct 2023 15:57:14 -0400 Subject: [PATCH 02/36] rm --- .github/workflows/vendor_build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index f824f26de98..4877c29a4de 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -18,7 +18,7 @@ jobs: name: core-cli.${{ matrix.os }}.amd64.${{ matrix.build_type }}.${{ matrix.compiler.cxx }}.standalone strategy: matrix: - os: ["ubuntu-22.04", "ubuntu-20.04"] + os: ["ubuntu-22.04", "ubuntu-20.04"] build_type: ["Debug", "Release"] compiler: - { cc: "gcc", cxx: "g++"} From a390c913c8b363de17ab230f3f8c836348357423 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Mon, 30 Oct 2023 16:06:31 -0400 Subject: [PATCH 03/36] upgrade googletest --- cmake/VowpalWabbitUtils.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/VowpalWabbitUtils.cmake b/cmake/VowpalWabbitUtils.cmake index 5a932db4a5b..aad187774e3 100644 --- a/cmake/VowpalWabbitUtils.cmake +++ b/cmake/VowpalWabbitUtils.cmake @@ -22,7 +22,7 @@ if(CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME) include(FetchContent) FetchContent_Declare( googletest - URL https://github.com/google/googletest/archive/refs/tags/release-1.11.0.zip + URL https://github.com/google/googletest/archive/refs/tags/release-1.12.0.zip ) # For Windows: Prevent overriding the parent project's compiler/linker settings set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) From 76c831f83fc28012759de7eb80f4a7a04150ffb4 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Mon, 30 Oct 2023 16:09:26 -0400 Subject: [PATCH 04/36] ts --- cmake/VowpalWabbitUtils.cmake | 1 + 1 file changed, 1 insertion(+) diff --git a/cmake/VowpalWabbitUtils.cmake b/cmake/VowpalWabbitUtils.cmake index aad187774e3..5b02b955489 100644 --- a/cmake/VowpalWabbitUtils.cmake +++ b/cmake/VowpalWabbitUtils.cmake @@ -23,6 +23,7 @@ if(CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME) FetchContent_Declare( googletest URL https://github.com/google/googletest/archive/refs/tags/release-1.12.0.zip + DOWNLOAD_EXTRACT_TIMESTAMP true ) # For Windows: Prevent overriding the parent project's compiler/linker settings set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) From 3a7230f42e4ec00e56065ca782b22298d6b9efa4 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Mon, 30 Oct 2023 16:16:18 -0400 Subject: [PATCH 05/36] Update VowpalWabbitUtils.cmake --- cmake/VowpalWabbitUtils.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/cmake/VowpalWabbitUtils.cmake b/cmake/VowpalWabbitUtils.cmake index 5b02b955489..5a932db4a5b 100644 --- a/cmake/VowpalWabbitUtils.cmake +++ b/cmake/VowpalWabbitUtils.cmake @@ -22,8 +22,7 @@ if(CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME) include(FetchContent) FetchContent_Declare( googletest - URL https://github.com/google/googletest/archive/refs/tags/release-1.12.0.zip - DOWNLOAD_EXTRACT_TIMESTAMP true + URL https://github.com/google/googletest/archive/refs/tags/release-1.11.0.zip ) # For Windows: Prevent overriding the parent project's compiler/linker settings set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) From 4c74a79e43003f7f3a820fc16290598a025f48b6 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Mon, 30 Oct 2023 16:33:13 -0400 Subject: [PATCH 06/36] libc++ --- .github/workflows/vendor_build.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index 4877c29a4de..54cd88a92e2 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -34,6 +34,7 @@ jobs: env: CC: ${{matrix.compiler.cc}} CXX: ${{matrix.compiler.cxx}} + CXXFLAGS: "-stdlib=libc++" run: > cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=${{matrix.build_type}} From efdab0e7d38b687863812ba1a754af8434a0434b Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Mon, 30 Oct 2023 16:38:08 -0400 Subject: [PATCH 07/36] only for clang --- .github/workflows/vendor_build.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index 54cd88a92e2..2d5e142a820 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -21,8 +21,8 @@ jobs: os: ["ubuntu-22.04", "ubuntu-20.04"] build_type: ["Debug", "Release"] compiler: - - { cc: "gcc", cxx: "g++"} - - { cc: "clang", cxx: "clang++"} + - { cc: "gcc", cxx: "g++", stdlib: "" } + - { cc: "clang", cxx: "clang++", stdlib: "-stdlib=libc++" } runs-on: ${{matrix.os}} steps: - uses: actions/checkout@v3 @@ -34,7 +34,7 @@ jobs: env: CC: ${{matrix.compiler.cc}} CXX: ${{matrix.compiler.cxx}} - CXXFLAGS: "-stdlib=libc++" + CXXFLAGS: ${{matrix.compiler.stdlib}} run: > cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=${{matrix.build_type}} From 5192ea38e5e9cb0202ce7ea2c081222d9a9dc029 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Mon, 30 Oct 2023 16:42:44 -0400 Subject: [PATCH 08/36] install clang builds --- .github/workflows/vendor_build.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index 2d5e142a820..1553fbdcf94 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -30,6 +30,9 @@ jobs: submodules: 'recursive' - name: Install requirements run: sudo apt-get install -y ninja-build libboost-test-dev + - name: Install libc++ and headers for Clang + if: matrix.compiler.cxx == 'clang++' # Only install for clang builds + run: sudo apt-get install -y libc++-dev libc++1 - name: Configure env: CC: ${{matrix.compiler.cc}} From a6065def9f513041bde022a4f7ee514f062281f5 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Mon, 30 Oct 2023 17:16:50 -0400 Subject: [PATCH 09/36] revert --- .github/workflows/vendor_build.yml | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index 1553fbdcf94..4877c29a4de 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -21,8 +21,8 @@ jobs: os: ["ubuntu-22.04", "ubuntu-20.04"] build_type: ["Debug", "Release"] compiler: - - { cc: "gcc", cxx: "g++", stdlib: "" } - - { cc: "clang", cxx: "clang++", stdlib: "-stdlib=libc++" } + - { cc: "gcc", cxx: "g++"} + - { cc: "clang", cxx: "clang++"} runs-on: ${{matrix.os}} steps: - uses: actions/checkout@v3 @@ -30,14 +30,10 @@ jobs: submodules: 'recursive' - name: Install requirements run: sudo apt-get install -y ninja-build libboost-test-dev - - name: Install libc++ and headers for Clang - if: matrix.compiler.cxx == 'clang++' # Only install for clang builds - run: sudo apt-get install -y libc++-dev libc++1 - name: Configure env: CC: ${{matrix.compiler.cc}} CXX: ${{matrix.compiler.cxx}} - CXXFLAGS: ${{matrix.compiler.stdlib}} run: > cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=${{matrix.build_type}} From 4c25e4985e0bd2a5ee2aab7e370fa705ebf2ad95 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Mon, 30 Oct 2023 17:17:12 -0400 Subject: [PATCH 10/36] remove clang --- .github/workflows/vendor_build.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index 4877c29a4de..0dcd74f0430 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -22,7 +22,6 @@ jobs: build_type: ["Debug", "Release"] compiler: - { cc: "gcc", cxx: "g++"} - - { cc: "clang", cxx: "clang++"} runs-on: ${{matrix.os}} steps: - uses: actions/checkout@v3 From 50871d0085cb4d5ad2b6059d7556a46331db0d2b Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Mon, 30 Oct 2023 17:34:05 -0400 Subject: [PATCH 11/36] try just 20 --- .github/workflows/vendor_build.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index 0dcd74f0430..9e6c1125d65 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -18,10 +18,11 @@ jobs: name: core-cli.${{ matrix.os }}.amd64.${{ matrix.build_type }}.${{ matrix.compiler.cxx }}.standalone strategy: matrix: - os: ["ubuntu-22.04", "ubuntu-20.04"] + os: ["ubuntu-20.04"] build_type: ["Debug", "Release"] compiler: - { cc: "gcc", cxx: "g++"} + - { cc: "clang", cxx: "clang++"} runs-on: ${{matrix.os}} steps: - uses: actions/checkout@v3 From ac75f490ed4346534380d665ceabe030f1dc8069 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Mon, 30 Oct 2023 17:47:45 -0400 Subject: [PATCH 12/36] try v4 --- .github/workflows/vendor_build.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index 9e6c1125d65..6c786004f10 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -18,14 +18,14 @@ jobs: name: core-cli.${{ matrix.os }}.amd64.${{ matrix.build_type }}.${{ matrix.compiler.cxx }}.standalone strategy: matrix: - os: ["ubuntu-20.04"] + os: ["ubuntu-22.04", "ubuntu-20.04"] build_type: ["Debug", "Release"] compiler: - { cc: "gcc", cxx: "g++"} - { cc: "clang", cxx: "clang++"} runs-on: ${{matrix.os}} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: 'recursive' - name: Install requirements From f4f6bb525ea1f7b2a2fca43ae1cf41b45415a252 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Mon, 30 Oct 2023 18:25:07 -0400 Subject: [PATCH 13/36] clang 15 --- .github/workflows/vendor_build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index 6c786004f10..96f051b36e0 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -22,7 +22,7 @@ jobs: build_type: ["Debug", "Release"] compiler: - { cc: "gcc", cxx: "g++"} - - { cc: "clang", cxx: "clang++"} + - { cc: "clang-15", cxx: "clang++-15"} runs-on: ${{matrix.os}} steps: - uses: actions/checkout@v4 From 480bb967e77215dcb49af2ab46bd38573cc05a84 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Mon, 30 Oct 2023 18:28:38 -0400 Subject: [PATCH 14/36] rm 20 --- .github/workflows/vendor_build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index 96f051b36e0..e5d979c73d3 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -18,7 +18,7 @@ jobs: name: core-cli.${{ matrix.os }}.amd64.${{ matrix.build_type }}.${{ matrix.compiler.cxx }}.standalone strategy: matrix: - os: ["ubuntu-22.04", "ubuntu-20.04"] + os: ["ubuntu-22.04"] build_type: ["Debug", "Release"] compiler: - { cc: "gcc", cxx: "g++"} From 5d9b6f188b59395f6fd4ef74c7987099964f02ec Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Mon, 30 Oct 2023 18:58:53 -0400 Subject: [PATCH 15/36] include --- vowpalwabbit/core/include/vw/core/named_labels.h | 1 + 1 file changed, 1 insertion(+) diff --git a/vowpalwabbit/core/include/vw/core/named_labels.h b/vowpalwabbit/core/include/vw/core/named_labels.h index 9118a3bcddd..b62bacf95de 100644 --- a/vowpalwabbit/core/include/vw/core/named_labels.h +++ b/vowpalwabbit/core/include/vw/core/named_labels.h @@ -9,6 +9,7 @@ #include #include #include +#include namespace VW { From e0c393cf6e972b5a1871083346eb523bb3b82dc4 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Mon, 30 Oct 2023 19:17:57 -0400 Subject: [PATCH 16/36] ignore unused for eigen --- ext_libs/ext_libs.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ext_libs/ext_libs.cmake b/ext_libs/ext_libs.cmake index ad2d0c27482..1dcba12e2e7 100644 --- a/ext_libs/ext_libs.cmake +++ b/ext_libs/ext_libs.cmake @@ -110,7 +110,8 @@ else() endif() add_library(eigen INTERFACE) target_include_directories(eigen SYSTEM INTERFACE $) -endif() + target_compile_options(eigen INTERFACE "-Wno-unused-but-set-variable") + endif() add_library(sse2neon INTERFACE) if(VW_SSE2NEON_SYS_DEP) From a57435b4bbbbe87701c3db37f5962bed90d2842a Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Mon, 30 Oct 2023 19:18:36 -0400 Subject: [PATCH 17/36] lint --- vowpalwabbit/core/include/vw/core/named_labels.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vowpalwabbit/core/include/vw/core/named_labels.h b/vowpalwabbit/core/include/vw/core/named_labels.h index b62bacf95de..294b2c5f34b 100644 --- a/vowpalwabbit/core/include/vw/core/named_labels.h +++ b/vowpalwabbit/core/include/vw/core/named_labels.h @@ -6,10 +6,10 @@ #include "vw/common/string_view.h" #include "vw/core/vw_fwd.h" +#include #include #include #include -#include namespace VW { From 901a19e1d39bc4dc8bd76ed381f7b4f77b8cd3b2 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Tue, 31 Oct 2023 12:06:49 -0400 Subject: [PATCH 18/36] only for clang/gnu --- ext_libs/ext_libs.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ext_libs/ext_libs.cmake b/ext_libs/ext_libs.cmake index 1dcba12e2e7..0619a452b7a 100644 --- a/ext_libs/ext_libs.cmake +++ b/ext_libs/ext_libs.cmake @@ -110,9 +110,12 @@ else() endif() add_library(eigen INTERFACE) target_include_directories(eigen SYSTEM INTERFACE $) - target_compile_options(eigen INTERFACE "-Wno-unused-but-set-variable") endif() +if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") + target_compile_options(eigen INTERFACE "-Wno-unused-but-set-variable") +endif() + add_library(sse2neon INTERFACE) if(VW_SSE2NEON_SYS_DEP) find_path(SSE2NEON_INCLUDE_DIRS "sse2neon/sse2neon.h") From 5ab0e3e1bac2f074fa5449528f408c1b4c68cbc5 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Tue, 31 Oct 2023 12:43:54 -0400 Subject: [PATCH 19/36] ignore eigen unused --- vowpalwabbit/core/CMakeLists.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/vowpalwabbit/core/CMakeLists.txt b/vowpalwabbit/core/CMakeLists.txt index 017bda23824..2fe867062f0 100644 --- a/vowpalwabbit/core/CMakeLists.txt +++ b/vowpalwabbit/core/CMakeLists.txt @@ -400,6 +400,10 @@ vw_add_library( ENABLE_INSTALL ) +if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") + target_compile_options(core PRIVATE -Wno-unused-but-set-variable) +endif() + if(VW_FEAT_LDA) target_link_libraries(vw_core PRIVATE $) endif() From c935ffe031cb47c7877a1974cb28b458aeb19824 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Tue, 31 Oct 2023 12:47:15 -0400 Subject: [PATCH 20/36] get target --- vowpalwabbit/core/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vowpalwabbit/core/CMakeLists.txt b/vowpalwabbit/core/CMakeLists.txt index 2fe867062f0..3234b90227d 100644 --- a/vowpalwabbit/core/CMakeLists.txt +++ b/vowpalwabbit/core/CMakeLists.txt @@ -401,7 +401,7 @@ vw_add_library( ) if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") - target_compile_options(core PRIVATE -Wno-unused-but-set-variable) + target_compile_options(vowpalwabbit_core PRIVATE -Wno-unused-but-set-variable) endif() if(VW_FEAT_LDA) From 59a721310bc2c1bbded6f7da54312709b7732ad0 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Tue, 31 Oct 2023 12:55:53 -0400 Subject: [PATCH 21/36] vw --- vowpalwabbit/core/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vowpalwabbit/core/CMakeLists.txt b/vowpalwabbit/core/CMakeLists.txt index 3234b90227d..7187dbb02d1 100644 --- a/vowpalwabbit/core/CMakeLists.txt +++ b/vowpalwabbit/core/CMakeLists.txt @@ -401,7 +401,7 @@ vw_add_library( ) if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") - target_compile_options(vowpalwabbit_core PRIVATE -Wno-unused-but-set-variable) + target_compile_options(vw_core PRIVATE -Wno-unused-but-set-variable) endif() if(VW_FEAT_LDA) From ac81fc055a76a2245a097919b4189a864ef3c838 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Tue, 31 Oct 2023 13:06:38 -0400 Subject: [PATCH 22/36] only for gf test --- ext_libs/ext_libs.cmake | 4 ---- vowpalwabbit/core/CMakeLists.txt | 4 ---- 2 files changed, 8 deletions(-) diff --git a/ext_libs/ext_libs.cmake b/ext_libs/ext_libs.cmake index 0619a452b7a..70afd10e1e7 100644 --- a/ext_libs/ext_libs.cmake +++ b/ext_libs/ext_libs.cmake @@ -112,10 +112,6 @@ else() target_include_directories(eigen SYSTEM INTERFACE $) endif() -if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") - target_compile_options(eigen INTERFACE "-Wno-unused-but-set-variable") -endif() - add_library(sse2neon INTERFACE) if(VW_SSE2NEON_SYS_DEP) find_path(SSE2NEON_INCLUDE_DIRS "sse2neon/sse2neon.h") diff --git a/vowpalwabbit/core/CMakeLists.txt b/vowpalwabbit/core/CMakeLists.txt index 7187dbb02d1..017bda23824 100644 --- a/vowpalwabbit/core/CMakeLists.txt +++ b/vowpalwabbit/core/CMakeLists.txt @@ -400,10 +400,6 @@ vw_add_library( ENABLE_INSTALL ) -if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") - target_compile_options(vw_core PRIVATE -Wno-unused-but-set-variable) -endif() - if(VW_FEAT_LDA) target_link_libraries(vw_core PRIVATE $) endif() From 84301aa47abc732f54798c338682257c71063c20 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Tue, 31 Oct 2023 13:08:09 -0400 Subject: [PATCH 23/36] fix --- ext_libs/ext_libs.cmake | 2 +- vowpalwabbit/core/CMakeLists.txt | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/ext_libs/ext_libs.cmake b/ext_libs/ext_libs.cmake index 70afd10e1e7..ad2d0c27482 100644 --- a/ext_libs/ext_libs.cmake +++ b/ext_libs/ext_libs.cmake @@ -110,7 +110,7 @@ else() endif() add_library(eigen INTERFACE) target_include_directories(eigen SYSTEM INTERFACE $) - endif() +endif() add_library(sse2neon INTERFACE) if(VW_SSE2NEON_SYS_DEP) diff --git a/vowpalwabbit/core/CMakeLists.txt b/vowpalwabbit/core/CMakeLists.txt index 017bda23824..fbf35cd21c5 100644 --- a/vowpalwabbit/core/CMakeLists.txt +++ b/vowpalwabbit/core/CMakeLists.txt @@ -526,6 +526,12 @@ vw_add_test_executable( SOURCES ${vw_core_test_sources} ) +if(VW_FEAT_CB_GRAPH_FEEDBACK) + if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") + target_compile_options(vw_core_test PRIVATE -Wno-unused-but-set-variable) + endif() +endif() + if(CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME AND BUILD_TESTING) # Tests are allowed to access private headers. target_include_directories(vw_core_test PRIVATE $) From a7909ee84326ddfb2546d18481c52015855e4112 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Tue, 31 Oct 2023 13:22:48 -0400 Subject: [PATCH 24/36] check test target built --- vowpalwabbit/core/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vowpalwabbit/core/CMakeLists.txt b/vowpalwabbit/core/CMakeLists.txt index fbf35cd21c5..182dd0f3fdb 100644 --- a/vowpalwabbit/core/CMakeLists.txt +++ b/vowpalwabbit/core/CMakeLists.txt @@ -526,7 +526,7 @@ vw_add_test_executable( SOURCES ${vw_core_test_sources} ) -if(VW_FEAT_CB_GRAPH_FEEDBACK) +if(TARGET vw_core_test AND VW_FEAT_CB_GRAPH_FEEDBACK) if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") target_compile_options(vw_core_test PRIVATE -Wno-unused-but-set-variable) endif() From 9f8db04d0e966d95e3c519d0f064ecfc582778ce Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Tue, 31 Oct 2023 13:33:23 -0400 Subject: [PATCH 25/36] try def clang --- .github/workflows/vendor_build.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index e5d979c73d3..6c786004f10 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -18,11 +18,11 @@ jobs: name: core-cli.${{ matrix.os }}.amd64.${{ matrix.build_type }}.${{ matrix.compiler.cxx }}.standalone strategy: matrix: - os: ["ubuntu-22.04"] + os: ["ubuntu-22.04", "ubuntu-20.04"] build_type: ["Debug", "Release"] compiler: - { cc: "gcc", cxx: "g++"} - - { cc: "clang-15", cxx: "clang++-15"} + - { cc: "clang", cxx: "clang++"} runs-on: ${{matrix.os}} steps: - uses: actions/checkout@v4 From bbecb811478c47ab859de6c408988dc77a3c0621 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Tue, 31 Oct 2023 13:48:34 -0400 Subject: [PATCH 26/36] update apt-get --- .github/workflows/vendor_build.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index 6c786004f10..dfe1a013edc 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -29,7 +29,9 @@ jobs: with: submodules: 'recursive' - name: Install requirements - run: sudo apt-get install -y ninja-build libboost-test-dev + run: | + sudo apt-get update + sudo apt-get install -y ninja-build libboost-test-dev - name: Configure env: CC: ${{matrix.compiler.cc}} From 7583dd69bb9d137b66b2b69b1719dd347c136c46 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Tue, 31 Oct 2023 14:01:04 -0400 Subject: [PATCH 27/36] libc++ for clang --- .github/workflows/vendor_build.yml | 36 +++++++++++++++++------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index dfe1a013edc..8c2280285fd 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -31,26 +31,30 @@ jobs: - name: Install requirements run: | sudo apt-get update - sudo apt-get install -y ninja-build libboost-test-dev + sudo apt-get install -y ninja-build libboost-test-dev libc++-dev libc++abi-dev - name: Configure env: CC: ${{matrix.compiler.cc}} CXX: ${{matrix.compiler.cxx}} - run: > - cmake -S . -B build -G Ninja - -DCMAKE_BUILD_TYPE=${{matrix.build_type}} - -DVW_FEAT_FLATBUFFERS=Off - -DVW_FEAT_CSV=On - -DVW_FEAT_CB_GRAPH_FEEDBACK=On - -DRAPIDJSON_SYS_DEP=Off - -DFMT_SYS_DEP=Off - -DSPDLOG_SYS_DEP=Off - -DVW_ZLIB_SYS_DEP=Off - -DVW_BOOST_MATH_SYS_DEP=Off - -DVW_INSTALL=Off - -DWARNINGS=On - -DWARNING_AS_ERROR=On - -DUSE_LATEST_STD=On + run: | + FLAGS="" + if [[ "${{ matrix.compiler.cxx }}" == "clang++" ]]; then + FLAGS="-DCMAKE_CXX_FLAGS=-stdlib=libc++" + fi + cmake -S . -B build -G Ninja $FLAGS \ + -DCMAKE_BUILD_TYPE=${{matrix.build_type}} \ + -DVW_FEAT_FLATBUFFERS=Off \ + -DVW_FEAT_CSV=On \ + -DVW_FEAT_CB_GRAPH_FEEDBACK=On \ + -DRAPIDJSON_SYS_DEP=Off \ + -DFMT_SYS_DEP=Off \ + -DSPDLOG_SYS_DEP=Off \ + -DVW_ZLIB_SYS_DEP=Off \ + -DVW_BOOST_MATH_SYS_DEP=Off \ + -DVW_INSTALL=Off \ + -DWARNINGS=On \ + -DWARNING_AS_ERROR=On \ + -DUSE_LATEST_STD=On - name: Build run: cmake --build build - name: Unit tests From 86a9097cf67d5ffd466bedccc00e306be18bbe2a Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Tue, 31 Oct 2023 14:12:30 -0400 Subject: [PATCH 28/36] clang15 for ubuntu 22 --- .github/workflows/vendor_build.yml | 53 ++++++++++++++++-------------- 1 file changed, 28 insertions(+), 25 deletions(-) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index 8c2280285fd..0041000ed86 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -21,40 +21,43 @@ jobs: os: ["ubuntu-22.04", "ubuntu-20.04"] build_type: ["Debug", "Release"] compiler: - - { cc: "gcc", cxx: "g++"} - - { cc: "clang", cxx: "clang++"} + - os: "ubuntu-20.04" + cc: "gcc" + cxx: "g++" + - os: "ubuntu-20.04" + cc: "clang" + cxx: "clang++" + - os: "ubuntu-22.04" + cc: "gcc" + cxx: "g++" + - os: "ubuntu-22.04" + cc: "clang-15" + cxx: "clang++-15" runs-on: ${{matrix.os}} steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v3 with: submodules: 'recursive' - name: Install requirements - run: | - sudo apt-get update - sudo apt-get install -y ninja-build libboost-test-dev libc++-dev libc++abi-dev + run: sudo apt-get install -y ninja-build libboost-test-dev - name: Configure env: CC: ${{matrix.compiler.cc}} CXX: ${{matrix.compiler.cxx}} - run: | - FLAGS="" - if [[ "${{ matrix.compiler.cxx }}" == "clang++" ]]; then - FLAGS="-DCMAKE_CXX_FLAGS=-stdlib=libc++" - fi - cmake -S . -B build -G Ninja $FLAGS \ - -DCMAKE_BUILD_TYPE=${{matrix.build_type}} \ - -DVW_FEAT_FLATBUFFERS=Off \ - -DVW_FEAT_CSV=On \ - -DVW_FEAT_CB_GRAPH_FEEDBACK=On \ - -DRAPIDJSON_SYS_DEP=Off \ - -DFMT_SYS_DEP=Off \ - -DSPDLOG_SYS_DEP=Off \ - -DVW_ZLIB_SYS_DEP=Off \ - -DVW_BOOST_MATH_SYS_DEP=Off \ - -DVW_INSTALL=Off \ - -DWARNINGS=On \ - -DWARNING_AS_ERROR=On \ - -DUSE_LATEST_STD=On + run: > + cmake -S . -B build -G Ninja + -DCMAKE_BUILD_TYPE=${{matrix.build_type}} + -DVW_FEAT_FLATBUFFERS=Off + -DVW_FEAT_CSV=On + -DVW_FEAT_CB_GRAPH_FEEDBACK=On + -DRAPIDJSON_SYS_DEP=Off + -DFMT_SYS_DEP=Off + -DSPDLOG_SYS_DEP=Off + -DVW_ZLIB_SYS_DEP=Off + -DVW_BOOST_MATH_SYS_DEP=Off + -DVW_INSTALL=Off + -DWARNINGS=On + -DWARNING_AS_ERROR=On - name: Build run: cmake --build build - name: Unit tests From ff8b1b4f7988b444d58323b0c4e8c731f425c7cb Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Tue, 31 Oct 2023 14:19:34 -0400 Subject: [PATCH 29/36] spell out matrix --- .github/workflows/vendor_build.yml | 48 ++++++++++++++++++++---------- 1 file changed, 33 insertions(+), 15 deletions(-) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index 0041000ed86..dcedfe0e0d0 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -18,21 +18,39 @@ jobs: name: core-cli.${{ matrix.os }}.amd64.${{ matrix.build_type }}.${{ matrix.compiler.cxx }}.standalone strategy: matrix: - os: ["ubuntu-22.04", "ubuntu-20.04"] - build_type: ["Debug", "Release"] - compiler: - - os: "ubuntu-20.04" - cc: "gcc" - cxx: "g++" - - os: "ubuntu-20.04" - cc: "clang" - cxx: "clang++" - - os: "ubuntu-22.04" - cc: "gcc" - cxx: "g++" - - os: "ubuntu-22.04" - cc: "clang-15" - cxx: "clang++-15" + include: + - os: "ubuntu-20.04" + build_type: "Debug" + cc: "gcc" + cxx: "g++" + - os: "ubuntu-20.04" + build_type: "Release" + cc: "gcc" + cxx: "g++" + - os: "ubuntu-20.04" + build_type: "Debug" + cc: "clang" + cxx: "clang++" + - os: "ubuntu-20.04" + build_type: "Release" + cc: "clang" + cxx: "clang++" + - os: "ubuntu-22.04" + build_type: "Debug" + cc: "gcc" + cxx: "g++" + - os: "ubuntu-22.04" + build_type: "Release" + cc: "gcc" + cxx: "g++" + - os: "ubuntu-22.04" + build_type: "Debug" + cc: "clang-15" + cxx: "clang++-15" + - os: "ubuntu-22.04" + build_type: "Release" + cc: "clang-15" + cxx: "clang++-15" runs-on: ${{matrix.os}} steps: - uses: actions/checkout@v3 From 02161bfb0e7ea1b761295060f6a8157a10c2c08a Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Tue, 31 Oct 2023 16:13:43 -0400 Subject: [PATCH 30/36] check g++ ve3rsion --- .github/workflows/vendor_build.yml | 40 ++++++------------------------ 1 file changed, 7 insertions(+), 33 deletions(-) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index dcedfe0e0d0..a2d72c3ef94 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -18,39 +18,11 @@ jobs: name: core-cli.${{ matrix.os }}.amd64.${{ matrix.build_type }}.${{ matrix.compiler.cxx }}.standalone strategy: matrix: - include: - - os: "ubuntu-20.04" - build_type: "Debug" - cc: "gcc" - cxx: "g++" - - os: "ubuntu-20.04" - build_type: "Release" - cc: "gcc" - cxx: "g++" - - os: "ubuntu-20.04" - build_type: "Debug" - cc: "clang" - cxx: "clang++" - - os: "ubuntu-20.04" - build_type: "Release" - cc: "clang" - cxx: "clang++" - - os: "ubuntu-22.04" - build_type: "Debug" - cc: "gcc" - cxx: "g++" - - os: "ubuntu-22.04" - build_type: "Release" - cc: "gcc" - cxx: "g++" - - os: "ubuntu-22.04" - build_type: "Debug" - cc: "clang-15" - cxx: "clang++-15" - - os: "ubuntu-22.04" - build_type: "Release" - cc: "clang-15" - cxx: "clang++-15" + os: ["ubuntu-22.04", "ubuntu-20.04"] + build_type: ["Debug", "Release"] + compiler: + - { cc: "gcc", cxx: "g++"} + - { cc: "clang", cxx: "clang++"} runs-on: ${{matrix.os}} steps: - uses: actions/checkout@v3 @@ -58,6 +30,8 @@ jobs: submodules: 'recursive' - name: Install requirements run: sudo apt-get install -y ninja-build libboost-test-dev + - name: Print g++ version + run: g++ --version - name: Configure env: CC: ${{matrix.compiler.cc}} From d3ff85aeb1086cf2cc7faed252975562ef7d9a75 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Tue, 31 Oct 2023 16:28:16 -0400 Subject: [PATCH 31/36] ep_dec fix --- .github/workflows/vendor_build.yml | 2 -- vowpalwabbit/core/CMakeLists.txt | 6 ------ .../core/include/vw/core/reductions/epsilon_decay.h | 3 +-- vowpalwabbit/core/src/reductions/epsilon_decay.cc | 6 ++---- vowpalwabbit/core/tests/epsilon_decay_test.cc | 4 ++-- 5 files changed, 5 insertions(+), 16 deletions(-) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index a2d72c3ef94..cafd3bfa827 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -30,8 +30,6 @@ jobs: submodules: 'recursive' - name: Install requirements run: sudo apt-get install -y ninja-build libboost-test-dev - - name: Print g++ version - run: g++ --version - name: Configure env: CC: ${{matrix.compiler.cc}} diff --git a/vowpalwabbit/core/CMakeLists.txt b/vowpalwabbit/core/CMakeLists.txt index 182dd0f3fdb..017bda23824 100644 --- a/vowpalwabbit/core/CMakeLists.txt +++ b/vowpalwabbit/core/CMakeLists.txt @@ -526,12 +526,6 @@ vw_add_test_executable( SOURCES ${vw_core_test_sources} ) -if(TARGET vw_core_test AND VW_FEAT_CB_GRAPH_FEEDBACK) - if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") - target_compile_options(vw_core_test PRIVATE -Wno-unused-but-set-variable) - endif() -endif() - if(CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME AND BUILD_TESTING) # Tests are allowed to access private headers. target_include_directories(vw_core_test PRIVATE $) diff --git a/vowpalwabbit/core/include/vw/core/reductions/epsilon_decay.h b/vowpalwabbit/core/include/vw/core/reductions/epsilon_decay.h index 30eec5aff54..23c3c6b2e93 100644 --- a/vowpalwabbit/core/include/vw/core/reductions/epsilon_decay.h +++ b/vowpalwabbit/core/include/vw/core/reductions/epsilon_decay.h @@ -27,7 +27,7 @@ class epsilon_decay_data { public: epsilon_decay_data(uint64_t model_count, uint64_t min_scope, double epsilon_decay_significance_level, - double epsilon_decay_estimator_decay, dense_parameters& weights, std::string epsilon_decay_audit_str, + dense_parameters& weights, std::string epsilon_decay_audit_str, bool constant_epsilon, uint32_t& feature_width, uint64_t _min_champ_examples, float initial_epsilon, uint64_t shift_model_bounds, bool reward_as_cost, double tol_x, bool is_brentq, bool predict_only_model, bool challenger_epsilon); @@ -44,7 +44,6 @@ class epsilon_decay_data uint64_t _model_count; uint64_t _min_scope; double _epsilon_decay_significance_level; // Confidence interval - double _epsilon_decay_estimator_decay; // Count decay time constant dense_parameters& _weights; std::string _epsilon_decay_audit_str; std::stringstream _audit_msg; diff --git a/vowpalwabbit/core/src/reductions/epsilon_decay.cc b/vowpalwabbit/core/src/reductions/epsilon_decay.cc index 817236e2b81..eba3618d7fc 100644 --- a/vowpalwabbit/core/src/reductions/epsilon_decay.cc +++ b/vowpalwabbit/core/src/reductions/epsilon_decay.cc @@ -36,14 +36,13 @@ float decayed_epsilon(float init_ep, uint64_t update_count) } epsilon_decay_data::epsilon_decay_data(uint64_t model_count, uint64_t min_scope, - double epsilon_decay_significance_level, double epsilon_decay_estimator_decay, dense_parameters& weights, + double epsilon_decay_significance_level, dense_parameters& weights, std::string epsilon_decay_audit_str, bool constant_epsilon, uint32_t& feature_width, uint64_t min_champ_examples, float initial_epsilon, uint64_t shift_model_bounds, bool reward_as_cost, double tol_x, bool is_brentq, bool predict_only_model, bool challenger_epsilon) : _model_count(model_count) , _min_scope(min_scope) , _epsilon_decay_significance_level(epsilon_decay_significance_level) - , _epsilon_decay_estimator_decay(epsilon_decay_estimator_decay) , _weights(weights) , _epsilon_decay_audit_str(std::move(epsilon_decay_audit_str)) , _constant_epsilon(constant_epsilon) @@ -345,7 +344,6 @@ std::shared_ptr VW::reductions::epsilon_decay_setup(VW::se uint64_t model_count; uint64_t min_scope; float epsilon_decay_significance_level; - float epsilon_decay_estimator_decay; std::string epsilon_decay_audit_str; bool constant_epsilon = false; uint64_t bonferroni_denominator; @@ -439,7 +437,7 @@ std::shared_ptr VW::reductions::epsilon_decay_setup(VW::se bool is_brentq = opt_func == "brentq"; auto data = VW::make_unique(model_count, min_scope, - epsilon_decay_significance_level, epsilon_decay_estimator_decay, all.weights.dense_weights, + epsilon_decay_significance_level, all.weights.dense_weights, epsilon_decay_audit_str, constant_epsilon, all.reduction_state.total_feature_width, min_champ_examples, initial_epsilon, shift_model_bounds, reward_as_cost, tol_x, is_brentq, predict_only_model, challenger_epsilon); diff --git a/vowpalwabbit/core/tests/epsilon_decay_test.cc b/vowpalwabbit/core/tests/epsilon_decay_test.cc index d5704ee8dde..bf37c6b139f 100644 --- a/vowpalwabbit/core/tests/epsilon_decay_test.cc +++ b/vowpalwabbit/core/tests/epsilon_decay_test.cc @@ -255,7 +255,7 @@ TEST(EpsilonDecay, ScoreBoundsUnit) uint32_t feature_width = 8; VW::dense_parameters dense_weights(num_models); epsilon_decay_data ep_data( - num_models, 100, .05, .1, dense_weights, "", false, feature_width, 0, 1.f, 0, false, 1e-6, "bisect", false, true); + num_models, 100, .05, dense_weights, "", false, feature_width, 0, 1.f, 0, false, 1e-6, "bisect", false, true); // Set update counts to fixed values with expected horizon bound violation size_t score_idx = 0; @@ -341,7 +341,7 @@ TEST(EpsilonDecay, HorizonBoundsUnit) uint32_t feature_width = 8; VW::dense_parameters dense_weights(num_models); epsilon_decay_data ep_data( - num_models, 100, .05, .1, dense_weights, "", false, feature_width, 0, 1.f, 0, false, 1e-6, "bisect", false, true); + num_models, 100, .05, dense_weights, "", false, feature_width, 0, 1.f, 0, false, 1e-6, "bisect", false, true); // Set update counts to fixed values with expected horizon bound violation size_t score_idx = 0; From 40c3b66a45ec1175d9298cd03e03bc002478294e Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Tue, 31 Oct 2023 16:38:18 -0400 Subject: [PATCH 32/36] lint --- .../include/vw/core/reductions/epsilon_decay.h | 7 +++---- vowpalwabbit/core/src/reductions/epsilon_decay.cc | 14 +++++++------- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/vowpalwabbit/core/include/vw/core/reductions/epsilon_decay.h b/vowpalwabbit/core/include/vw/core/reductions/epsilon_decay.h index 23c3c6b2e93..4accadb59f1 100644 --- a/vowpalwabbit/core/include/vw/core/reductions/epsilon_decay.h +++ b/vowpalwabbit/core/include/vw/core/reductions/epsilon_decay.h @@ -27,10 +27,9 @@ class epsilon_decay_data { public: epsilon_decay_data(uint64_t model_count, uint64_t min_scope, double epsilon_decay_significance_level, - dense_parameters& weights, std::string epsilon_decay_audit_str, - bool constant_epsilon, uint32_t& feature_width, uint64_t _min_champ_examples, float initial_epsilon, - uint64_t shift_model_bounds, bool reward_as_cost, double tol_x, bool is_brentq, bool predict_only_model, - bool challenger_epsilon); + dense_parameters& weights, std::string epsilon_decay_audit_str, bool constant_epsilon, uint32_t& feature_width, + uint64_t _min_champ_examples, float initial_epsilon, uint64_t shift_model_bounds, bool reward_as_cost, + double tol_x, bool is_brentq, bool predict_only_model, bool challenger_epsilon); void update_weights(float init_ep, VW::LEARNER::learner& base, VW::multi_ex& examples); void promote_model(int64_t model_ind, int64_t swap_dist); void rebalance_greater_models(int64_t model_ind, int64_t swap_dist, int64_t model_count); diff --git a/vowpalwabbit/core/src/reductions/epsilon_decay.cc b/vowpalwabbit/core/src/reductions/epsilon_decay.cc index eba3618d7fc..4c631978d2c 100644 --- a/vowpalwabbit/core/src/reductions/epsilon_decay.cc +++ b/vowpalwabbit/core/src/reductions/epsilon_decay.cc @@ -36,10 +36,10 @@ float decayed_epsilon(float init_ep, uint64_t update_count) } epsilon_decay_data::epsilon_decay_data(uint64_t model_count, uint64_t min_scope, - double epsilon_decay_significance_level, dense_parameters& weights, - std::string epsilon_decay_audit_str, bool constant_epsilon, uint32_t& feature_width, uint64_t min_champ_examples, - float initial_epsilon, uint64_t shift_model_bounds, bool reward_as_cost, double tol_x, bool is_brentq, - bool predict_only_model, bool challenger_epsilon) + double epsilon_decay_significance_level, dense_parameters& weights, std::string epsilon_decay_audit_str, + bool constant_epsilon, uint32_t& feature_width, uint64_t min_champ_examples, float initial_epsilon, + uint64_t shift_model_bounds, bool reward_as_cost, double tol_x, bool is_brentq, bool predict_only_model, + bool challenger_epsilon) : _model_count(model_count) , _min_scope(min_scope) , _epsilon_decay_significance_level(epsilon_decay_significance_level) @@ -437,9 +437,9 @@ std::shared_ptr VW::reductions::epsilon_decay_setup(VW::se bool is_brentq = opt_func == "brentq"; auto data = VW::make_unique(model_count, min_scope, - epsilon_decay_significance_level, all.weights.dense_weights, - epsilon_decay_audit_str, constant_epsilon, all.reduction_state.total_feature_width, min_champ_examples, - initial_epsilon, shift_model_bounds, reward_as_cost, tol_x, is_brentq, predict_only_model, challenger_epsilon); + epsilon_decay_significance_level, all.weights.dense_weights, epsilon_decay_audit_str, constant_epsilon, + all.reduction_state.total_feature_width, min_champ_examples, initial_epsilon, shift_model_bounds, reward_as_cost, + tol_x, is_brentq, predict_only_model, challenger_epsilon); // make sure we setup the rest of the stack with cleared interactions // to make sure there are not subtle bugs From bfc8e715327e67bcf7c38cb5b861652058a47efa Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Wed, 1 Nov 2023 13:47:20 -0400 Subject: [PATCH 33/36] try 17 std --- .github/workflows/vendor_build.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/vendor_build.yml b/.github/workflows/vendor_build.yml index cafd3bfa827..e15b5ae89ab 100644 --- a/.github/workflows/vendor_build.yml +++ b/.github/workflows/vendor_build.yml @@ -48,6 +48,7 @@ jobs: -DVW_INSTALL=Off -DWARNINGS=On -DWARNING_AS_ERROR=On + -DVW_CXX_STANDARD=17 - name: Build run: cmake --build build - name: Unit tests From ff9a12a8e496537a6de8df0151ed25168e6827aa Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Wed, 1 Nov 2023 14:17:07 -0400 Subject: [PATCH 34/36] rm named_labels include --- vowpalwabbit/core/include/vw/core/named_labels.h | 1 - 1 file changed, 1 deletion(-) diff --git a/vowpalwabbit/core/include/vw/core/named_labels.h b/vowpalwabbit/core/include/vw/core/named_labels.h index 294b2c5f34b..9118a3bcddd 100644 --- a/vowpalwabbit/core/include/vw/core/named_labels.h +++ b/vowpalwabbit/core/include/vw/core/named_labels.h @@ -6,7 +6,6 @@ #include "vw/common/string_view.h" #include "vw/core/vw_fwd.h" -#include #include #include #include From 00af24c0be38636be753825c1aab5894cbc16cb6 Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Wed, 1 Nov 2023 14:20:00 -0400 Subject: [PATCH 35/36] readd include --- .vscode/settings.json | 5 ++++- vowpalwabbit/core/include/vw/core/named_labels.h | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index f7a94e718de..a91a5210311 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -6,5 +6,8 @@ ], "url": "./test/vwtest.schema.json" } - ] + ], + "files.associations": { + "string": "cpp" + } } diff --git a/vowpalwabbit/core/include/vw/core/named_labels.h b/vowpalwabbit/core/include/vw/core/named_labels.h index 9118a3bcddd..294b2c5f34b 100644 --- a/vowpalwabbit/core/include/vw/core/named_labels.h +++ b/vowpalwabbit/core/include/vw/core/named_labels.h @@ -6,6 +6,7 @@ #include "vw/common/string_view.h" #include "vw/core/vw_fwd.h" +#include #include #include #include From 20145d84b1fc0216ca44f692f6fa457c334e7bac Mon Sep 17 00:00:00 2001 From: Griffin Bassman Date: Wed, 1 Nov 2023 15:34:19 -0400 Subject: [PATCH 36/36] revert settings.json --- .vscode/settings.json | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index a91a5210311..f7a94e718de 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -6,8 +6,5 @@ ], "url": "./test/vwtest.schema.json" } - ], - "files.associations": { - "string": "cpp" - } + ] }