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:

(13 minutes 5 seconds) test_slow (tests/clv/models/test_beta_geo_beta_binom.py)
============================= slowest 50 durations =============================
672.98s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_model_convergence[mcmc-0.3]
21.82s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_model_convergence[map-0.2]
0.05s 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 696.80s (0:11:36) =============
(11 minutes 0 seconds) test (3.10, false, tests/mmm --ignore tests/mmm/test_tvp.py --ignore tests/mmm/test_budget_optimi...
============================= slowest 50 durations =============================
30.66s call     tests/mmm/test_mmm.py::TestMMM::test_allocate_budget_to_maximize_response
18.20s 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.61s call     tests/mmm/test_base.py::test_calling_fit_result_before_fit_raises_error
12.57s call     tests/mmm/test_lift_test.py::test_works_with_negative_delta
11.40s call     tests/mmm/components/test_adstock.py::test_apply[x1-channel-delayed]
11.36s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-delayed]
9.84s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-weibull_pdf]
9.78s call     tests/mmm/test_linear_trend.py::test_apply[with_intercept]
7.88s call     tests/mmm/test_utility.py::test_mean_tightness_score
7.83s call     tests/mmm/test_media_transformation.py::test_apply_media_transformation[scalar-vector]
7.82s call     tests/mmm/test_mmm.py::TestMMM::test_channel_contributions_forward_pass_is_consistent
6.87s call     tests/mmm/test_linear_trend.py::test_apply_additional_dims[scalar]
6.77s call     tests/mmm/test_utility.py::test_conditional_value_at_risk
6.26s call     tests/mmm/test_media_transformation.py::test_apply_media_transformation[scalar-scalar]
4.54s call     tests/mmm/test_media_transformation.py::test_apply_media_transformation[vector-scalar]
4.38s call     tests/mmm/test_mmm.py::test_save_load_with_tvp[True-True]
4.17s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-weibull_cdf]
3.94s 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.91s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-geometric]
3.85s call     tests/mmm/test_fourier.py::test_sample_curve
3.74s setup    tests/mmm/test_mmm.py::test_save_load_with_media_transformation
3.69s 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.48s call     tests/mmm/components/test_base.py::test_transform_sample_curve_with_variable_factory
3.46s call     tests/mmm/test_mmm.py::test_save_load_with_tvp[True-False]
3.43s call     tests/mmm/test_utility.py::test_sharpe_ratio
3.36s call     tests/mmm/test_utility.py::test_covariance_matrix_matches_numpy[data0]
3.34s 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.14s call     tests/mmm/test_mmm.py::test_save_load_with_tvp[False-True]
3.04s 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.98s call     tests/mmm/test_mmm.py::test_channel_contributions_forward_pass_time_varying_media
2.91s 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.79s call     tests/mmm/test_mmm.py::test_plotting_media_transform_workflow[adstock]
2.79s call     tests/mmm/test_mmm.py::TestMMM::test_save_load_with_not_serializable_model_config
2.75s call     tests/mmm/test_utility.py::test_tail_distance[100-30-100-50-greater]
2.51s 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=1]
2.44s call     tests/mmm/test_fourier.py::test_fourier_modes_shape[periods2-1-expected_shape2]
2.42s call     tests/mmm/test_fourier.py::test_additional_dimension
2.40s 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-no_time_varying_intercept-yearly_seasonality-single_channel-one_control-adstock_max_lag=1]
2.33s 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.23s call     tests/mmm/components/test_adstock.py::test_adstock_sample_curve[weibull_pdf]
2.21s 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.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=4]
2.20s call     tests/mmm/components/test_adstock.py::test_apply[x1-channel-weibull_pdf]
2.19s 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.19s call     tests/mmm/test_linear_trend.py::test_apply_additional_dims[1d]
2.15s 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.13s 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.12s 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_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-single_channel-no_control-adstock_max_lag=1]
================ 833 passed, 121 warnings in 553.37s (0:09:13) =================
(10 minutes 31 seconds) test_slow (tests/clv/models/test_pareto_nbd.py)
============================= slowest 50 durations =============================
500.12s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_model_convergence[mcmc-0.1]
25.80s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_model_convergence[map-0.2]
8.05s 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 536.19s (0:08:56) ===========
(7 minutes 5 seconds) test (3.10, false, tests/mmm/test_tvp.py tests/mmm/test_budget_optimizer.py tests/mmm/test_hsgp.p...
============================= slowest 50 durations =============================
62.83s call     tests/mmm/test_tvp.py::test_time_varying_prior
38.03s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget[default_minimizer_kwargs]
25.70s call     tests/mmm/test_tvp.py::test_multidimensional
17.36s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_adstock_vectorized[PDF]
15.88s call     tests/mmm/test_hsgp.py::test_curve_workflow[HSGP]
9.89s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_vectorized[After]
9.04s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_adstock_vectorized[CDF]
8.97s call     tests/mmm/test_hsgp.py::test_curve_workflow[HSGPPeriodic]
8.49s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x0-1-1-4]
7.89s call     tests/mmm/test_hsgp.py::test_higher_dimension_hsgp
5.99s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x2-0.7-1-100]
5.26s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_geometric_adstock_vectorized_logistic_saturation
4.24s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_parameterization_transformation[x0-20-0.5]
4.20s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_vectorized[After]
4.07s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x2-0.7-1-100]
3.79s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x0-1-1-4]
3.69s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x6-0.8-1-50]
3.51s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_x_zero[After]
3.16s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x1-0.3-0.5-10]
2.91s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_parameterization_transformation[x1-100-0.5]
2.82s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x1-0.7-100]
2.27s call     tests/mmm/test_tvp.py::test_calling_without_default_args
2.16s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_bad_alpha[less_than_zero_1]
2.08s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x3-0.5-7]
2.06s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_hill_sigmoid_monotonicity[1-1-0]
2.04s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_baselined_range[x0-10-0.5-0.5]
1.98s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x5-0.8-50]
1.88s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_vectorized[Overlap]
1.88s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_vectorized[Before]
1.88s 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.75s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x1-0.3-0.5-10]
1.75s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x0-0.5-1.0]
1.72s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x1-0.2-19.0]
1.64s call     tests/mmm/test_transformers.py::test_batched_convolution[TensorVariable--1-After]
1.64s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x6-0.8-1-50]
1.62s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget_custom_minimize_args
1.60s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x0-0.3-10]
1.60s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget_infeasible_constraints[100-budget_bounds0-parameters0-custom_constraints0]
1.57s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_vectorized[Overlap]
1.51s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_output_type[After]
1.43s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget[custom_minimizer_kwargs]
1.43s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget_zero_total[0-budget_bounds0-parameters0-expected_optimal0-2.38e-10]
1.39s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_baselined_range[x2-10-0.001-0.01]
1.34s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_vectorized[Before]
1.33s 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::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x3-0.99-10.0]
1.22s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x4-0.5-0.8-7]
1.22s call     tests/mmm/test_hsgp.py::test_hsgp_class_method_ls_upper_changes_distribution
1.13s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x3-0.2-0.2-5]
================= 198 passed, 6 warnings in 326.79s (0:05:26) ==================
(5 minutes 9 seconds) test_slow (--ignore tests/clv/models/test_beta_geo_beta_binom.py --ignore tests/clv/models/test_p...
============================= slowest 50 durations =============================
50.65s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_model_convergence[mcmc-0.1]
36.27s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_model_convergence
34.52s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModelIndividual::test_model_convergence
26.18s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModel::test_model_convergence
25.82s call     tests/clv/models/test_modified_beta_geo.py::TestModifiedBetaGeoModel::test_model_convergence[mcmc-0.075]
18.52s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_model_convergence[map-0.2]
10.18s call     tests/clv/models/test_modified_beta_geo.py::TestModifiedBetaGeoModel::test_model_convergence[map-0.15]
0.75s setup    tests/clv/models/test_gamma_gamma.py::TestGammaGammaModel::test_model_convergence
0.06s setup    tests/clv/models/test_gamma_gamma.py::TestGammaGammaModelIndividual::test_model_convergence
0.04s 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, 1467 skipped, 17 warnings in 213.49s (0:03:33) ===========
(9 minutes 57 seconds) test (3.10, false, tests/clv)
============================= slowest 50 durations =============================
45.26s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_covariate_model_convergence
34.68s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_purchases[1]
26.26s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_expected_purchases[1]
25.49s call     tests/clv/test_utils.py::TestCustomerLifetimeValue::test_customer_lifetime_value_as_gg_method[fitted_pnbd]
24.05s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_distribution_customer_churn_time
21.19s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_posterior_distributions[map]
18.06s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value3-0.3-p3-10-logp3]
17.50s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_posterior_distributions[map]
15.59s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_logp_matches_lifetimes[batch_shape1]
15.17s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_logp
14.35s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModel::test_spend[True]
12.03s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_expectation_method
11.16s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_save_load
10.39s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_distribution_new_customer
9.99s call     tests/clv/models/test_basic.py::TestCLVModel::test_fit_demz
8.90s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_distribution_method
8.87s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value4-0.55-10.58-0.61-beta4-12]
8.75s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_logp_matches_lifetimes[batch_shape0]
8.51s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_logp_matches_excel
8.02s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value0-0.4-0.15-10--8.39147106159807]
7.42s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_numerically_stable_logp[0-0--0.59947382]
7.35s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value1-lam1-0.15-10-logp1]
6.90s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_invalid_value_logp
5.42s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_probability_alive[6]
5.37s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_probability_alive[3]
5.34s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_probability_alive[1]
4.76s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value1-r1-10.58-0.61-11.67-12]
4.40s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_purchases[6]
4.24s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_purchases[3]
3.20s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value2-lam2-0.15-10-logp2]
3.04s call     tests/clv/models/test_basic.py::TestCLVModel::test_fit_mcmc
3.01s call     tests/clv/test_distributions.py::TestContContract::test_continuous_contractual[value3-0.3-p3-10-logp3]
2.56s call     tests/clv/test_distributions.py::TestBetaGeoNBD::test_bg_nbd[value3-0.55-11.67-0.61-10.58-T3]
2.49s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value0-0.55-10.58-0.61-11.67-12]
2.39s call     tests/clv/test_distributions.py::TestBetaGeoNBD::test_bg_nbd[value0-0.55-10.58-0.61-11.67-12]
2.36s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModel::test_spend[False]
2.06s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_posterior_distributions[mcmc]
2.02s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_extract_predictive_covariates
1.93s call     tests/clv/models/test_modified_beta_geo.py::TestModifiedBetaGeoModel::test_numerically_stable_logp[0-0--0.41792826]
1.89s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_posterior_distributions[mcmc]
1.88s setup    tests/clv/test_plotting.py::test_plot_expected_purchases_ppc_exceptions
1.87s call     tests/clv/test_plotting.py::test_plot_expected_purchases_ppc[prior-10-100-None]
1.86s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value2-r2-10.58-s2-11.67-12]
1.74s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_fit_result_without_fit
1.73s call     tests/clv/test_distributions.py::TestBetaGeoNBD::test_bg_nbd[value2-r2-10.58-a2-11.67-12]
1.67s call     tests/clv/test_distributions.py::TestContContract::test_continuous_contractual[value1-lam1-0.15-10-logp1]
1.53s call     tests/clv/test_utils.py::TestCustomerLifetimeValue::test_clv_after_thinning[fitted_pnbd]
1.50s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModelIndividual::test_save_load
1.50s call     tests/clv/test_distributions.py::TestBetaGeoNBD::test_logp_matches_excel
1.37s 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]
=========== 257 passed, 12 skipped, 51 warnings in 478.03s (0:07:58) ===========
(5 minutes 36 seconds) test (3.10, false, --ignore tests/mmm --ignore tests/clv)
============================= slowest 50 durations =============================
77.57s call     tests/test_mlflow.py::test_autolog_mmm
30.21s call     tests/test_mlflow.py::test_clv_fit_mcmc[BetaGeoModel]
20.45s call     tests/test_mlflow.py::test_clv_fit_map[BetaGeoModel]
14.71s call     tests/test_mlflow.py::test_file_system_uri_supported
10.10s call     tests/test_prior.py::test_censored_logp[scalar]
9.73s setup    tests/customer_choice/test_mv_its.py::test_MVITS_saturated[plot_fit]
9.05s call     tests/test_mlflow.py::test_autolog_pymc_model[nutpie]
7.34s setup    tests/test_model_builder.py::test_save_input_params
6.39s setup    tests/test_prior.py::test_censored_normal_logp[-10]
5.36s call     tests/test_model_builder.py::test_second_fit
4.41s call     tests/test_mlflow.py::test_autolog_pymc_model[numpyro]
4.09s call     tests/test_model_builder.py::test_fit_random_seed_reproducibility[int]
3.73s call     tests/test_model_builder.py::test_fit_sampler_config_seed_reproducibility
3.70s call     tests/test_model_builder.py::test_fit_random_seed_reproducibility[rng]
3.50s call     tests/test_mlflow.py::test_log_data_no_data
3.26s call     tests/test_mlflow.py::test_autolog_pymc_model[blackjax]
2.93s call     tests/test_model_builder.py::test_fit_after_prior_keeps_prior
2.54s call     tests/test_model_builder.py::test_empty_sampler_config_fit
1.91s call     tests/test_model_builder.py::test_fit_no_t
1.80s call     tests/customer_choice/test_mv_its.py::test_MVITS_unsaturated[plot_fit-unsaturated_model_bad]
1.15s call     tests/test_prior.py::test_censored_logp[vector]
1.14s call     tests/test_model_builder.py::test_save_load
1.08s call     tests/test_mlflow.py::test_autolog_pymc_model[pymc]
0.76s call     tests/test_plot.py::test_plot_functions[no_legend-different_axes-plot_samples]
0.73s call     tests/test_prior.py::test_censored_sample_prior
0.66s call     tests/test_prior.py::test_custom_transform
0.54s call     tests/test_model_builder.py::test_fit
0.52s call     tests/customer_choice/test_mv_its.py::test_save_load
0.40s call     tests/customer_choice/test_mv_its.py::test_MVITS_unsaturated[plot_fit-unsaturated_model_good]
0.35s call     tests/test_plot.py::test_plot_curve_custom_sel_to_string
0.35s call     tests/test_plot.py::test_plot_curve_custom_colors
0.35s call     tests/test_plot.py::test_plot_curve
0.32s call     tests/test_plot.py::test_plot_functions[legend-different_axes-plot_samples]
0.23s call     tests/test_mlflow.py::test_log_mmm_evaluation_metrics
0.18s call     tests/test_plot.py::test_plot_curve_supply_axes_same_axes
0.17s call     tests/test_plot.py::test_plot_functions[legend-same_axes-plot_samples]
0.16s call     tests/test_model_builder.py::test_sample_xxx_predictive_keeps_second[prior_predictive]
0.16s 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/customer_choice/test_mv_its.py::test_MVITS_saturated[plot_fit]
0.10s call     tests/test_prior.py::test_create_variable
0.10s call     tests/test_model_builder.py::test_insufficient_attrs
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/customer_choice/test_mv_its.py::test_MVITS_unsaturated[plot_counterfactual-unsaturated_model_bad]
0.09s 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_fit_sampler_config_with_rng_fails
0.08s call     tests/customer_choice/test_mv_its.py::test_MVITS_saturated[plot_counterfactual]
0.08s call     tests/test_plot.py::test_plot_functions[legend-different_axes-plot_hdi]
================= 217 passed, 27 warnings in 238.78s (0:03:58) =================
(12 minutes 12 seconds) test (3.12, true, tests/mmm --ignore tests/mmm/test_tvp.py --ignore tests/mmm/test_budget_optimiz...
============================= slowest 50 durations =============================
31.94s call     tests/mmm/test_mmm.py::TestMMM::test_allocate_budget_to_maximize_response
18.98s 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]
13.98s call     tests/mmm/test_lift_test.py::test_works_with_negative_delta
13.08s call     tests/mmm/test_base.py::test_calling_fit_result_before_fit_raises_error
11.29s call     tests/mmm/components/test_adstock.py::test_apply[x1-channel-delayed]
11.13s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-delayed]
10.77s call     tests/mmm/test_linear_trend.py::test_apply[with_intercept]
9.90s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-weibull_pdf]
8.70s call     tests/mmm/test_mmm.py::TestMMM::test_channel_contributions_forward_pass_is_consistent
8.24s call     tests/mmm/test_utility.py::test_mean_tightness_score
8.04s call     tests/mmm/test_media_transformation.py::test_apply_media_transformation[scalar-vector]
7.27s call     tests/mmm/test_linear_trend.py::test_apply_additional_dims[scalar]
7.01s call     tests/mmm/test_utility.py::test_conditional_value_at_risk
6.41s call     tests/mmm/test_media_transformation.py::test_apply_media_transformation[scalar-scalar]
4.66s call     tests/mmm/test_mmm.py::test_save_load_with_tvp[True-True]
4.52s call     tests/mmm/test_media_transformation.py::test_apply_media_transformation[vector-scalar]
4.25s setup    tests/mmm/test_mmm.py::test_save_load_with_media_transformation
4.23s 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.16s call     tests/mmm/test_fourier.py::test_sample_curve
4.01s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-geometric]
3.99s call     tests/mmm/components/test_adstock.py::test_apply[x0-None-weibull_cdf]
3.77s 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.75s call     tests/mmm/test_mmm.py::test_save_load_with_tvp[True-False]
3.73s 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.67s call     tests/mmm/components/test_base.py::test_transform_sample_curve_with_variable_factory
3.55s call     tests/mmm/test_utility.py::test_sharpe_ratio
3.52s call     tests/mmm/test_mmm.py::test_save_load_with_tvp[False-True]
3.46s call     tests/mmm/test_utility.py::test_covariance_matrix_matches_numpy[data0]
3.17s call     tests/mmm/test_mmm.py::test_channel_contributions_forward_pass_time_varying_media
3.14s 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]
3.10s 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]
3.10s 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.96s call     tests/mmm/test_mmm.py::test_plotting_media_transform_workflow[adstock]
2.94s call     tests/mmm/test_mmm.py::TestMMM::test_save_load_with_not_serializable_model_config
2.91s call     tests/mmm/test_utility.py::test_tail_distance[100-30-100-50-greater]
2.87s 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=1]
2.52s 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 setup    tests/mmm/test_mmm.py::test_plotting_media_transform_workflow[adstock]
2.47s 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.47s call     tests/mmm/test_fourier.py::test_additional_dimension
2.45s 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.45s call     tests/mmm/test_fourier.py::test_fourier_modes_shape[periods2-1-expected_shape2]
2.44s 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.43s 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.40s 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.37s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-no_yearly_seasonality-multiple_channel-two_controls-adstock_max_lag=4]
2.36s 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.35s 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.31s call     tests/mmm/test_mmm.py::TestMMM::test_init[time_varying_media-time_varying_intercept-yearly_seasonality-multiple_channel-no_control-adstock_max_lag=1]
2.29s call     tests/mmm/components/test_adstock.py::test_apply[x1-channel-weibull_pdf]
================ 833 passed, 125 warnings in 614.91s (0:10:14) =================
(7 minutes 43 seconds) test (3.12, true, tests/mmm/test_tvp.py tests/mmm/test_budget_optimizer.py tests/mmm/test_hsgp.py...
============================= slowest 50 durations =============================
66.75s call     tests/mmm/test_tvp.py::test_time_varying_prior
39.94s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget[default_minimizer_kwargs]
27.40s call     tests/mmm/test_tvp.py::test_multidimensional
18.57s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_adstock_vectorized[PDF]
16.62s call     tests/mmm/test_hsgp.py::test_curve_workflow[HSGP]
10.71s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_vectorized[After]
9.68s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_adstock_vectorized[CDF]
9.47s call     tests/mmm/test_hsgp.py::test_curve_workflow[HSGPPeriodic]
9.04s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x0-1-1-4]
8.34s call     tests/mmm/test_hsgp.py::test_higher_dimension_hsgp
6.68s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x2-0.7-1-100]
5.99s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_geometric_adstock_vectorized_logistic_saturation
4.64s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x2-0.7-1-100]
4.34s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_parameterization_transformation[x0-20-0.5]
4.33s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_vectorized[After]
4.07s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x6-0.8-1-50]
3.96s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_cdf_adsotck[x0-1-1-4]
3.74s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x1-0.7-100]
3.69s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_x_zero[After]
3.43s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x1-0.3-0.5-10]
3.08s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_parameterization_transformation[x1-100-0.5]
2.48s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_vectorized[Before]
2.44s call     tests/mmm/test_tvp.py::test_calling_without_default_args
2.40s 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_bad_alpha[less_than_zero_1]
2.24s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_vectorized[Overlap]
2.23s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x3-0.5-7]
2.16s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_baselined_range[x0-10-0.5-0.5]
2.13s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_hill_sigmoid_monotonicity[1-1-0]
2.12s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x0-0.5-1.0]
2.08s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_delayed_adstock_vectorized_logistic_saturation
2.01s call     tests/mmm/test_transformers.py::test_batched_convolution[ndarray-0-After]
1.99s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget_zero_total[0-budget_bounds0-parameters0-expected_optimal0-2.38e-10]
1.98s 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.94s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_vectorized[Before]
1.85s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x1-0.2-19.0]
1.85s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget_custom_minimize_args
1.80s call     tests/mmm/test_budget_optimizer.py::test_allocate_budget[custom_minimizer_kwargs]
1.78s call     tests/mmm/test_transformers.py::test_batched_convolution[TensorVariable--1-After]
1.78s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x6-0.8-1-50]
1.73s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_vectorized[Overlap]
1.71s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_geometric_adstock_good_alpha[x0-0.3-10]
1.61s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_delayed_adstock_output_type[After]
1.59s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x4-0.5-0.8-7]
1.49s call     tests/mmm/test_hsgp.py::test_hsgp_class_method_ls_upper_changes_distribution
1.46s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_tanh_saturation_baselined_range[x2-10-0.001-0.01]
1.39s call     tests/mmm/test_transformers.py::TestSaturationTransformers::test_hill_sigmoid_sigma_upper_bound[5-2-0.5-1]
1.26s call     tests/mmm/test_transformers.py::TestsAdstockTransformers::test_weibull_pdf_adstock[x3-0.2-0.2-5]
1.25s call     tests/mmm/test_transformers.py::TestTransformersComposition::test_logistic_saturation_geometric_adstock_composition[x4-0.001-0.01]
================= 198 passed, 6 warnings in 354.17s (0:05:54) ==================
(10 minutes 45 seconds) test (3.12, true, tests/clv)
============================= slowest 50 durations =============================
44.13s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_covariate_model_convergence
40.41s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_purchases[1]
25.38s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_expected_purchases[1]
24.02s call     tests/clv/test_utils.py::TestCustomerLifetimeValue::test_customer_lifetime_value_as_gg_method[fitted_pnbd]
23.61s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_distribution_customer_churn_time
22.19s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_posterior_distributions[map]
19.52s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_posterior_distributions[map]
17.35s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_fit_result_without_fit
17.15s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value3-0.3-p3-10-logp3]
15.86s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_logp
14.99s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_logp_matches_lifetimes[batch_shape1]
14.70s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModel::test_spend[True]
12.72s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_probability_alive[6]
12.65s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_probability_alive[3]
12.63s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_probability_alive[1]
12.21s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_expectation_method
11.52s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_save_load
11.43s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_purchases[3]
11.28s call     tests/clv/models/test_beta_geo_beta_binom.py::TestBetaGeoBetaBinomModel::test_expected_purchases[6]
10.74s call     tests/clv/models/test_shifted_beta_geo.py::TestShiftedBetaGeoModel::test_distribution_new_customer
9.85s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_distribution_method
9.33s call     tests/clv/models/test_basic.py::TestCLVModel::test_fit_demz
8.63s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value4-0.55-10.58-0.61-beta4-12]
8.41s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_logp_matches_lifetimes[batch_shape0]
8.09s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_logp_matches_excel
7.75s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value0-0.4-0.15-10--8.39147106159807]
7.14s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_numerically_stable_logp[0-0--0.59947382]
7.02s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value1-lam1-0.15-10-logp1]
6.66s call     tests/clv/test_distributions.py::TestBetaGeoBetaBinom::test_invalid_value_logp
4.68s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value1-r1-10.58-0.61-11.67-12]
3.04s call     tests/clv/models/test_basic.py::TestCLVModel::test_fit_mcmc
3.02s call     tests/clv/test_distributions.py::TestContNonContract::test_continuous_non_contractual[value2-lam2-0.15-10-logp2]
2.92s 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.45s call     tests/clv/test_distributions.py::TestBetaGeoNBD::test_bg_nbd[value3-0.55-11.67-0.61-10.58-T3]
2.33s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value0-0.55-10.58-0.61-11.67-12]
2.32s call     tests/clv/test_distributions.py::TestBetaGeoNBD::test_bg_nbd[value0-0.55-10.58-0.61-11.67-12]
2.25s call     tests/clv/models/test_beta_geo.py::TestBetaGeoModel::test_posterior_distributions[mcmc]
2.13s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModel::test_posterior_distributions[mcmc]
2.08s setup    tests/clv/test_plotting.py::test_plot_expected_purchases_ppc_exceptions
2.07s call     tests/clv/test_plotting.py::test_plot_expected_purchases_ppc[prior-10-100-None]
2.05s call     tests/clv/models/test_pareto_nbd.py::TestParetoNBDModelWithCovariates::test_extract_predictive_covariates
1.87s call     tests/clv/test_distributions.py::TestParetoNBD::test_pareto_nbd[value2-r2-10.58-s2-11.67-12]
1.78s call     tests/clv/models/test_modified_beta_geo.py::TestModifiedBetaGeoModel::test_numerically_stable_logp[0-0--0.41792826]
1.69s call     tests/clv/test_distributions.py::TestBetaGeoNBD::test_bg_nbd[value2-r2-10.58-a2-11.67-12]
1.64s call     tests/clv/test_distributions.py::TestContContract::test_continuous_contractual[value1-lam1-0.15-10-logp1]
1.54s call     tests/clv/models/test_gamma_gamma.py::TestGammaGammaModelIndividual::test_save_load
1.49s 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.39s 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.30s call     tests/clv/test_utils.py::TestCustomerLifetimeValue::test_clv_after_thinning[fitted_pnbd]
=========== 257 passed, 12 skipped, 51 warnings in 533.91s (0:08:53) ===========
(6 minutes 17 seconds) test (3.12, true, --ignore tests/mmm --ignore tests/clv)
============================= slowest 50 durations =============================
80.84s call     tests/test_mlflow.py::test_autolog_mmm
31.20s call     tests/test_mlflow.py::test_clv_fit_mcmc[BetaGeoModel]
22.35s call     tests/test_mlflow.py::test_clv_fit_map[BetaGeoModel]
15.00s call     tests/test_mlflow.py::test_file_system_uri_supported
10.74s call     tests/test_mlflow.py::test_autolog_pymc_model[nutpie]
10.27s call     tests/test_prior.py::test_censored_logp[scalar]
9.77s setup    tests/customer_choice/test_mv_its.py::test_MVITS_saturated[plot_fit]
6.75s setup    tests/test_model_builder.py::test_save_input_params
6.57s setup    tests/test_prior.py::test_censored_normal_logp[-10]
5.38s call     tests/test_model_builder.py::test_second_fit
5.32s call     tests/test_mlflow.py::test_autolog_pymc_model[numpyro]
4.56s call     tests/test_model_builder.py::test_fit_random_seed_reproducibility[rng]
4.15s call     tests/test_model_builder.py::test_fit_random_seed_reproducibility[int]
4.11s call     tests/test_model_builder.py::test_fit_sampler_config_seed_reproducibility
3.97s call     tests/test_mlflow.py::test_autolog_pymc_model[blackjax]
3.94s call     tests/test_mlflow.py::test_log_data_no_data
2.70s 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
1.95s call     tests/test_model_builder.py::test_fit_no_t
1.91s 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.22s call     tests/test_prior.py::test_censored_logp[vector]
1.16s call     tests/test_model_builder.py::test_save_load
0.75s call     tests/test_plot.py::test_plot_curve_custom_sel_to_string
0.73s call     tests/test_prior.py::test_censored_sample_prior
0.66s call     tests/test_prior.py::test_custom_transform
0.60s call     tests/customer_choice/test_mv_its.py::test_save_load
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
0.38s call     tests/test_plot.py::test_plot_curve_custom_colors
0.35s call     tests/test_plot.py::test_plot_functions[no_legend-different_axes-plot_samples]
0.34s call     tests/test_plot.py::test_plot_functions[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_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.15s call     tests/test_model_builder.py::test_fit
0.14s call     tests/test_plot.py::test_plot_functions[legend-same_axes-plot_samples]
0.13s call     tests/test_model_builder.py::test_sample_xxx_predictive_keeps_second[posterior_predictive]
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.10s call     tests/customer_choice/test_mv_its.py::test_MVITS_saturated[plot_fit]
0.09s call     tests/test_plot.py::test_plot_functions[legend-different_axes-plot_hdi]
0.09s call     tests/test_plot.py::test_plot_functions[no_legend-different_axes-plot_hdi]
0.08s setup    tests/test_mlflow.py::test_multi_likelihood_type
0.08s call     tests/customer_choice/test_mv_its.py::test_plot_data
================= 217 passed, 29 warnings in 250.74s (0:04:10) =================

You can find more information on how to contribute here.

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

@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