diff --git a/Makefile b/Makefile index 95860af20..95999b237 100644 --- a/Makefile +++ b/Makefile @@ -261,13 +261,15 @@ test_c_api: test_c_api_rs test_c_api_c test_shortint_ci: install_rs_build_toolchain install_cargo_nextest BIG_TESTS_INSTANCE="$(BIG_TESTS_INSTANCE)" \ FAST_TESTS="$(FAST_TESTS)" \ - ./scripts/shortint-tests.sh --rust-toolchain $(CARGO_RS_BUILD_TOOLCHAIN) + ./scripts/shortint-tests.sh --rust-toolchain $(CARGO_RS_BUILD_TOOLCHAIN) \ + --cargo-profile "$(CARGO_PROFILE)" .PHONY: test_shortint_multi_bit_ci # Run the tests for shortint ci running only multibit tests test_shortint_multi_bit_ci: install_rs_build_toolchain install_cargo_nextest BIG_TESTS_INSTANCE="$(BIG_TESTS_INSTANCE)" \ FAST_TESTS="$(FAST_TESTS)" \ - ./scripts/shortint-tests.sh --rust-toolchain $(CARGO_RS_BUILD_TOOLCHAIN) --multi-bit + ./scripts/shortint-tests.sh --rust-toolchain $(CARGO_RS_BUILD_TOOLCHAIN) \ + --cargo-profile "$(CARGO_PROFILE)" --multi-bit .PHONY: test_shortint # Run all the tests for shortint test_shortint: install_rs_build_toolchain @@ -278,13 +280,15 @@ test_shortint: install_rs_build_toolchain test_integer_ci: install_rs_build_toolchain install_cargo_nextest BIG_TESTS_INSTANCE="$(BIG_TESTS_INSTANCE)" \ FAST_TESTS="$(FAST_TESTS)" \ - ./scripts/integer-tests.sh --rust-toolchain $(CARGO_RS_BUILD_TOOLCHAIN) + ./scripts/integer-tests.sh --rust-toolchain $(CARGO_RS_BUILD_TOOLCHAIN) \ + --cargo-profile "$(CARGO_PROFILE)" .PHONY: test_integer_multi_bit_ci # Run the tests for integer ci running only multibit tests test_integer_multi_bit_ci: install_rs_build_toolchain install_cargo_nextest BIG_TESTS_INSTANCE="$(BIG_TESTS_INSTANCE)" \ FAST_TESTS="$(FAST_TESTS)" \ - ./scripts/integer-tests.sh --rust-toolchain $(CARGO_RS_BUILD_TOOLCHAIN) --multi-bit + ./scripts/integer-tests.sh --rust-toolchain $(CARGO_RS_BUILD_TOOLCHAIN) \ + --cargo-profile "$(CARGO_PROFILE)" --multi-bit .PHONY: test_integer # Run all the tests for integer test_integer: install_rs_build_toolchain @@ -294,7 +298,8 @@ test_integer: install_rs_build_toolchain .PHONY: test_high_level_api # Run all the tests for high_level_api test_high_level_api: install_rs_build_toolchain RUSTFLAGS="$(RUSTFLAGS)" cargo $(CARGO_RS_BUILD_TOOLCHAIN) test --profile $(CARGO_PROFILE) \ - --features=$(TARGET_ARCH_FEATURE),boolean,shortint,integer,internal-keycache -p tfhe -- high_level_api:: + --features=$(TARGET_ARCH_FEATURE),boolean,shortint,integer,internal-keycache -p tfhe \ + -- high_level_api:: .PHONY: test_user_doc # Run tests from the .md documentation test_user_doc: install_rs_build_toolchain diff --git a/scripts/integer-tests.sh b/scripts/integer-tests.sh index bf8e40b22..21aba8018 100755 --- a/scripts/integer-tests.sh +++ b/scripts/integer-tests.sh @@ -8,12 +8,14 @@ function usage() { echo "--help Print this message" echo "--rust-toolchain The toolchain to run the tests with default: stable" echo "--multi-bit Run multi-bit tests only: default off" + echo "--cargo-profile The cargo profile used to build tests" echo } RUST_TOOLCHAIN="+stable" multi_bit="" not_multi_bit="_multi_bit" +cargo_profile="release" while [ -n "$1" ] do @@ -33,6 +35,11 @@ do not_multi_bit="" ;; + "--cargo-profile" ) + shift + cargo_profile="$1" + ;; + *) echo "Unknown param : $1" exit 1 @@ -94,7 +101,7 @@ and not test(/.*default_add_sequence_multi_thread_param_message_3_carry_3_ks_pbs cargo "${RUST_TOOLCHAIN}" nextest run \ --tests \ - --release \ + --cargo-profile "${cargo_profile}" \ --package tfhe \ --profile ci \ --features="${ARCH_FEATURE}",integer,internal-keycache \ @@ -103,11 +110,11 @@ and not test(/.*default_add_sequence_multi_thread_param_message_3_carry_3_ks_pbs if [[ "${multi_bit}" == "" ]]; then cargo "${RUST_TOOLCHAIN}" test \ - --release \ + --profile "${cargo_profile}" \ --package tfhe \ --features="${ARCH_FEATURE}",integer,internal-keycache \ --doc \ - integer:: + -- integer:: fi else if [[ "${FAST_TESTS}" != TRUE ]]; then @@ -138,7 +145,7 @@ and not test(/.*default_add_sequence_multi_thread_param_message_3_carry_3_ks_pbs num_threads=$((num_cpu_threads * 2 / 3)) cargo "${RUST_TOOLCHAIN}" nextest run \ --tests \ - --release \ + --cargo-profile "${cargo_profile}" \ --package tfhe \ --profile ci \ --features="${ARCH_FEATURE}",integer,internal-keycache \ @@ -147,11 +154,11 @@ and not test(/.*default_add_sequence_multi_thread_param_message_3_carry_3_ks_pbs if [[ "${multi_bit}" == "" ]]; then cargo "${RUST_TOOLCHAIN}" test \ - --release \ + --profile "${cargo_profile}" \ --package tfhe \ --features="${ARCH_FEATURE}",integer,internal-keycache \ --doc \ - integer:: -- --test-threads="$(${nproc_bin})" + -- --test-threads="$(${nproc_bin})" integer:: fi fi diff --git a/scripts/shortint-tests.sh b/scripts/shortint-tests.sh index be7e21026..e87f3f915 100755 --- a/scripts/shortint-tests.sh +++ b/scripts/shortint-tests.sh @@ -8,11 +8,13 @@ function usage() { echo "--help Print this message" echo "--rust-toolchain The toolchain to run the tests with default: stable" echo "--multi-bit Run multi-bit tests only: default off" + echo "--cargo-profile The cargo profile used to build tests" echo } RUST_TOOLCHAIN="+stable" multi_bit="" +cargo_profile="release" while [ -n "$1" ] do @@ -31,6 +33,11 @@ do multi_bit="_multi_bit" ;; + "--cargo-profile" ) + shift + cargo_profile="$1" + ;; + *) echo "Unknown param : $1" exit 1 @@ -102,7 +109,7 @@ and not test(~smart_add_and_mul)""" # This test is too slow # Run tests only no examples or benches with small params and more threads cargo "${RUST_TOOLCHAIN}" nextest run \ --tests \ - --release \ + --cargo-profile "${cargo_profile}" \ --package tfhe \ --profile ci \ --features="${ARCH_FEATURE}",shortint,internal-keycache \ @@ -119,7 +126,7 @@ and not test(~smart_add_and_mul)""" # Run tests only no examples or benches with big params and less threads cargo "${RUST_TOOLCHAIN}" nextest run \ --tests \ - --release \ + --cargo-profile "${cargo_profile}" \ --package tfhe \ --profile ci \ --features="${ARCH_FEATURE}",shortint,internal-keycache \ @@ -128,11 +135,11 @@ and not test(~smart_add_and_mul)""" if [[ "${multi_bit}" == "" ]]; then cargo "${RUST_TOOLCHAIN}" test \ - --release \ + --profile "${cargo_profile}" \ --package tfhe \ --features="${ARCH_FEATURE}",shortint,internal-keycache \ --doc \ - shortint:: + -- shortint:: fi fi else @@ -167,7 +174,7 @@ and not test(~smart_add_and_mul)""" # This test is too slow # Run tests only no examples or benches with small params and more threads cargo "${RUST_TOOLCHAIN}" nextest run \ --tests \ - --release \ + --cargo-profile "${cargo_profile}" \ --package tfhe \ --profile ci \ --features="${ARCH_FEATURE}",shortint,internal-keycache \ @@ -176,11 +183,11 @@ and not test(~smart_add_and_mul)""" # This test is too slow if [[ "${multi_bit}" == "" ]]; then cargo "${RUST_TOOLCHAIN}" test \ - --release \ + --profile "${cargo_profile}" \ --package tfhe \ --features="${ARCH_FEATURE}",shortint,internal-keycache \ --doc \ - shortint:: -- --test-threads="$(${nproc_bin})" + -- --test-threads="$(${nproc_bin})" shortint:: fi fi