Skip to content
New issue

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

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

Already on GitHub? # 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:

(13 minutes 17 seconds) test_slow (tests/clv/models/test_beta_geo_beta_binom.py)
============================= slowest 50 durations =============================
686.42s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_model_convergence[mcmc-0.3]
21.13s 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 in 709.55s (0:11:49) ===================
(10 minutes 29 seconds) test (3.10, false, tests/mmm --ignore tests/mmm/test_tvp.py --ignore tests/mmm/test_budget_optimi...
============================= slowest 50 durations =============================
21.35s call     tests/mmm/test_mmm.py::TestMMM::test_allocate_budget_to_maximize_response
16.36s 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]
11.48s call     tests/mmm/test_base.py::test_calling_fit_result_before_fit_raises_error
11.41s call     tests/mmm/test_lift_test.py::test_works_with_negative_delta
10.44s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-delayed]
10.20s call     tests/mmm/components/test_adstock.py::test_apply[x1-channel-delayed]
8.71s call     tests/mmm/test_linear_trend.py::test_apply[with_intercept]
8.66s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-weibull_pdf]
7.31s call     tests/mmm/test_mmm.py::TestMMM::test_channel_contributions_forward_pass_is_consistent
7.03s call     tests/mmm/test_media_transformation.py::test_apply_media_transformation[scalar-vector]
6.64s call     tests/mmm/test_utility.py::test_mean_tightness_score
6.14s call     tests/mmm/test_linear_trend.py::test_apply_additional_dims[scalar]
5.78s call     tests/mmm/test_utility.py::test_conditional_value_at_risk
5.63s call     tests/mmm/test_media_transformation.py::test_apply_media_transformation[scalar-scalar]
4.21s call     tests/mmm/test_media_transformation.py::test_apply_media_transformation[vector-scalar]
4.18s call     tests/mmm/test_mmm.py::test_save_load_with_tvp[True-True]
3.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=1]
3.55s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-weibull_cdf]
3.50s call     tests/mmm/test_mmm.py::test_save_load_with_tvp[True-False]
3.46s call     tests/mmm/test_utility.py::test_sharpe_ratio
3.46s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-geometric]
3.42s setup    tests/mmm/test_mmm.py::test_save_load_with_media_transformation
3.41s call     tests/mmm/test_fourier.py::test_sample_curve
3.27s call     tests/mmm/components/test_base.py::test_transform_sample_curve_with_variable_factory
3.25s 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.17s call     tests/mmm/test_mmm.py::test_save_load_with_tvp[False-True]
2.95s call     tests/mmm/test_utility.py::test_covariance_matrix_matches_numpy[data0]
2.87s call     tests/mmm/test_mmm.py::TestMMM::test_save_load_with_not_serializable_model_config
2.86s 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.76s call     tests/mmm/test_mmm.py::test_channel_contributions_forward_pass_time_varying_media
2.70s 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.66s 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.54s 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.52s 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.46s call     tests/mmm/test_mmm.py::test_plotting_media_transform_workflow[adstock]
2.32s 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.28s 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.26s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-single_channel-one_control-adstock_max_lag=4]
2.25s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-single_channel-two_controls-adstock_max_lag=4]
2.21s setup    tests/mmm/test_mmm.py::test_plotting_media_transform_workflow[adstock]
2.20s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-multiple_channel-one_control-adstock_max_lag=1]
2.19s call     tests/mmm/test_fourier.py::test_additional_dimension
2.19s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-no_time_varying_intercept-no_yearly_seasonality-single_channel-one_control-adstock_max_lag=1]
2.19s 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_fourier.py::test_plot_curve
2.13s 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]
2.12s call     tests/mmm/test_fourier.py::test_fourier_modes_shape[periods2-1-expected_shape2]
2.11s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-single_channel-no_control-adstock_max_lag=1]
2.08s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-no_yearly_seasonality-multiple_channel-no_control-adstock_max_lag=4]
2.07s 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]
================ 981 passed, 153 warnings in 521.25s (0:08:41) =================
(8 minutes 42 seconds) test_slow (tests/clv/models/test_pareto_nbd.py)
============================= slowest 50 durations =============================
399.19s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_model_convergence[mcmc-0.1]
25.94s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_model_convergence[map-0.2]
7.60s 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, 4000 warnings in 435.10s (0:07:15) ===========
(8 minutes 3 seconds) test (3.10, false, tests/mmm/test_tvp.py tests/mmm/test_budget_optimizer.py tests/mmm/test_hsgp.p...
============================= slowest 50 durations =============================
59.27s call     tests/mmm/test_tvp.py::test_time_varying_prior
29.61s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget[default_minimizer_kwargs]
23.87s call     tests/mmm/test_tvp.py::test_multidimensional
16.15s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_adstock_vectorized[PDF]
14.41s call     tests/mmm/test_hsgp.py::test_curve_workflow[HSGP]
8.63s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_adstock_vectorized[CDF]
8.43s call     tests/mmm/test_hsgp.py::test_curve_workflow[HSGPPeriodic]
7.96s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x0-1-1-4]
7.49s call     tests/mmm/test_hsgp.py::test_higher_dimension_hsgp
7.10s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_vectorized[After]
5.87s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x2-0.7-1-100]
4.78s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_geometric_adstock_vectorized_logistic_saturation
3.97s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_vectorized[After]
3.78s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_parameterization_transformation[x0-20-0.5]
3.67s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x6-0.8-1-50]
3.62s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x2-0.7-1-100]
3.33s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x0-1-1-4]
3.06s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x1-0.7-100]
2.88s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x1-0.3-0.5-10]
2.83s call     tests/mmm/test_transformers.py::test_batched_convolution_broadcasting
2.70s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_x_zero[After]
2.50s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_parameterization_transformation[x1-100-0.5]
2.50s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x1-0.3-0.5-10]
2.04s call     tests/mmm/test_tvp.py::test_calling_without_default_args
2.03s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x5-0.8-50]
1.98s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_bad_alpha[less_than_zero_1]
1.94s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_vectorized[Overlap]
1.92s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_vectorized[Before]
1.91s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x3-0.5-7]
1.89s call     tests/mmm/test_transformers.py::test_batched_convolution[ndarray-0-After]
1.87s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_delayed_adstock_vectorized_logistic_saturation
1.78s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_baselined_range[x0-10-0.5-0.5]
1.76s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_hill_sigmoid_monotonicity[1-1-0]
1.68s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget_infeasible_constraints[100-budget_bounds0-parameters0-custom_constraints0]
1.65s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget[zero_total_budget]
1.54s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x0-0.5-1.0]
1.54s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x0-0.3-10]
1.51s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x1-0.2-19.0]
1.49s call     tests/mmm/test_transformers.py::test_batched_convolution[TensorVariable--1-After]
1.46s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x2-0.6-5.0]
1.44s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget[custom_minimizer_kwargs]
1.44s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x4-0.5-0.8-7]
1.43s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget_custom_minimize_args
1.40s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x6-0.8-1-50]
1.35s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_vectorized[Overlap]
1.35s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_vectorized[Before]
1.33s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_output_type[After]
1.24s call     tests/mmm/test_hsgp.py::test_hsgp_class_method_ls_upper_changes_distribution
1.22s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_baselined_range[x2-10-0.001-0.01]
1.22s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x3-0.99-10.0]
================= 201 passed, 7 warnings in 302.30s (0:05:02) ==================
(4 minutes 44 seconds) test_slow (--ignore tests/clv/models/test_beta_geo_beta_binom.py --ignore tests/clv/models/test_p...
============================= slowest 50 durations =============================
45.05s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_model_convergence[mcmc-0.1]
33.39s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_model_convergence
31.90s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModelIndividual::test_model_convergence
24.96s call     tests/clv/models/test_modified_beta_geo.py::TestModifiedBetaGeoModel::test_model_convergence[mcmc-0.075]
24.63s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModel::test_model_convergence
15.93s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_model_convergence[map-0.2]
9.00s call     tests/clv/models/test_modified_beta_geo.py::TestModifiedBetaGeoModel::test_model_convergence[map-0.15]
0.64s setup    tests/clv/models/test_gamma_gamma.py::TestGammaGammaModel::test_model_convergence
0.05s setup    tests/clv/models/test_gamma_gamma.py::TestGammaGammaModelIndividual::test_model_convergence
0.03s 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, 1621 skipped, 18 warnings in 194.68s (0:03:14) ===========
(8 minutes 34 seconds) test (3.10, false, tests/clv)
============================= slowest 50 durations =============================
38.39s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_covariate_model_convergence
29.88s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_purchases[1]
22.29s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_expected_purchases[1]
21.04s call     tests/clv/test_utils.py::TestCustomerLifetimeValue::test_customer_lifetime_value_as_gg_method[fitted_pnbd]
20.30s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_posterior_distributions[map]
19.66s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_distribution_customer_churn_time
17.35s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_posterior_distributions[map]
14.94s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value3-0.3-p3-10-logp3]
12.70s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_logp_matches_lifetimes[batch_shape1]
12.62s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModel::test_spend[True]
12.59s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_logp
10.31s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_expectation_method
9.64s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_save_load
9.09s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_distribution_method
8.64s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_distribution_new_customer
8.30s call     tests/clv/models/test_basic.py::TestCLVModel::test_fit_demz
7.28s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value4-0.55-10.58-0.61-beta4-12]
7.23s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_logp_matches_lifetimes[batch_shape0]
6.85s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_logp_matches_excel
6.58s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_numerically_stable_logp[0-0--0.59947382]
6.55s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value0-0.4-0.15-10--8.39147106159807]
5.93s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value1-lam1-0.15-10-logp1]
5.92s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_invalid_value_logp
5.30s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_probability_alive[6]
5.28s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_probability_alive[1]
5.27s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_probability_alive[3]
4.36s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_fit_result_without_fit
4.33s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_purchases[3]
4.13s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_purchases[6]
3.84s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value1-r1-10.58-0.61-11.67-12]
2.55s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModel::test_spend[False]
2.53s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value2-lam2-0.15-10-logp2]
2.52s call     tests/clv/test_distributions.py::TestContContract::test_continuous_contractual[value3-0.3-p3-10-logp3]
2.12s call     tests/clv/models/test_basic.py::TestCLVModel::test_fit_mcmc
2.06s setup    tests/clv/test_plotting.py::test_plot_expected_purchases_ppc_exceptions
2.05s call     tests/clv/test_distributions.py::TestBetaGeoNBD::test_bg_nbd[value3-0.55-11.67-0.61-10.58-T3]
2.04s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_posterior_distributions[mcmc]
1.98s call     tests/clv/test_distributions.py::TestBetaGeoNBD::test_bg_nbd[value0-0.55-10.58-0.61-11.67-12]
1.93s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value0-0.55-10.58-0.61-11.67-12]
1.89s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_posterior_distributions[mcmc]
1.87s call     tests/clv/test_plotting.py::test_plot_expected_purchases_ppc[prior-10-100-None]
1.76s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_extract_predictive_covariates
1.52s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value2-r2-10.58-s2-11.67-12]
1.47s call     tests/clv/models/test_modified_beta_geo.py::TestModifiedBetaGeoModel::test_numerically_stable_logp[0-0--0.41792826]
1.40s call     tests/clv/test_distributions.py::TestBetaGeoNBD::test_bg_nbd[value2-r2-10.58-a2-11.67-12]
1.36s call     tests/clv/test_distributions.py::TestContContract::test_continuous_contractual[value1-lam1-0.15-10-logp1]
1.34s 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.31s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModelIndividual::test_save_load
1.28s call     tests/clv/test_utils.py::TestCustomerLifetimeValue::test_clv_after_thinning[fitted_pnbd]
1.26s 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]
=========== 257 passed, 12 skipped, 50 warnings in 417.32s (0:06:57) ===========
(6 minutes 45 seconds) test (3.10, false, --ignore tests/mmm --ignore tests/clv)
============================= slowest 50 durations =============================
71.79s call     tests/test_mlflow.py::test_autolog_mmm
27.06s call     tests/test_mlflow.py::test_clv_fit_mcmc[BetaGeoModel]
19.14s call     tests/test_mlflow.py::test_clv_fit_map[BetaGeoModel]
14.14s call     tests/test_mlflow.py::test_file_system_uri_supported
9.45s call     tests/test_mlflow.py::test_autolog_pymc_model[nutpie]
9.36s call     tests/test_prior.py::test_censored_logp[scalar]
9.30s setup    tests/customer_choice/test_mv_its.py::test_MVITS_saturated[plot_fit]
6.72s setup    tests/test_model_builder.py::test_save_input_params
5.79s setup    tests/test_prior.py::test_censored_normal_logp[-10]
4.93s call     tests/test_model_builder.py::test_second_fit
4.59s call     tests/test_mlflow.py::test_autolog_pymc_model[numpyro]
4.15s call     tests/test_model_builder.py::test_fit_random_seed_reproducibility[rng]
3.69s call     tests/test_model_builder.py::test_fit_random_seed_reproducibility[int]
3.69s call     tests/test_model_builder.py::test_fit_sampler_config_seed_reproducibility
3.59s call     tests/test_mlflow.py::test_log_data_no_data
3.35s call     tests/test_mlflow.py::test_autolog_pymc_model[blackjax]
3.13s call     tests/test_model_builder.py::test_fit_after_prior_keeps_prior
2.60s call     tests/test_model_builder.py::test_empty_sampler_config_fit
2.26s call     tests/test_model_builder.py::test_fit_no_t
1.95s call     tests/customer_choice/test_mv_its.py::test_MVITS_unsaturated[plot_fit-unsaturated_model_bad]
1.17s call     tests/test_mlflow.py::test_autolog_pymc_model[pymc]
1.05s call     tests/test_prior.py::test_censored_logp[vector]
1.04s call     tests/test_model_builder.py::test_save_load
0.63s call     tests/test_prior.py::test_censored_sample_prior
0.58s call     tests/customer_choice/test_mv_its.py::test_save_load
0.56s call     tests/test_prior.py::test_custom_transform
0.44s call     tests/customer_choice/test_mv_its.py::test_MVITS_unsaturated[plot_fit-unsaturated_model_good]
0.32s call     tests/test_plot.py::test_plot_curve_custom_colors
0.32s call     tests/test_plot.py::test_plot_curve
0.31s call     tests/test_plot.py::test_plot_curve_custom_sel_to_string
0.31s call     tests/customer_choice/test_mv_its.py::test_MVITS_saturated[plot_counterfactual]
0.29s call     tests/test_plot.py::test_plot_functions[legend-different_axes-plot_samples]
0.28s call     tests/test_plot.py::test_plot_functions[no_legend-different_axes-plot_samples]
0.24s call     tests/test_mlflow.py::test_log_mmm_evaluation_metrics
0.16s call     tests/test_model_builder.py::test_sample_xxx_predictive_keeps_second[prior_predictive]
0.15s call     tests/test_plot.py::test_plot_curve_supply_axes_same_axes
0.13s call     tests/test_plot.py::test_plot_functions[legend-same_axes-plot_samples]
0.13s call     tests/customer_choice/test_mv_its.py::test_MVITS_saturated[plot_fit]
0.12s call     tests/test_plot.py::test_plot_functions[no_legend-same_axes-plot_samples]
0.12s call     tests/test_model_builder.py::test_fit
0.11s call     tests/test_model_builder.py::test_sample_xxx_predictive_keeps_second[posterior_predictive]
0.10s call     tests/test_prior.py::test_create_variable
0.10s call     tests/customer_choice/test_mv_its.py::test_MVITS_unsaturated[plot_counterfactual-unsaturated_model_bad]
0.10s call     tests/test_model_builder.py::test_insufficient_attrs
0.10s call     tests/customer_choice/test_mv_its.py::test_MVITS_unsaturated[plot_counterfactual-unsaturated_model_good]
0.09s call     tests/test_model_builder.py::test_incorrect_set_idata_attrs_override
0.09s call     tests/test_model_builder.py::test_set_fit_result
0.09s call     tests/test_prior.py::test_create_variable_multiple_times
0.09s call     tests/test_model_builder.py::test_fit_sampler_config_with_rng_fails
0.08s call     tests/test_plot.py::test_plot_functions[no_legend-different_axes-plot_hdi]
================= 220 passed, 26 warnings in 225.39s (0:03:45) =================
(11 minutes 56 seconds) test (3.12, true, tests/mmm --ignore tests/mmm/test_tvp.py --ignore tests/mmm/test_budget_optimiz...
============================= slowest 50 durations =============================
24.20s call     tests/mmm/test_mmm.py::TestMMM::test_allocate_budget_to_maximize_response
18.08s 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]
12.62s call     tests/mmm/test_lift_test.py::test_works_with_negative_delta
12.53s call     tests/mmm/test_base.py::test_calling_fit_result_before_fit_raises_error
11.21s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-delayed]
10.92s call     tests/mmm/components/test_adstock.py::test_apply[x1-channel-delayed]
9.27s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-weibull_pdf]
9.20s call     tests/mmm/test_linear_trend.py::test_apply[with_intercept]
9.09s call     tests/mmm/test_mmm.py::TestMMM::test_channel_contributions_forward_pass_is_consistent
7.52s call     tests/mmm/test_media_transformation.py::test_apply_media_transformation[scalar-vector]
7.46s call     tests/mmm/test_utility.py::test_mean_tightness_score
6.55s call     tests/mmm/test_linear_trend.py::test_apply_additional_dims[scalar]
6.32s call     tests/mmm/test_utility.py::test_conditional_value_at_risk
6.17s call     tests/mmm/test_media_transformation.py::test_apply_media_transformation[scalar-scalar]
4.94s call     tests/mmm/test_mmm.py::test_save_load_with_tvp[True-True]
4.56s call     tests/mmm/test_media_transformation.py::test_apply_media_transformation[vector-scalar]
4.10s 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.07s call     tests/mmm/test_utility.py::test_sharpe_ratio
3.89s setup    tests/mmm/test_mmm.py::test_save_load_with_media_transformation
3.87s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-weibull_cdf]
3.73s call     tests/mmm/test_mmm.py::test_save_load_with_tvp[True-False]
3.68s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-geometric]
3.66s 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.63s call     tests/mmm/test_fourier.py::test_sample_curve
3.48s call     tests/mmm/test_mmm.py::test_save_load_with_tvp[False-True]
3.46s call     tests/mmm/components/test_base.py::test_transform_sample_curve_with_variable_factory
3.43s call     tests/mmm/test_utility.py::test_covariance_matrix_matches_numpy[data0]
3.12s 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]
3.10s call     tests/mmm/test_mmm.py::test_channel_contributions_forward_pass_time_varying_media
3.02s 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.90s 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.87s 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.83s call     tests/mmm/test_mmm.py::TestMMM::test_save_load_with_not_serializable_model_config
2.83s 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.69s call     tests/mmm/test_mmm.py::test_plotting_media_transform_workflow[adstock]
2.51s 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.51s 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.48s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-single_channel-one_control-adstock_max_lag=4]
2.48s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-single_channel-two_controls-adstock_max_lag=4]
2.44s 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]
2.39s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-multiple_channel-one_control-adstock_max_lag=1]
2.38s setup    tests/mmm/test_mmm.py::test_plotting_media_transform_workflow[adstock]
2.36s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-no_yearly_seasonality-multiple_channel-one_control-adstock_max_lag=4]
2.35s 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.33s call     tests/mmm/test_fourier.py::test_additional_dimension
2.32s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-single_channel-no_control-adstock_max_lag=1]
2.32s 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.29s call     tests/mmm/components/test_adstock.py::test_adstock_sample_curve[weibull_pdf]
2.28s 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.25s 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]
================ 981 passed, 157 warnings in 598.00s (0:09:58) =================
(7 minutes 42 seconds) test (3.12, true, tests/mmm/test_tvp.py tests/mmm/test_budget_optimizer.py tests/mmm/test_hsgp.py...
============================= slowest 50 durations =============================
63.54s call     tests/mmm/test_tvp.py::test_time_varying_prior
33.15s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget[default_minimizer_kwargs]
27.64s call     tests/mmm/test_tvp.py::test_multidimensional
17.90s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_adstock_vectorized[PDF]
16.35s call     tests/mmm/test_hsgp.py::test_curve_workflow[HSGP]
9.67s call     tests/mmm/test_hsgp.py::test_curve_workflow[HSGPPeriodic]
9.59s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_adstock_vectorized[CDF]
8.59s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x0-1-1-4]
8.17s call     tests/mmm/test_hsgp.py::test_higher_dimension_hsgp
7.93s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_vectorized[After]
6.91s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x2-0.7-1-100]
5.58s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_geometric_adstock_vectorized_logistic_saturation
4.61s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_vectorized[After]
4.57s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x2-0.7-1-100]
4.32s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x6-0.8-1-50]
4.00s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_parameterization_transformation[x0-20-0.5]
3.87s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x1-0.7-100]
3.80s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x0-1-1-4]
3.27s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x1-0.3-0.5-10]
3.18s call     tests/mmm/test_transformers.py::test_batched_convolution_broadcasting
3.09s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_x_zero[After]
2.82s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_parameterization_transformation[x1-100-0.5]
2.67s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x1-0.3-0.5-10]
2.52s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x5-0.8-50]
2.29s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_vectorized[Overlap]
2.27s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_vectorized[Before]
2.27s call     tests/mmm/test_tvp.py::test_calling_without_default_args
2.25s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_bad_alpha[less_than_zero_1]
2.20s call     tests/mmm/test_transformers.py::test_batched_convolution[ndarray-0-After]
2.15s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x3-0.5-7]
2.10s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x6-0.8-1-50]
1.99s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_baselined_range[x0-10-0.5-0.5]
1.97s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_hill_sigmoid_monotonicity[1-1-0]
1.96s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget_custom_minimize_args
1.95s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_delayed_adstock_vectorized_logistic_saturation
1.77s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x0-0.5-1.0]
1.76s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x0-0.3-10]
1.74s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget_infeasible_constraints[100-budget_bounds0-parameters0-custom_constraints0]
1.72s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x1-0.2-19.0]
1.69s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget[custom_minimizer_kwargs]
1.69s call     tests/mmm/test_transformers.py::test_batched_convolution[TensorVariable--1-After]
1.68s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget[zero_total_budget]
1.68s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x2-0.6-5.0]
1.63s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_vectorized[Before]
1.63s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_vectorized[Overlap]
1.49s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_output_type[After]
1.46s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x4-0.001-0.01]
1.45s call     tests/mmm/test_hsgp.py::test_hsgp_class_method_ls_upper_changes_distribution
1.37s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x4-0.5-0.8-7]
1.37s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_baselined_range[x2-10-0.001-0.01]
================= 201 passed, 7 warnings in 340.25s (0:05:40) ==================
(11 minutes 1 seconds) test (3.12, true, tests/clv)
============================= slowest 50 durations =============================
41.57s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_covariate_model_convergence
37.93s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_purchases[1]
23.80s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_expected_purchases[1]
22.44s call     tests/clv/test_utils.py::TestCustomerLifetimeValue::test_customer_lifetime_value_as_gg_method[fitted_pnbd]
21.99s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_distribution_customer_churn_time
21.79s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_posterior_distributions[map]
19.48s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_posterior_distributions[map]
15.90s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value3-0.3-p3-10-logp3]
14.19s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModel::test_spend[True]
13.80s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_logp
13.70s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_logp_matches_lifetimes[batch_shape1]
11.79s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_probability_alive[3]
11.76s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_probability_alive[1]
11.64s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_probability_alive[6]
10.94s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_expectation_method
10.60s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_purchases[6]
10.51s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_save_load
10.45s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_purchases[3]
10.00s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_distribution_method
9.67s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_distribution_new_customer
9.06s call     tests/clv/models/test_basic.py::TestCLVModel::test_fit_demz
8.04s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value4-0.55-10.58-0.61-beta4-12]
7.64s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_logp_matches_excel
7.61s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_logp_matches_lifetimes[batch_shape0]
7.14s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value0-0.4-0.15-10--8.39147106159807]
6.76s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_numerically_stable_logp[0-0--0.59947382]
6.42s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value1-lam1-0.15-10-logp1]
6.12s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_invalid_value_logp
4.18s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value1-r1-10.58-0.61-11.67-12]
3.18s call     tests/clv/models/test_basic.py::TestCLVModel::test_fit_mcmc
2.77s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value2-lam2-0.15-10-logp2]
2.69s call     tests/clv/test_distributions.py::TestContContract::test_continuous_contractual[value3-0.3-p3-10-logp3]
2.58s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModel::test_spend[False]
2.24s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_posterior_distributions[mcmc]
2.23s call     tests/clv/test_distributions.py::TestBetaGeoNBD::test_bg_nbd[value3-0.55-11.67-0.61-10.58-T3]
2.17s call     tests/clv/test_distributions.py::TestBetaGeoNBD::test_bg_nbd[value0-0.55-10.58-0.61-11.67-12]
2.11s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_posterior_distributions[mcmc]
2.11s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value0-0.55-10.58-0.61-11.67-12]
2.08s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_fit_result_without_fit
2.05s setup    tests/clv/test_plotting.py::test_plot_expected_purchases_ppc_exceptions
2.05s call     tests/clv/test_plotting.py::test_plot_expected_purchases_ppc[prior-10-100-None]
1.92s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_extract_predictive_covariates
1.67s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value2-r2-10.58-s2-11.67-12]
1.63s call     tests/clv/models/test_modified_beta_geo.py::TestModifiedBetaGeoModel::test_numerically_stable_logp[0-0--0.41792826]
1.53s 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.52s call     tests/clv/test_distributions.py::TestBetaGeoNBD::test_bg_nbd[value2-r2-10.58-a2-11.67-12]
1.49s call     tests/clv/test_distributions.py::TestContContract::test_continuous_contractual[value1-lam1-0.15-10-logp1]
1.45s call     tests/clv/test_utils.py::TestCustomerLifetimeValue::test_clv_after_thinning[fitted_pnbd]
1.44s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModelIndividual::test_save_load
1.42s 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]
=========== 257 passed, 12 skipped, 50 warnings in 487.10s (0:08:07) ===========
(5 minutes 57 seconds) test (3.12, true, --ignore tests/mmm --ignore tests/clv)
============================= slowest 50 durations =============================
75.82s call     tests/test_mlflow.py::test_autolog_mmm
30.03s call     tests/test_mlflow.py::test_clv_fit_mcmc[BetaGeoModel]
21.03s call     tests/test_mlflow.py::test_clv_fit_map[BetaGeoModel]
14.49s call     tests/test_mlflow.py::test_file_system_uri_supported
10.35s call     tests/test_mlflow.py::test_autolog_pymc_model[nutpie]
9.43s call     tests/test_prior.py::test_censored_logp[scalar]
7.88s setup    tests/customer_choice/test_mv_its.py::test_MVITS_saturated[plot_fit]
7.04s setup    tests/test_model_builder.py::test_save_input_params
6.13s setup    tests/test_prior.py::test_censored_normal_logp[-10]
5.42s call     tests/test_model_builder.py::test_second_fit
4.96s call     tests/test_mlflow.py::test_autolog_pymc_model[numpyro]
4.61s call     tests/test_model_builder.py::test_fit_sampler_config_seed_reproducibility
4.13s call     tests/test_model_builder.py::test_fit_random_seed_reproducibility[int]
4.11s call     tests/test_model_builder.py::test_fit_random_seed_reproducibility[rng]
3.95s call     tests/test_mlflow.py::test_autolog_pymc_model[blackjax]
3.79s call     tests/test_mlflow.py::test_log_data_no_data
2.96s call     tests/test_model_builder.py::test_empty_sampler_config_fit
2.58s call     tests/test_model_builder.py::test_fit_no_t
2.35s call     tests/test_model_builder.py::test_fit_after_prior_keeps_prior
1.98s call     tests/customer_choice/test_mv_its.py::test_MVITS_unsaturated[plot_fit-unsaturated_model_bad]
1.22s call     tests/test_mlflow.py::test_autolog_pymc_model[pymc]
1.14s call     tests/test_prior.py::test_censored_logp[vector]
1.13s call     tests/test_model_builder.py::test_save_load
0.83s call     tests/customer_choice/test_mv_its.py::test_save_load
0.67s call     tests/test_prior.py::test_censored_sample_prior
0.59s call     tests/test_prior.py::test_custom_transform
0.57s call     tests/test_model_builder.py::test_sample_xxx_predictive_keeps_second[posterior_predictive]
0.42s call     tests/customer_choice/test_mv_its.py::test_MVITS_unsaturated[plot_fit-unsaturated_model_good]
0.38s call     tests/test_plot.py::test_plot_curve_custom_colors
0.38s call     tests/test_plot.py::test_plot_curve_custom_sel_to_string
0.38s call     tests/test_plot.py::test_plot_curve
0.34s call     tests/test_plot.py::test_plot_functions[legend-different_axes-plot_samples]
0.34s call     tests/test_plot.py::test_plot_functions[no_legend-different_axes-plot_samples]
0.24s call     tests/test_mlflow.py::test_log_mmm_evaluation_metrics
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_sample_xxx_predictive_keeps_second[prior_predictive]
0.17s call     tests/test_plot.py::test_plot_functions[no_legend-same_axes-plot_samples]
0.14s call     tests/test_model_builder.py::test_fit
0.13s call     tests/customer_choice/test_mv_its.py::test_MVITS_saturated[plot_fit]
0.12s call     tests/test_prior.py::test_create_variable
0.11s call     tests/test_model_builder.py::test_insufficient_attrs
0.11s call     tests/test_model_builder.py::test_incorrect_set_idata_attrs_override
0.10s call     tests/test_model_builder.py::test_set_fit_result
0.10s call     tests/test_prior.py::test_create_variable_multiple_times
0.10s call     tests/test_model_builder.py::test_fit_sampler_config_with_rng_fails
0.09s call     tests/customer_choice/test_mv_its.py::test_MVITS_saturated[plot_counterfactual]
0.09s call     tests/test_plot.py::test_plot_functions[no_legend-different_axes-plot_hdi]
0.09s call     tests/test_plot.py::test_plot_functions[legend-different_axes-plot_hdi]
0.08s setup    tests/test_mlflow.py::test_multi_likelihood_type
================= 220 passed, 28 warnings in 239.77s (0:03:59) =================

You can find more information on how to contribute here.

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

@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

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

No branches or pull requests

3 participants