Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Speed up test times 🚀 #1158

Open
wd60622 opened this issue Nov 3, 2024 · 3 comments
Open

Speed up test times 🚀 #1158

wd60622 opened this issue Nov 3, 2024 · 3 comments
Labels

Comments

@wd60622
Copy link
Contributor

wd60622 commented Nov 3, 2024

If you are motivated to help speed up some tests, we would appreciate it!

Here are some of the slowest test times:

(10 minutes 16 seconds) test (3.10, false, tests/mmm --ignore tests/mmm/test_tvp.py --ignore tests/mmm/test_budget_optimi...
============================= slowest 50 durations =============================
27.33s call     tests/mmm/test_mmm.py::TestMMM::test_allocate_budget_to_maximize_response
19.23s call     tests/mmm/test_mmm.py::TestMMM::test_init[no_time_varying_media-time_varying_intercept-no_yearly_seasonality-single_channel-no_control-adstock_max_lag=1]
17.36s call     tests/mmm/test_lift_test.py::test_works_with_negative_delta
13.98s call     tests/mmm/test_base.py::test_calling_fit_result_before_fit_raises_error
10.83s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-delayed]
9.60s call     tests/mmm/components/test_adstock.py::test_apply[x1-channel-delayed]
9.08s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-weibull_pdf]
7.82s call     tests/mmm/test_mmm.py::TestMMM::test_channel_contributions_forward_pass_is_consistent
7.60s call     tests/mmm/test_linear_trend.py::test_apply[with_intercept]
7.56s call     tests/mmm/test_utility.py::test_mean_tightness_score
7.32s call     tests/mmm/test_linear_trend.py::test_apply_additional_dims[scalar]
7.13s call     tests/mmm/test_media_transformation.py::test_apply_media_transformation[scalar-vector]
6.47s call     tests/mmm/test_utility.py::test_conditional_value_at_risk
6.16s call     tests/mmm/test_media_transformation.py::test_apply_media_transformation[scalar-scalar]
5.89s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-no_yearly_seasonality-single_channel-no_control-adstock_max_lag=1]
4.60s call     tests/mmm/test_media_transformation.py::test_apply_media_transformation[vector-scalar]
3.95s call     tests/mmm/components/test_adstock.py::test_adstock_sample_curve[weibull_pdf]
3.89s call     tests/mmm/test_mmm.py::test_save_load_with_tvp[True-True]
3.87s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-weibull_cdf]
3.77s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-geometric]
3.76s call     tests/mmm/test_fourier.py::test_sample_curve
3.61s setup    tests/mmm/test_mmm.py::test_save_load_with_media_transformation
3.39s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-no_yearly_seasonality-single_channel-one_control-adstock_max_lag=1]
3.38s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-no_time_varying_intercept-no_yearly_seasonality-single_channel-no_control-adstock_max_lag=1]
3.29s call     tests/mmm/test_mmm.py::test_save_load_with_tvp[False-True]
3.26s call     tests/mmm/test_utility.py::test_covariance_matrix_matches_numpy[data0]
3.07s call     tests/mmm/test_mmm.py::test_save_load_with_tvp[True-False]
2.79s call     tests/mmm/test_mmm.py::TestMMM::test_save_load_with_not_serializable_model_config
2.66s call     tests/mmm/test_utility.py::test_sharpe_ratio
2.65s call     tests/mmm/test_mmm.py::test_channel_contributions_forward_pass_time_varying_media
2.56s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-single_channel-one_control-adstock_max_lag=1]
2.50s call     tests/mmm/test_mmm.py::test_plotting_media_transform_workflow[adstock]
2.49s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-no_yearly_seasonality-single_channel-no_control-adstock_max_lag=4]
2.35s setup    tests/mmm/test_mmm.py::test_plotting_media_transform_workflow[adstock]
2.35s call     tests/mmm/test_fourier.py::test_fourier_modes_shape[periods2-1-expected_shape2]
2.34s call     tests/mmm/test_fourier.py::test_plot_curve
2.27s call     tests/mmm/test_mmm.py::TestMMM::test_init[no_time_varying_media-no_time_varying_intercept-yearly_seasonality-single_channel-no_control-adstock_max_lag=1]
2.26s call     tests/mmm/test_mmm.py::TestMMM::test_init[no_time_varying_media-time_varying_intercept-no_yearly_seasonality-single_channel-one_control-adstock_max_lag=1]
2.17s call     tests/mmm/test_mmm.py::TestMMM::test_init[no_time_varying_media-time_varying_intercept-yearly_seasonality-single_channel-one_control-adstock_max_lag=1]
2.16s call     tests/mmm/test_utility.py::test_tail_distance[100-30-100-50-greater]
2.14s call     tests/mmm/components/test_adstock.py::test_apply[x1-channel-weibull_pdf]
2.10s call     tests/mmm/test_mmm.py::TestMMM::test_init[no_time_varying_media-time_varying_intercept-no_yearly_seasonality-single_channel-no_control-adstock_max_lag=4]
2.08s call     tests/mmm/test_fourier.py::test_additional_dimension
2.07s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-multiple_channel-one_control-adstock_max_lag=4]
2.07s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-multiple_channel-no_control-adstock_max_lag=4]
2.04s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-no_time_varying_intercept-yearly_seasonality-single_channel-one_control-adstock_max_lag=1]
2.01s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-single_channel-two_controls-adstock_max_lag=1]
1.99s call     tests/mmm/components/test_saturation.py::test_apply_method[x0-None-logistic]
1.99s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-single_channel-no_control-adstock_max_lag=4]
1.95s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-no_yearly_seasonality-single_channel-two_controls-adstock_max_lag=4]
================= 837 passed, 51 warnings in 518.50s (0:08:38) =================
(7 minutes 24 seconds) test (3.10, false, tests/mmm/test_tvp.py tests/mmm/test_budget_optimizer.py tests/mmm/test_hsgp.p...
============================= slowest 50 durations =============================
70.03s call     tests/mmm/test_tvp.py::test_time_varying_prior
34.73s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget[default_minimizer_kwargs]
31.07s call     tests/mmm/test_tvp.py::test_multidimensional
17.30s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_adstock_vectorized[PDF]
14.13s call     tests/mmm/test_hsgp.py::test_curve_workflow[HSGP]
13.23s call     tests/mmm/test_hsgp.py::test_curve_workflow[HSGPPeriodic]
9.33s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_adstock_vectorized[CDF]
9.23s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_vectorized[After]
8.69s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x0-1-1-4]
6.67s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x2-0.7-1-100]
6.63s call     tests/mmm/test_hsgp.py::test_higher_dimension_hsgp
5.66s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_geometric_adstock_vectorized_logistic_saturation
4.11s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_vectorized[After]
3.97s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x1-0.3-0.5-10]
3.94s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x6-0.8-1-50]
3.91s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x0-1-1-4]
3.65s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_parameterization_transformation[x0-20-0.5]
3.60s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x2-0.7-1-100]
3.57s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_x_zero[After]
3.24s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_parameterization_transformation[x1-100-0.5]
2.92s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x1-0.7-100]
2.48s call     tests/mmm/test_transformers.py::test_batched_convolution[ndarray-0-After]
2.24s call     tests/mmm/test_tvp.py::test_calling_without_default_args
2.23s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_vectorized[Overlap]
2.10s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x5-0.8-50]
2.08s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_hill_sigmoid_monotonicity[1-1-0]
1.95s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_vectorized[Before]
1.83s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x1-0.3-0.5-10]
1.81s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x0-0.5-1.0]
1.78s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_output_type[After]
1.77s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x1-0.2-19.0]
1.77s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x6-0.8-1-50]
1.76s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_inverse_scaled_logistic_saturation_min_max_value
1.71s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget_infeasible_constraints[100-budget_bounds0-parameters0-custom_constraints0]
1.71s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget[custom_minimizer_kwargs]
1.71s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_vectorized[Overlap]
1.71s call     tests/mmm/test_transformers.py::test_batched_convolution[TensorVariable--1-After]
1.70s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_bad_alpha[less_than_zero_1]
1.69s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_delayed_adstock_vectorized_logistic_saturation
1.63s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x3-0.5-7]
1.63s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x0-0.3-10]
1.46s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget_zero_total[0-budget_bounds0-parameters0-expected_optimal0-2.38e-10]
1.46s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget_custom_minimize_args
1.43s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_baselined_range[x2-10-0.001-0.01]
1.42s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_vectorized[Before]
1.42s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x4-0.001-0.01]
1.37s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_hill_sigmoid_sigma_upper_bound[5-2-0.5-1]
1.30s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x4-0.5-0.8-7]
1.23s call     tests/mmm/test_hsgp.py::test_hsgp_class_method_ls_upper_changes_distribution
1.18s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x3-0.2-0.2-5]
================= 198 passed, 3 warnings in 341.10s (0:05:41) ==================
(8 minutes 48 seconds) test (3.10, false, tests/clv)
============================= slowest 50 durations =============================
42.94s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_purchases[1]
40.36s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_covariate_model_convergence
24.90s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_expected_purchases[1]
23.02s call     tests/clv/test_utils.py::TestCustomerLifetimeValue::test_customer_lifetime_value_as_gg_method[fitted_pnbd]
20.01s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_distribution_customer_churn_time
17.01s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_posterior_distributions[map]
16.06s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModel::test_spend[True]
13.96s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_logp
12.51s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value3-0.3-p3-10-logp3]
12.35s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_logp_matches_lifetimes[batch_shape0]
11.57s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_logp_matches_lifetimes[batch_shape1]
10.92s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_expectation_method
9.83s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value4-0.55-10.58-0.61-beta4-12]
9.52s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_distribution_method
9.31s call     tests/clv/models/test_basic.py::TestCLVModel::test_fit_demz
9.05s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_distribution_new_customer
8.62s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_save_load
8.57s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_logp_matches_excel
7.42s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_invalid_value_logp
6.21s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value0-0.4-0.15-10--8.39147106159807]
5.63s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_probability_alive[6]
5.63s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_probability_alive[3]
5.62s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_probability_alive[1]
5.43s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value1-lam1-0.15-10-logp1]
4.70s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value1-r1-10.58-0.61-11.67-12]
4.61s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_purchases[3]
4.57s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value2-lam2-0.15-10-logp2]
4.51s call     tests/clv/test_distributions.py::TestContContract::test_continuous_contractual[value3-0.3-p3-10-logp3]
4.35s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_purchases[6]
4.18s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModel::test_spend[False]
3.47s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_distribution_new_customer
2.88s call     tests/clv/models/test_modified_beta_geo.py::TestModifiedBetaGeoModel::test_numerically_stable_logp[0-0--0.41792826]
2.47s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value3-0.55-11.67-0.61-10.58-T3]
2.29s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value0-0.55-10.58-0.61-11.67-12]
2.27s call     tests/clv/test_distributions.py::TestContContract::test_continuous_contractual[value1-lam1-0.15-10-logp1]
1.83s call     tests/clv/test_plotting.py::test_plot_expected_purchases_ppc[prior-10-100-None]
1.83s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_posterior_distributions[mcmc]
1.81s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_extract_predictive_covariates
1.71s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value2-r2-10.58-s2-11.67-12]
1.50s call     tests/clv/test_distributions.py::TestContContract::test_continuous_contractual[value0-0.3-0.15-10--10.45705972]
1.36s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModelIndividual::test_save_load
1.32s call     tests/clv/test_utils.py::TestCustomerLifetimeValue::test_clv_after_thinning[fitted_pnbd]
1.32s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_fit_result_without_fit
1.28s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_beta_geo_beta_binom_sample_prior[None-None-gamma_size3-delta_size3-beta_geo_beta_binom_size3-expected_size3]
1.24s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_beta_geo_beta_binom_sample_prior[None-None-None-None-beta_geo_beta_binom_size4-expected_size4]
1.15s call     tests/clv/models/test_modified_beta_geo.py::TestModifiedBetaGeoModel::test_numerically_stable_logp[200-38-100.7869]
0.98s setup    tests/clv/test_plotting.py::test_plot_expected_purchases_ppc_exceptions
0.98s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_expected_purchase_probability[2-2]
0.95s call     tests/clv/test_plotting.py::test_plot_expected_purchases_ppc[posterior-20-50-subplot1]
0.91s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_expected_probability_alive
=========== 242 passed, 12 skipped, 11 warnings in 420.98s (0:07:00) ===========
(5 minutes 3 seconds) test (3.10, false, --ignore tests/mmm --ignore tests/clv)
============================= slowest 50 durations =============================
83.11s call     tests/test_mlflow.py::test_autolog_mmm
16.37s call     tests/test_mlflow.py::test_file_system_uri_supported
11.70s call     tests/test_model_builder.py::test_second_fit
10.01s call     tests/test_mlflow.py::test_autolog_pymc_model[nutpie]
9.42s setup    tests/test_model_builder.py::test_save_input_params
7.90s call     tests/test_model_builder.py::test_fit_random_seed_reproducibility[rng]
6.07s call     tests/test_model_builder.py::test_fit_sampler_config_seed_reproducibility
6.04s call     tests/test_model_builder.py::test_fit_random_seed_reproducibility[int]
5.82s setup    tests/customer_choice/test_mv_its.py::test_MVITS_saturated[plot_fit]
5.39s call     tests/test_model_builder.py::test_fit_no_t
5.24s call     tests/test_model_builder.py::test_empty_sampler_config_fit
4.98s call     tests/test_model_builder.py::test_fit_after_prior_keeps_prior
4.85s call     tests/test_mlflow.py::test_log_data_no_data
4.12s call     tests/test_mlflow.py::test_autolog_pymc_model[blackjax]
3.39s call     tests/test_mlflow.py::test_autolog_pymc_model[numpyro]
2.69s call     tests/test_mlflow.py::test_autolog_pymc_model[pymc]
1.77s call     tests/customer_choice/test_mv_its.py::test_MVITS_unsaturated[plot_fit-unsaturated_model_bad]
1.09s call     tests/test_model_builder.py::test_save_load
0.70s call     tests/test_prior.py::test_censored_sample_prior
0.68s setup    tests/test_mlflow.py::test_multi_likelihood_type
0.66s call     tests/test_prior.py::test_custom_transform_comes_first
0.65s call     tests/test_plot.py::test_plot_functions[legend-same_axes-plot_samples]
0.64s call     tests/test_prior.py::test_custom_transform
0.55s call     tests/customer_choice/test_mv_its.py::test_MVITS_unsaturated[plot_fit-unsaturated_model_good]
0.53s call     tests/customer_choice/test_mv_its.py::test_save_load
0.35s call     tests/test_plot.py::test_plot_curve
0.35s call     tests/test_plot.py::test_plot_curve_custom_colors
0.34s call     tests/test_plot.py::test_plot_curve_custom_sel_to_string
0.32s call     tests/test_plot.py::test_plot_functions[legend-different_axes-plot_samples]
0.31s call     tests/test_plot.py::test_plot_functions[no_legend-different_axes-plot_samples]
0.18s call     tests/test_plot.py::test_plot_curve_supply_axes_same_axes
0.15s call     tests/test_model_builder.py::test_sample_xxx_predictive_keeps_second[prior_predictive]
0.15s call     tests/test_plot.py::test_plot_functions[no_legend-same_axes-plot_samples]
0.12s call     tests/test_model_builder.py::test_sample_xxx_predictive_keeps_second[posterior_predictive]
0.12s call     tests/test_model_builder.py::test_fit
0.10s call     tests/test_model_builder.py::test_insufficient_attrs
0.10s call     tests/test_model_builder.py::test_incorrect_set_idata_attrs_override
0.08s call     tests/customer_choice/test_mv_its.py::test_MVITS_saturated[plot_fit]
0.08s call     tests/test_model_builder.py::test_fit_sampler_config_with_rng_fails
0.08s call     tests/test_plot.py::test_plot_functions[legend-different_axes-plot_hdi]
0.08s call     tests/test_prior.py::test_create_variable
0.08s call     tests/test_plot.py::test_plot_functions[no_legend-different_axes-plot_hdi]
0.07s call     tests/test_prior.py::test_create_variable_multiple_times
0.07s call     tests/test_model_builder.py::test_sample_posterior_predictive[True]
0.06s call     tests/test_model_builder.py::test_graphviz
0.06s call     tests/customer_choice/test_mv_its.py::test_plot_data
0.06s call     tests/customer_choice/test_mv_its.py::test_MVITS_unsaturated[plot_counterfactual-unsaturated_model_good]
0.06s call     tests/customer_choice/test_mv_its.py::test_MVITS_unsaturated[plot_counterfactual-unsaturated_model_bad]
0.06s call     tests/test_model_builder.py::test_predict
0.06s call     tests/customer_choice/test_mv_its.py::test_MVITS_saturated[plot_counterfactual]
================= 185 passed, 21 warnings in 202.64s (0:03:22) =================
(12 minutes 23 seconds) test (3.12, true, tests/mmm --ignore tests/mmm/test_tvp.py --ignore tests/mmm/test_budget_optimiz...
============================= slowest 50 durations =============================
29.77s call     tests/mmm/test_mmm.py::TestMMM::test_allocate_budget_to_maximize_response
20.43s call     tests/mmm/test_mmm.py::TestMMM::test_init[no_time_varying_media-time_varying_intercept-no_yearly_seasonality-single_channel-no_control-adstock_max_lag=1]
18.65s call     tests/mmm/test_lift_test.py::test_works_with_negative_delta
18.57s call     tests/mmm/test_base.py::test_calling_fit_result_before_fit_raises_error
11.88s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-delayed]
10.08s call     tests/mmm/components/test_adstock.py::test_apply[x1-channel-delayed]
9.62s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-weibull_pdf]
8.04s call     tests/mmm/test_utility.py::test_mean_tightness_score
7.90s call     tests/mmm/test_linear_trend.py::test_apply[with_intercept]
7.67s call     tests/mmm/test_linear_trend.py::test_apply_additional_dims[scalar]
7.47s call     tests/mmm/test_media_transformation.py::test_apply_media_transformation[scalar-vector]
7.24s call     tests/mmm/test_mmm.py::TestMMM::test_channel_contributions_forward_pass_is_consistent
6.86s call     tests/mmm/test_utility.py::test_conditional_value_at_risk
6.59s call     tests/mmm/test_media_transformation.py::test_apply_media_transformation[scalar-scalar]
6.59s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-no_yearly_seasonality-single_channel-no_control-adstock_max_lag=1]
4.91s call     tests/mmm/test_media_transformation.py::test_apply_media_transformation[vector-scalar]
4.83s call     tests/mmm/test_mmm.py::test_save_load_with_tvp[True-True]
4.29s call     tests/mmm/components/test_adstock.py::test_adstock_sample_curve[weibull_pdf]
4.22s setup    tests/mmm/test_mmm.py::test_save_load_with_media_transformation
4.09s call     tests/mmm/test_mmm.py::test_save_load_with_tvp[True-False]
4.01s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-weibull_cdf]
3.98s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-no_time_varying_intercept-no_yearly_seasonality-single_channel-no_control-adstock_max_lag=1]
3.96s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-geometric]
3.88s call     tests/mmm/test_fourier.py::test_sample_curve
3.74s call     tests/mmm/test_mmm.py::test_save_load_with_tvp[False-True]
3.59s call     tests/mmm/test_mmm.py::test_channel_contributions_forward_pass_time_varying_media
3.43s call     tests/mmm/test_utility.py::test_covariance_matrix_matches_numpy[data0]
3.43s call     tests/mmm/test_mmm.py::TestMMM::test_save_load_with_not_serializable_model_config
3.16s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-no_yearly_seasonality-single_channel-one_control-adstock_max_lag=4]
2.91s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-single_channel-one_control-adstock_max_lag=1]
2.84s call     tests/mmm/test_mmm.py::test_plotting_media_transform_workflow[adstock]
2.83s call     tests/mmm/test_utility.py::test_sharpe_ratio
2.80s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-no_yearly_seasonality-single_channel-one_control-adstock_max_lag=1]
2.68s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-no_yearly_seasonality-single_channel-no_control-adstock_max_lag=4]
2.67s setup    tests/mmm/test_mmm.py::test_plotting_media_transform_workflow[adstock]
2.53s call     tests/mmm/test_utility.py::test_tail_distance[100-30-100-50-greater]
2.47s call     tests/mmm/test_fourier.py::test_plot_curve
2.47s call     tests/mmm/test_mmm.py::TestMMM::test_init[no_time_varying_media-time_varying_intercept-yearly_seasonality-single_channel-one_control-adstock_max_lag=1]
2.42s call     tests/mmm/test_fourier.py::test_fourier_modes_shape[periods2-1-expected_shape2]
2.41s call     tests/mmm/test_mmm.py::TestMMM::test_init[no_time_varying_media-no_time_varying_intercept-yearly_seasonality-single_channel-no_control-adstock_max_lag=1]
2.40s call     tests/mmm/test_mmm.py::TestMMM::test_init[no_time_varying_media-time_varying_intercept-no_yearly_seasonality-single_channel-one_control-adstock_max_lag=4]
2.40s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-multiple_channel-two_controls-adstock_max_lag=4]
2.39s setup    tests/mmm/test_plotting.py::TestBasePlotting::test_plots[with_controls-default_transform-seed_0-_plot_group_predictive-kwargs_plot0]
2.33s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-no_time_varying_intercept-yearly_seasonality-single_channel-one_control-adstock_max_lag=1]
2.31s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-single_channel-no_control-adstock_max_lag=4]
2.30s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-multiple_channel-no_control-adstock_max_lag=4]
2.30s call     tests/mmm/test_mmm.py::TestMMM::test_init[no_time_varying_media-time_varying_intercept-no_yearly_seasonality-single_channel-one_control-adstock_max_lag=1]
2.30s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-single_channel-two_controls-adstock_max_lag=1]
2.29s call     tests/mmm/components/test_adstock.py::test_apply[x1-channel-weibull_pdf]
2.24s call     tests/mmm/test_mmm.py::test_new_data_sample_posterior_predictive_method[True-True-new_dates0-mmm_fitted_with_fourier_features]
================= 837 passed, 56 warnings in 605.31s (0:10:05) =================
(8 minutes 4 seconds) test (3.12, true, tests/mmm/test_tvp.py tests/mmm/test_budget_optimizer.py tests/mmm/test_hsgp.py...
============================= slowest 50 durations =============================
71.97s call     tests/mmm/test_tvp.py::test_time_varying_prior
35.47s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget[default_minimizer_kwargs]
33.60s call     tests/mmm/test_tvp.py::test_multidimensional
17.74s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_adstock_vectorized[PDF]
14.52s call     tests/mmm/test_hsgp.py::test_curve_workflow[HSGP]
13.36s call     tests/mmm/test_hsgp.py::test_curve_workflow[HSGPPeriodic]
9.56s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_vectorized[After]
9.52s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_adstock_vectorized[CDF]
8.95s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x0-1-1-4]
7.03s call     tests/mmm/test_hsgp.py::test_higher_dimension_hsgp
6.49s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x2-0.7-1-100]
5.88s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_geometric_adstock_vectorized_logistic_saturation
4.56s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_vectorized[After]
4.10s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x2-0.7-1-100]
4.06s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x1-0.3-0.5-10]
4.05s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x6-0.8-1-50]
3.93s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x0-1-1-4]
3.75s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_parameterization_transformation[x0-20-0.5]
3.71s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_x_zero[After]
3.62s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x1-0.7-100]
3.10s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_parameterization_transformation[x1-100-0.5]
2.60s call     tests/mmm/test_transformers.py::test_batched_convolution[ndarray-0-After]
2.46s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_vectorized[Before]
2.31s call     tests/mmm/test_tvp.py::test_calling_without_default_args
2.23s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_vectorized[Overlap]
2.15s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x5-0.8-50]
2.12s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x0-0.5-1.0]
2.11s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_hill_sigmoid_monotonicity[1-1-0]
2.02s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget[custom_minimizer_kwargs]
2.02s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget_infeasible_constraints[100-budget_bounds0-parameters0-custom_constraints0]
1.97s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x1-0.3-0.5-10]
1.97s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_delayed_adstock_vectorized_logistic_saturation
1.93s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x6-0.8-1-50]
1.83s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x1-0.2-19.0]
1.81s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_output_type[After]
1.78s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget_custom_minimize_args
1.78s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_inverse_scaled_logistic_saturation_min_max_value
1.78s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget_zero_total[0-budget_bounds0-parameters0-expected_optimal0-2.38e-10]
1.76s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_bad_alpha[less_than_zero_1]
1.76s call     tests/mmm/test_transformers.py::test_batched_convolution[TensorVariable--1-After]
1.73s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x0-0.3-10]
1.71s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x3-0.5-7]
1.65s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_vectorized[Before]
1.64s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_vectorized[Overlap]
1.44s call     tests/mmm/test_hsgp.py::test_hsgp_class_method_ls_upper_changes_distribution
1.43s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_baselined_range[x2-10-0.001-0.01]
1.37s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x4-0.5-0.8-7]
1.35s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_hill_sigmoid_sigma_upper_bound[5-2-0.5-1]
1.24s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_delayed_adstock_composition[x3-0.99-10.0-0-5]
1.24s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x4-0.001-0.01]
================= 198 passed, 4 warnings in 355.42s (0:05:55) ==================
(10 minutes 26 seconds) test (3.12, true, tests/clv)
============================= slowest 50 durations =============================
54.10s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_purchases[1]
42.72s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_covariate_model_convergence
25.67s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_expected_purchases[1]
23.99s call     tests/clv/test_utils.py::TestCustomerLifetimeValue::test_customer_lifetime_value_as_gg_method[fitted_pnbd]
22.07s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_distribution_customer_churn_time
19.83s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_posterior_distributions[map]
18.88s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModel::test_spend[True]
14.96s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_logp
13.23s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_probability_alive[1]
13.22s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_probability_alive[3]
13.14s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_logp_matches_lifetimes[batch_shape0]
13.01s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_probability_alive[6]
12.25s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_logp_matches_lifetimes[batch_shape1]
11.87s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_purchases[6]
11.84s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value3-0.3-p3-10-logp3]
11.68s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_purchases[3]
11.52s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_expectation_method
11.00s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_distribution_method
10.09s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_distribution_new_customer
9.98s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_save_load
9.23s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value4-0.55-10.58-0.61-beta4-12]
8.78s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_logp_matches_excel
8.72s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_invalid_value_logp
8.37s call     tests/clv/models/test_basic.py::TestCLVModel::test_fit_demz
6.52s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value0-0.4-0.15-10--8.39147106159807]
6.19s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModel::test_spend[False]
5.63s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value1-lam1-0.15-10-logp1]
4.80s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value2-lam2-0.15-10-logp2]
4.67s call     tests/clv/test_distributions.py::TestContContract::test_continuous_contractual[value3-0.3-p3-10-logp3]
4.11s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value1-r1-10.58-0.61-11.67-12]
3.90s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_distribution_new_customer
3.19s call     tests/clv/models/test_modified_beta_geo.py::TestModifiedBetaGeoModel::test_numerically_stable_logp[0-0--0.41792826]
2.53s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value3-0.55-11.67-0.61-10.58-T3]
2.39s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value0-0.55-10.58-0.61-11.67-12]
2.36s call     tests/clv/test_distributions.py::TestContContract::test_continuous_contractual[value1-lam1-0.15-10-logp1]
2.13s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_posterior_distributions[mcmc]
2.10s call     tests/clv/test_plotting.py::test_plot_expected_purchases_ppc[prior-10-100-None]
1.99s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_extract_predictive_covariates
1.77s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value2-r2-10.58-s2-11.67-12]
1.63s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_beta_geo_beta_binom_sample_prior[None-None-gamma_size3-delta_size3-beta_geo_beta_binom_size3-expected_size3]
1.58s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_beta_geo_beta_binom_sample_prior[None-None-None-None-beta_geo_beta_binom_size4-expected_size4]
1.52s call     tests/clv/test_distributions.py::TestContContract::test_continuous_contractual[value0-0.3-0.15-10--10.45705972]
1.45s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModelIndividual::test_save_load
1.22s call     tests/clv/test_utils.py::TestCustomerLifetimeValue::test_clv_after_thinning[fitted_pnbd]
1.22s call     tests/clv/models/test_modified_beta_geo.py::TestModifiedBetaGeoModel::test_numerically_stable_logp[200-38-100.7869]
1.14s setup    tests/clv/test_plotting.py::test_plot_expected_purchases_ppc_exceptions
1.10s call     tests/clv/test_plotting.py::test_plot_expected_purchases_ppc[posterior-20-50-subplot1]
1.01s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_expected_probability_alive
0.96s call     tests/clv/models/test_basic.py::TestCLVModel::test_fit_mcmc
0.92s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_beta_geo_beta_binom_sample_prior[alpha_size1-None-None-None-None-expected_size1]
=========== 242 passed, 12 skipped, 12 warnings in 496.15s (0:08:16) ===========
(6 minutes 5 seconds) test (3.12, true, --ignore tests/mmm --ignore tests/clv)
============================= slowest 50 durations =============================
88.12s call     tests/test_mlflow.py::test_autolog_mmm
16.80s call     tests/test_mlflow.py::test_file_system_uri_supported
15.80s call     tests/test_model_builder.py::test_second_fit
14.02s call     tests/test_mlflow.py::test_autolog_pymc_model[nutpie]
13.75s setup    tests/test_model_builder.py::test_save_input_params
11.34s call     tests/test_model_builder.py::test_fit_random_seed_reproducibility[rng]
9.01s call     tests/test_model_builder.py::test_fit_sampler_config_seed_reproducibility
9.01s call     tests/test_model_builder.py::test_fit_random_seed_reproducibility[int]
8.42s call     tests/test_model_builder.py::test_empty_sampler_config_fit
7.91s call     tests/test_model_builder.py::test_fit_after_prior_keeps_prior
7.90s call     tests/test_model_builder.py::test_fit_no_t
5.64s setup    tests/customer_choice/test_mv_its.py::test_MVITS_saturated[plot_fit]
5.40s call     tests/test_mlflow.py::test_log_data_no_data
4.71s call     tests/test_mlflow.py::test_autolog_pymc_model[numpyro]
4.30s call     tests/test_mlflow.py::test_autolog_pymc_model[blackjax]
2.77s call     tests/test_mlflow.py::test_autolog_pymc_model[pymc]
1.91s call     tests/customer_choice/test_mv_its.py::test_MVITS_unsaturated[plot_fit-unsaturated_model_bad]
1.22s call     tests/test_model_builder.py::test_save_load
0.73s call     tests/test_prior.py::test_censored_sample_prior
0.70s setup    tests/test_mlflow.py::test_multi_likelihood_type
0.69s call     tests/test_prior.py::test_custom_transform_comes_first
0.67s call     tests/test_prior.py::test_custom_transform
0.61s call     tests/customer_choice/test_mv_its.py::test_save_load
0.55s call     tests/test_prior.py::test_censored_variables_created
0.40s call     tests/customer_choice/test_mv_its.py::test_MVITS_unsaturated[plot_fit-unsaturated_model_good]
0.39s call     tests/test_plot.py::test_plot_curve_custom_colors
0.39s call     tests/test_plot.py::test_plot_curve
0.38s call     tests/test_plot.py::test_plot_curve_custom_sel_to_string
0.36s call     tests/test_plot.py::test_plot_functions[no_legend-different_axes-plot_samples]
0.36s call     tests/test_plot.py::test_plot_functions[legend-different_axes-plot_samples]
0.21s call     tests/test_model_builder.py::test_sample_xxx_predictive_keeps_second[prior_predictive]
0.20s call     tests/test_plot.py::test_plot_curve_supply_axes_same_axes
0.18s call     tests/test_plot.py::test_plot_functions[legend-same_axes-plot_samples]
0.18s call     tests/test_model_builder.py::test_insufficient_attrs
0.17s call     tests/test_model_builder.py::test_incorrect_set_idata_attrs_override
0.17s call     tests/test_plot.py::test_plot_functions[no_legend-same_axes-plot_samples]
0.16s call     tests/test_model_builder.py::test_fit
0.16s call     tests/test_model_builder.py::test_sample_xxx_predictive_keeps_second[posterior_predictive]
0.10s call     tests/customer_choice/test_mv_its.py::test_MVITS_saturated[plot_fit]
0.10s call     tests/test_model_builder.py::test_fit_sampler_config_with_rng_fails
0.09s call     tests/test_plot.py::test_plot_functions[no_legend-different_axes-plot_hdi]
0.09s call     tests/test_prior.py::test_create_variable
0.09s call     tests/test_plot.py::test_plot_functions[legend-different_axes-plot_hdi]
0.08s call     tests/test_model_builder.py::test_sample_posterior_predictive[True]
0.08s call     tests/test_model_builder.py::test_predict
0.08s call     tests/test_prior.py::test_create_variable_multiple_times
0.08s call     tests/test_model_builder.py::test_prediction_kwarg
0.08s call     tests/test_model_builder.py::test_sample_posterior_predictive[False]
0.07s call     tests/test_model_builder.py::test_graphviz
0.07s call     tests/customer_choice/test_mv_its.py::test_MVITS_unsaturated[plot_counterfactual-unsaturated_model_good]
================= 185 passed, 24 warnings in 241.86s (0:04:01) =================
(13 minutes 25 seconds) test_slow (tests/clv/models/test_beta_geo_beta_binom.py)
============================= slowest 50 durations =============================
679.87s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_model_convergence[mcmc-0.3]
16.88s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_model_convergence[map-0.2]
0.06s setup    tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_model_convergence[mcmc-0.3]

0.005s hidden.  Use -vv to show these durations.)
============= 2 passed, 16 skipped, 1 warning in 698.79s (0:11:38) =============
(8 minutes 54 seconds) test_slow (tests/clv/models/test_pareto_nbd.py)
============================= slowest 50 durations =============================
400.28s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_model_convergence[mcmc-0.1]
22.98s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_model_convergence[map-0.2]
10.33s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_model_convergence[demz-0.2]
0.04s setup    tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_model_convergence[mcmc-0.1]

0.005s hidden.  Use -vv to show these durations.)
=========== 3 passed, 22 skipped, 4001 warnings in 435.53s (0:07:15) ===========
(5 minutes 44 seconds) test_slow (--ignore tests/clv/models/test_beta_geo_beta_binom.py --ignore tests/clv/models/test_p...
============================= slowest 50 durations =============================
54.37s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_model_convergence[mcmc-0.1]
48.71s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_model_convergence
43.60s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModelIndividual::test_model_convergence
35.05s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModel::test_model_convergence
34.75s call     tests/clv/models/test_modified_beta_geo.py::TestModifiedBetaGeoModel::test_model_convergence[mcmc-0.075]
14.59s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_model_convergence[map-0.2]
8.21s call     tests/clv/models/test_modified_beta_geo.py::TestModifiedBetaGeoModel::test_model_convergence[map-0.15]
0.69s setup    tests/clv/models/test_gamma_gamma.py::TestGammaGammaModel::test_model_convergence
0.04s setup    tests/clv/models/test_gamma_gamma.py::TestGammaGammaModelIndividual::test_model_convergence
0.02s setup    tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_model_convergence[mcmc-0.1]
0.01s setup    tests/clv/models/test_modified_beta_geo.py::TestModifiedBetaGeoModel::test_model_convergence[mcmc-0.075]

0.005s hidden.  Use -vv to show these durations.)
=========== 7 passed, 1424 skipped, 17 warnings in 247.48s (0:04:07) ===========

You can find more information on how to contribute here.

Automatically generated by GitHub Action
Latest run date: 2025-01-02

@wd60622 wd60622 changed the title Address slowest tests Slowest test times (Last Updated: 2024-11-03) Nov 4, 2024
@wd60622 wd60622 changed the title Slowest test times (Last Updated: 2024-11-03) Slowest test times Nov 4, 2024
@wd60622 wd60622 pinned this issue Nov 4, 2024
@wd60622 wd60622 changed the title Slowest test times Speed up test times 🚀 Nov 4, 2024
@wd60622 wd60622 added the help wanted Extra attention is needed label Nov 5, 2024
@ColtAllen
Copy link
Collaborator

Related to #1227

@ricardoV94
Copy link
Contributor

@wd60622 can we have this automated issue on pymc/pytensor 🤤 ?

@wd60622
Copy link
Contributor Author

wd60622 commented Dec 13, 2024

@wd60622 can we have this automated issue on pymc/pytensor 🤤 ?

Yes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants