From 34162c8157d56ee860631ac7b713edfbe9c21e3a Mon Sep 17 00:00:00 2001 From: Kobi Felton Date: Sat, 11 Feb 2023 00:10:44 +0000 Subject: [PATCH] Parallelize tests (#237) * Remove plot visualization * Setup parallel testing --- .github/workflows/ci.yml | 5 +- .test_durations | 193 +++++++++++++++++++++ poetry.lock | 39 ++--- pyproject.toml | 11 +- summit/benchmarks/experimental_emulator.py | 3 - 5 files changed, 219 insertions(+), 32 deletions(-) create mode 100644 .test_durations diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4ba3de4d..965e23ba 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -43,6 +43,7 @@ jobs: strategy: matrix: python: ["3.8", "3.9", "3.10"] + group: [1, 2, 3, 4, 5] steps: - name: Checkout repository @@ -64,11 +65,11 @@ jobs: shell: bash run: | WHL_NAME=$(ls summit-*.whl) - pip install ${WHL_NAME}[experiments,entmoot] pytest + pip install ${WHL_NAME}[experiments,entmoot] pytest pytest-split - name: Run tests shell: bash - run: summit-tests + run: PY_IGNORE_IMPORTMISMATCH=1 pytest --doctest-modules --disable-warnings --ignore=experiments --splits 5 --group ${{ matrix.group }} # Publish to pypi on version change # This is based on https://github.com/coveooss/pypi-publish-with-poetry diff --git a/.test_durations b/.test_durations new file mode 100644 index 00000000..71691990 --- /dev/null +++ b/.test_durations @@ -0,0 +1,193 @@ +{ + "summit/benchmarks/experimental_emulator.py::summit.benchmarks.experimental_emulator.BaumgartnerCrossCouplingEmulator": 0.0028804161120206118, + "summit/benchmarks/experimental_emulator.py::summit.benchmarks.experimental_emulator.ExperimentalEmulator": 0.16585987457074225, + "summit/benchmarks/experimental_emulator.py::summit.benchmarks.experimental_emulator.ExperimentalEmulator.load": 0.19636954087764025, + "summit/benchmarks/experimental_emulator.py::summit.benchmarks.experimental_emulator.ExperimentalEmulator.save": 0.2393556258175522, + "summit/benchmarks/experimental_emulator.py::summit.benchmarks.experimental_emulator.ExperimentalEmulator.train": 0.004319624276831746, + "summit/benchmarks/experimental_emulator.py::summit.benchmarks.experimental_emulator.ReizmanSuzukiEmulator": 0.0034233753103762865, + "summit/benchmarks/experimental_emulator.py::summit.benchmarks.experimental_emulator.get_pretrained_baumgartner_cc_emulator": 0.12654883321374655, + "summit/benchmarks/experimental_emulator.py::summit.benchmarks.experimental_emulator.get_pretrained_reizman_suzuki_emulator": 0.11725170980207622, + "summit/benchmarks/snar.py::summit.benchmarks.snar.SnarBenchmark": 0.00538808386772871, + "summit/benchmarks/test_functions.py::summit.benchmarks.test_functions.Hartmann3D": 0.004243040923029184, + "summit/benchmarks/test_functions.py::summit.benchmarks.test_functions.Himmelblau": 0.004003207897767425, + "summit/benchmarks/test_functions.py::summit.benchmarks.test_functions.ThreeHumpCamel": 0.003981709014624357, + "summit/domain.py::summit.domain.CategoricalVariable": 0.008502626325935125, + "summit/domain.py::summit.domain.Constraint": 0.0007488750852644444, + "summit/domain.py::summit.domain.ContinuousVariable": 0.0006407909095287323, + "summit/domain.py::summit.domain.Domain": 0.0006564159411936998, + "summit/run.py::summit.run.Runner": 0.08046474889852107, + "summit/strategies/base.py::summit.strategies.base.Chimera": 0.028825916117057204, + "summit/strategies/base.py::summit.strategies.base.Design": 0.0010202086996287107, + "summit/strategies/base.py::summit.strategies.base.LogSpaceObjectives": 0.020910751074552536, + "summit/strategies/base.py::summit.strategies.base.MultitoSingleObjective": 0.021709125256165862, + "summit/strategies/deep_reaction_optimizer.py::summit.strategies.deep_reaction_optimizer.DRO": 0.003044332144781947, + "summit/strategies/entmoot.py::summit.strategies.entmoot.ENTMOOT": 0.0009428758639842272, + "summit/strategies/factorial_doe.py::summit.strategies.factorial_doe.FullFactorial": 0.007137791020795703, + "summit/strategies/multitask.py::summit.strategies.multitask.MTBO": 1.3519809159915894, + "summit/strategies/multitask.py::summit.strategies.multitask.MTBO.suggest_experiments": 0.3304593339562416, + "summit/strategies/multitask.py::summit.strategies.multitask.STBO": 0.006252957973629236, + "summit/strategies/neldermead.py::summit.strategies.neldermead.NelderMead": 0.005805832101032138, + "summit/strategies/random.py::summit.strategies.random.LHS": 0.006494124885648489, + "summit/strategies/random.py::summit.strategies.random.Random": 0.005873373942449689, + "summit/strategies/random.py::summit.strategies.random.lhs": 0.003992458572611213, + "summit/strategies/snobfit.py::summit.strategies.snobfit.SNOBFIT": 0.020028248894959688, + "summit/strategies/sobo.py::summit.strategies.sobo.SOBO": 0.025062251137569547, + "summit/strategies/tsemo.py::summit.strategies.tsemo.TSEMO": 0.004354208009317517, + "summit/tests/test_benchmarks.py::test_baumgartner_CC_emulator[False-False]": 0.13930304115638137, + "summit/tests/test_benchmarks.py::test_baumgartner_CC_emulator[False-True]": 0.1584901250898838, + "summit/tests/test_benchmarks.py::test_baumgartner_CC_emulator[True-False]": 0.13903316715732217, + "summit/tests/test_benchmarks.py::test_baumgartner_CC_emulator[True-True]": 0.15710000111721456, + "summit/tests/test_benchmarks.py::test_dltz2_benchmark[6]": 0.006508958991616964, + "summit/tests/test_benchmarks.py::test_no_objectives": 0.0011860420927405357, + "summit/tests/test_benchmarks.py::test_reizman_emulator": 0.20699545880779624, + "summit/tests/test_benchmarks.py::test_snar_benchmark[0.0]": 0.006868125405162573, + "summit/tests/test_benchmarks.py::test_snar_benchmark[2.5]": 0.006350207142531872, + "summit/tests/test_benchmarks.py::test_train_experimental_emulator": 18.459753915900365, + "summit/tests/test_domain.py::test_categorical_variable": 0.0015435838140547276, + "summit/tests/test_domain.py::test_constraint": 0.00025299983099102974, + "summit/tests/test_domain.py::test_continuous_variable": 0.00030824984423816204, + "summit/tests/test_domain.py::test_domain": 0.00664795795455575, + "summit/tests/test_runner.py::test_runner_mo_integration[DTLZ2-LHS]": 0.022482083179056644, + "summit/tests/test_runner.py::test_runner_mo_integration[DTLZ2-NelderMead]": 0.04572600033134222, + "summit/tests/test_runner.py::test_runner_mo_integration[DTLZ2-Random]": 0.020428999327123165, + "summit/tests/test_runner.py::test_runner_mo_integration[DTLZ2-SNOBFIT]": 0.03506545792333782, + "summit/tests/test_runner.py::test_runner_mo_integration[DTLZ2-SOBO]": 0.10477929189801216, + "summit/tests/test_runner.py::test_runner_mo_integration[DTLZ2-TSEMO]": 66.37859041709453, + "summit/tests/test_runner.py::test_runner_mo_integration[SnarBenchmark-LHS]": 0.024271040922030807, + "summit/tests/test_runner.py::test_runner_mo_integration[SnarBenchmark-NelderMead]": 0.05117479106411338, + "summit/tests/test_runner.py::test_runner_mo_integration[SnarBenchmark-Random]": 0.023896666709333658, + "summit/tests/test_runner.py::test_runner_mo_integration[SnarBenchmark-SNOBFIT]": 0.03792516514658928, + "summit/tests/test_runner.py::test_runner_mo_integration[SnarBenchmark-SOBO]": 0.11144283413887024, + "summit/tests/test_runner.py::test_runner_mo_integration[SnarBenchmark-TSEMO]": 61.634299458004534, + "summit/tests/test_runner.py::test_runner_mo_integration[VLMOP2-LHS]": 0.016731292009353638, + "summit/tests/test_runner.py::test_runner_mo_integration[VLMOP2-NelderMead]": 0.032330458983778954, + "summit/tests/test_runner.py::test_runner_mo_integration[VLMOP2-Random]": 0.016654375242069364, + "summit/tests/test_runner.py::test_runner_mo_integration[VLMOP2-SNOBFIT]": 0.03339012525975704, + "summit/tests/test_runner.py::test_runner_mo_integration[VLMOP2-SOBO]": 0.09863324905745685, + "summit/tests/test_runner.py::test_runner_mo_integration[VLMOP2-TSEMO]": 62.96583229186945, + "summit/tests/test_runner.py::test_runner_mo_integration[experiment0-LHS]": 0.00027466798201203346, + "summit/tests/test_runner.py::test_runner_mo_integration[experiment0-NelderMead]": 0.00029020803049206734, + "summit/tests/test_runner.py::test_runner_mo_integration[experiment0-Random]": 0.00028912490233778954, + "summit/tests/test_runner.py::test_runner_mo_integration[experiment0-SNOBFIT]": 0.0003561251796782017, + "summit/tests/test_runner.py::test_runner_mo_integration[experiment0-SOBO]": 0.1487670410424471, + "summit/tests/test_runner.py::test_runner_mo_integration[experiment0-TSEMO]": 210.52943404088728, + "summit/tests/test_runner.py::test_runner_mo_integration[experiment1-LHS]": 0.04513049987144768, + "summit/tests/test_runner.py::test_runner_mo_integration[experiment1-NelderMead]": 0.15109241614118218, + "summit/tests/test_runner.py::test_runner_mo_integration[experiment1-Random]": 0.04452341725118458, + "summit/tests/test_runner.py::test_runner_mo_integration[experiment1-SNOBFIT]": 0.0843225410208106, + "summit/tests/test_runner.py::test_runner_mo_integration[experiment1-SOBO]": 0.1489123331848532, + "summit/tests/test_runner.py::test_runner_mo_integration[experiment1-TSEMO]": 293.86193904210813, + "summit/tests/test_runner.py::test_runner_so_integration[Hartmann3D-LHS]": 0.008857500040903687, + "summit/tests/test_runner.py::test_runner_so_integration[Hartmann3D-NelderMead]": 0.01735212467610836, + "summit/tests/test_runner.py::test_runner_so_integration[Hartmann3D-Random]": 0.008746706880629063, + "summit/tests/test_runner.py::test_runner_so_integration[Hartmann3D-SNOBFIT]": 0.010238625342026353, + "summit/tests/test_runner.py::test_runner_so_integration[Hartmann3D-SOBO]": 0.012094789883121848, + "summit/tests/test_runner.py::test_runner_so_integration[Himmelblau-LHS]": 0.008289917139336467, + "summit/tests/test_runner.py::test_runner_so_integration[Himmelblau-NelderMead]": 0.014168542111292481, + "summit/tests/test_runner.py::test_runner_so_integration[Himmelblau-Random]": 0.008111250819638371, + "summit/tests/test_runner.py::test_runner_so_integration[Himmelblau-SNOBFIT]": 0.010005625197663903, + "summit/tests/test_runner.py::test_runner_so_integration[Himmelblau-SOBO]": 0.012370293028652668, + "summit/tests/test_runner.py::test_runner_so_integration[ThreeHumpCamel-LHS]": 0.00829183286987245, + "summit/tests/test_runner.py::test_runner_so_integration[ThreeHumpCamel-NelderMead]": 0.014060416026040912, + "summit/tests/test_runner.py::test_runner_so_integration[ThreeHumpCamel-Random]": 0.008123415522277355, + "summit/tests/test_runner.py::test_runner_so_integration[ThreeHumpCamel-SNOBFIT]": 0.009760623099282384, + "summit/tests/test_runner.py::test_runner_so_integration[ThreeHumpCamel-SOBO]": 0.011465708957985044, + "summit/tests/test_runner.py::test_runner_so_integration[experiment3-LHS]": 0.06344574992544949, + "summit/tests/test_runner.py::test_runner_so_integration[experiment3-NelderMead]": 0.1532965840306133, + "summit/tests/test_runner.py::test_runner_so_integration[experiment3-Random]": 0.06305954279378057, + "summit/tests/test_runner.py::test_runner_so_integration[experiment3-SNOBFIT]": 0.07175970892421901, + "summit/tests/test_runner.py::test_runner_so_integration[experiment3-SOBO]": 0.06435650098137558, + "summit/tests/test_runner.py::test_runner_unit[NeptuneRunner-1-5-1-10]": 0.0014508331660181284, + "summit/tests/test_runner.py::test_runner_unit[NeptuneRunner-1-5-1-1]": 0.001511541660875082, + "summit/tests/test_runner.py::test_runner_unit[NeptuneRunner-1-5-5-10]": 0.0014402922242879868, + "summit/tests/test_runner.py::test_runner_unit[NeptuneRunner-1-5-5-1]": 0.001495875185355544, + "summit/tests/test_runner.py::test_runner_unit[NeptuneRunner-1-None-1-10]": 0.0017517071682959795, + "summit/tests/test_runner.py::test_runner_unit[NeptuneRunner-1-None-1-1]": 0.0015471240039914846, + "summit/tests/test_runner.py::test_runner_unit[NeptuneRunner-1-None-5-10]": 0.0014542089775204659, + "summit/tests/test_runner.py::test_runner_unit[NeptuneRunner-1-None-5-1]": 0.0014819579664617777, + "summit/tests/test_runner.py::test_runner_unit[NeptuneRunner-5-5-1-10]": 0.0014309999532997608, + "summit/tests/test_runner.py::test_runner_unit[NeptuneRunner-5-5-1-1]": 0.0015229990240186453, + "summit/tests/test_runner.py::test_runner_unit[NeptuneRunner-5-5-5-10]": 0.0014275838620960712, + "summit/tests/test_runner.py::test_runner_unit[NeptuneRunner-5-5-5-1]": 0.0015219161286950111, + "summit/tests/test_runner.py::test_runner_unit[NeptuneRunner-5-None-1-10]": 0.0014336253516376019, + "summit/tests/test_runner.py::test_runner_unit[NeptuneRunner-5-None-1-1]": 0.001511499984189868, + "summit/tests/test_runner.py::test_runner_unit[NeptuneRunner-5-None-5-10]": 0.0014310397673398256, + "summit/tests/test_runner.py::test_runner_unit[NeptuneRunner-5-None-5-1]": 0.0014997071120887995, + "summit/tests/test_runner.py::test_runner_unit[Runner-1-5-1-10]": 0.06810687482357025, + "summit/tests/test_runner.py::test_runner_unit[Runner-1-5-1-1]": 0.025623291730880737, + "summit/tests/test_runner.py::test_runner_unit[Runner-1-5-5-10]": 0.20943637494929135, + "summit/tests/test_runner.py::test_runner_unit[Runner-1-5-5-1]": 0.03984716720879078, + "summit/tests/test_runner.py::test_runner_unit[Runner-1-None-1-10]": 0.06902904203161597, + "summit/tests/test_runner.py::test_runner_unit[Runner-1-None-1-1]": 0.028223583009094, + "summit/tests/test_runner.py::test_runner_unit[Runner-1-None-5-10]": 0.21114112506620586, + "summit/tests/test_runner.py::test_runner_unit[Runner-1-None-5-1]": 0.04036216717213392, + "summit/tests/test_runner.py::test_runner_unit[Runner-5-5-1-10]": 0.06941070780158043, + "summit/tests/test_runner.py::test_runner_unit[Runner-5-5-1-1]": 0.025573250139132142, + "summit/tests/test_runner.py::test_runner_unit[Runner-5-5-5-10]": 0.20944154192693532, + "summit/tests/test_runner.py::test_runner_unit[Runner-5-5-5-1]": 0.04083641618490219, + "summit/tests/test_runner.py::test_runner_unit[Runner-5-None-1-10]": 0.06794670759700239, + "summit/tests/test_runner.py::test_runner_unit[Runner-5-None-1-1]": 0.02559074992313981, + "summit/tests/test_runner.py::test_runner_unit[Runner-5-None-5-10]": 0.20797933381982148, + "summit/tests/test_runner.py::test_runner_unit[Runner-5-None-5-1]": 0.039779959013685584, + "summit/tests/test_strategies.py::test_doe": 0.0021241263020783663, + "summit/tests/test_strategies.py::test_entmoot[1-1-True-False]": 0.003944917116314173, + "summit/tests/test_strategies.py::test_entmoot[1-200-True-False]": 0.0020879581570625305, + "summit/tests/test_strategies.py::test_entmoot[4-200-False-False]": 0.0021403736900538206, + "summit/tests/test_strategies.py::test_lhs": 0.00583337526768446, + "summit/tests/test_strategies.py::test_logspaceobjectives_transform": 0.004721831995993853, + "summit/tests/test_strategies.py::test_mtbo[20-False-False]": 29.888648875057697, + "summit/tests/test_strategies.py::test_mtbo[20-True-False]": 21.17057845904492, + "summit/tests/test_strategies.py::test_multitosingleobjective_transform": 0.00519745796918869, + "summit/tests/test_strategies.py::test_nm2D[False-False-x_start0]": 0.5504108327440917, + "summit/tests/test_strategies.py::test_nm2D[False-False-x_start1]": 0.5291824999731034, + "summit/tests/test_strategies.py::test_nm2D[False-False-x_start2]": 0.5367747510317713, + "summit/tests/test_strategies.py::test_nm2D[False-False-x_start3]": 0.19781883317045867, + "summit/tests/test_strategies.py::test_nm2D[False-False-x_start4]": 0.4797362079843879, + "summit/tests/test_strategies.py::test_nm2D[False-True-x_start0]": 0.711228916188702, + "summit/tests/test_strategies.py::test_nm2D[False-True-x_start1]": 0.7951799172442406, + "summit/tests/test_strategies.py::test_nm2D[False-True-x_start2]": 0.7501638350076973, + "summit/tests/test_strategies.py::test_nm2D[False-True-x_start3]": 0.23069662600755692, + "summit/tests/test_strategies.py::test_nm2D[False-True-x_start4]": 0.6294994160998613, + "summit/tests/test_strategies.py::test_nm2D[True-False-x_start0]": 1.3766254158690572, + "summit/tests/test_strategies.py::test_nm2D[True-False-x_start1]": 1.1558928748127073, + "summit/tests/test_strategies.py::test_nm2D[True-False-x_start2]": 0.8857064172625542, + "summit/tests/test_strategies.py::test_nm2D[True-False-x_start3]": 0.2579910010099411, + "summit/tests/test_strategies.py::test_nm2D[True-False-x_start4]": 0.7630787908565253, + "summit/tests/test_strategies.py::test_nm2D[True-True-x_start0]": 0.7319635418243706, + "summit/tests/test_strategies.py::test_nm2D[True-True-x_start1]": 0.6921850829385221, + "summit/tests/test_strategies.py::test_nm2D[True-True-x_start2]": 0.6975888339802623, + "summit/tests/test_strategies.py::test_nm2D[True-True-x_start3]": 0.24832783290185034, + "summit/tests/test_strategies.py::test_nm2D[True-True-x_start4]": 0.6559557500295341, + "summit/tests/test_strategies.py::test_nm3D[x_start0-True-True]": 1.465338874841109, + "summit/tests/test_strategies.py::test_nm3D[x_start1-True-False]": 1.1909232093021274, + "summit/tests/test_strategies.py::test_nm3D[x_start10-True-True]": 0.541453291894868, + "summit/tests/test_strategies.py::test_nm3D[x_start11-True-False]": 0.46658570785075426, + "summit/tests/test_strategies.py::test_nm3D[x_start12-False-True]": 0.5665520001202822, + "summit/tests/test_strategies.py::test_nm3D[x_start13-False-False]": 0.454463625093922, + "summit/tests/test_strategies.py::test_nm3D[x_start2-False-True]": 1.3782533747144043, + "summit/tests/test_strategies.py::test_nm3D[x_start3-False-False]": 1.175968041876331, + "summit/tests/test_strategies.py::test_nm3D[x_start4-True-False]": 0.5950960838235915, + "summit/tests/test_strategies.py::test_nm3D[x_start5-False-False]": 0.6289865840226412, + "summit/tests/test_strategies.py::test_nm3D[x_start6-True-True]": 0.537621249910444, + "summit/tests/test_strategies.py::test_nm3D[x_start7-True-False]": 0.750423084013164, + "summit/tests/test_strategies.py::test_nm3D[x_start8-False-True]": 0.5330263751093298, + "summit/tests/test_strategies.py::test_nm3D[x_start9-False-False]": 0.7244379580952227, + "summit/tests/test_strategies.py::test_random": 0.005873125279322267, + "summit/tests/test_strategies.py::test_snobfit[False-False-1]": 2.494571916060522, + "summit/tests/test_strategies.py::test_snobfit[False-False-2]": 1.3886395012959838, + "summit/tests/test_strategies.py::test_snobfit[False-False-4]": 2.160413125064224, + "summit/tests/test_strategies.py::test_snobfit[False-True-1]": 2.737286083167419, + "summit/tests/test_strategies.py::test_snobfit[False-True-2]": 1.6200418742373586, + "summit/tests/test_strategies.py::test_snobfit[False-True-4]": 2.0966434159781784, + "summit/tests/test_strategies.py::test_sobo[1-1-True-True]": 0.013362958328798413, + "summit/tests/test_strategies.py::test_sobo[1-200-True-False]": 0.1966916259843856, + "summit/tests/test_strategies.py::test_sobo[1-200-True-True]": 0.1432115000206977, + "summit/tests/test_strategies.py::test_sobo[4-200-False-False]": 0.43735779193229973, + "summit/tests/test_strategies.py::test_sobo[4-200-False-True]": 2.1351462081074715, + "summit/tests/test_strategies.py::test_strategy": 0.00029858388006687164, + "summit/tests/test_strategies.py::test_tsemo[10]": 19.006217750022188, + "summit/tests/test_strategies.py::test_tsemo[1]": 53.60011858283542, + "summit/tests/test_strategies.py::test_tsemo[2]": 32.46155295916833, + "summit/tests/test_utils.py::test_dataset": 0.0023060000967234373, + "summit/utils/dataset.py::summit.utils.dataset.DataSet": 0.003824874060228467 +} \ No newline at end of file diff --git a/poetry.lock b/poetry.lock index 522866c0..e1b81166 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1604,6 +1604,17 @@ toml = "*" [package.extras] testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "requests", "xmlschema"] +[[package]] +name = "pytest-split" +version = "0.8.0" +description = "Pytest plugin which splits the test suite to equally sized sub suites based on test execution time." +category = "dev" +optional = false +python-versions = ">=3.7.1,<4.0" + +[package.dependencies] +pytest = ">=5,<8" + [[package]] name = "python-dateutil" version = "2.8.2" @@ -2345,7 +2356,7 @@ name = "wheel" version = "0.38.1" description = "A built-package format for Python" category = "main" -optional = false +optional = true python-versions = ">=3.7" [package.extras] @@ -2380,7 +2391,7 @@ experiments = ["neptune-client", "hiplot", "paramiko", "pyrecorder", "xlrd", "st [metadata] lock-version = "1.1" python-versions = "^3.8, <3.11" -content-hash = "5d8e958b74ba1feed830212a8a8780634b469b22268839f5521aaae0dd7a2f5a" +content-hash = "2712409f075a9943ca92d3059af8fcf6404c03ae460fb59adc2ac67ae08b332b" [metadata.files] alabaster = [ @@ -2502,16 +2513,6 @@ brotli = [ {file = "Brotli-1.0.9-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b83bb06a0192cccf1eb8d0a28672a1b79c74c3a8a5f2619625aeb6f28b3a82bb"}, {file = "Brotli-1.0.9-cp310-cp310-win32.whl", hash = "sha256:26d168aac4aaec9a4394221240e8a5436b5634adc3cd1cdf637f6645cecbf181"}, {file = "Brotli-1.0.9-cp310-cp310-win_amd64.whl", hash = "sha256:622a231b08899c864eb87e85f81c75e7b9ce05b001e59bbfbf43d4a71f5f32b2"}, - {file = "Brotli-1.0.9-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:cc0283a406774f465fb45ec7efb66857c09ffefbe49ec20b7882eff6d3c86d3a"}, - {file = "Brotli-1.0.9-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:11d3283d89af7033236fa4e73ec2cbe743d4f6a81d41bd234f24bf63dde979df"}, - {file = "Brotli-1.0.9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c1306004d49b84bd0c4f90457c6f57ad109f5cc6067a9664e12b7b79a9948ad"}, - {file = "Brotli-1.0.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b1375b5d17d6145c798661b67e4ae9d5496920d9265e2f00f1c2c0b5ae91fbde"}, - {file = "Brotli-1.0.9-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cab1b5964b39607a66adbba01f1c12df2e55ac36c81ec6ed44f2fca44178bf1a"}, - {file = "Brotli-1.0.9-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:8ed6a5b3d23ecc00ea02e1ed8e0ff9a08f4fc87a1f58a2530e71c0f48adf882f"}, - {file = "Brotli-1.0.9-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:cb02ed34557afde2d2da68194d12f5719ee96cfb2eacc886352cb73e3808fc5d"}, - {file = "Brotli-1.0.9-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:b3523f51818e8f16599613edddb1ff924eeb4b53ab7e7197f85cbc321cdca32f"}, - {file = "Brotli-1.0.9-cp311-cp311-win32.whl", hash = "sha256:ba72d37e2a924717990f4d7482e8ac88e2ef43fb95491eb6e0d124d77d2a150d"}, - {file = "Brotli-1.0.9-cp311-cp311-win_amd64.whl", hash = "sha256:3ffaadcaeafe9d30a7e4e1e97ad727e4f5610b9fa2f7551998471e3736738679"}, {file = "Brotli-1.0.9-cp35-cp35m-macosx_10_6_intel.whl", hash = "sha256:c83aa123d56f2e060644427a882a36b3c12db93727ad7a7b9efd7d7f3e9cc2c4"}, {file = "Brotli-1.0.9-cp35-cp35m-manylinux1_i686.whl", hash = "sha256:6b2ae9f5f67f89aade1fab0f7fd8f2832501311c363a21579d02defa844d9296"}, {file = "Brotli-1.0.9-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:68715970f16b6e92c574c30747c95cf8cf62804569647386ff032195dc89a430"}, @@ -2556,17 +2557,7 @@ brotli = [ {file = "Brotli-1.0.9-cp39-cp39-win32.whl", hash = "sha256:cfc391f4429ee0a9370aa93d812a52e1fee0f37a81861f4fdd1f4fb28e8547c3"}, {file = "Brotli-1.0.9-cp39-cp39-win_amd64.whl", hash = "sha256:854c33dad5ba0fbd6ab69185fec8dab89e13cda6b7d191ba111987df74f38761"}, {file = "Brotli-1.0.9-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:9749a124280a0ada4187a6cfd1ffd35c350fb3af79c706589d98e088c5044267"}, - {file = "Brotli-1.0.9-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:73fd30d4ce0ea48010564ccee1a26bfe39323fde05cb34b5863455629db61dc7"}, - {file = "Brotli-1.0.9-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:02177603aaca36e1fd21b091cb742bb3b305a569e2402f1ca38af471777fb019"}, {file = "Brotli-1.0.9-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:76ffebb907bec09ff511bb3acc077695e2c32bc2142819491579a695f77ffd4d"}, - {file = "Brotli-1.0.9-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:b43775532a5904bc938f9c15b77c613cb6ad6fb30990f3b0afaea82797a402d8"}, - {file = "Brotli-1.0.9-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:5bf37a08493232fbb0f8229f1824b366c2fc1d02d64e7e918af40acd15f3e337"}, - {file = "Brotli-1.0.9-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:330e3f10cd01da535c70d09c4283ba2df5fb78e915bea0a28becad6e2ac010be"}, - {file = "Brotli-1.0.9-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:e1abbeef02962596548382e393f56e4c94acd286bd0c5afba756cffc33670e8a"}, - {file = "Brotli-1.0.9-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:3148362937217b7072cf80a2dcc007f09bb5ecb96dae4617316638194113d5be"}, - {file = "Brotli-1.0.9-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:336b40348269f9b91268378de5ff44dc6fbaa2268194f85177b53463d313842a"}, - {file = "Brotli-1.0.9-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3b8b09a16a1950b9ef495a0f8b9d0a87599a9d1f179e2d4ac014b2ec831f87e7"}, - {file = "Brotli-1.0.9-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:c8e521a0ce7cf690ca84b8cc2272ddaf9d8a50294fd086da67e517439614c755"}, {file = "Brotli-1.0.9.zip", hash = "sha256:4d1b810aa0ed773f81dceda2cc7b403d01057458730e309856356d4ef4188438"}, ] cachetools = [ @@ -3620,6 +3611,10 @@ pytest = [ {file = "pytest-6.2.5-py3-none-any.whl", hash = "sha256:7310f8d27bc79ced999e760ca304d69f6ba6c6649c0b60fb0e04a4a77cacc134"}, {file = "pytest-6.2.5.tar.gz", hash = "sha256:131b36680866a76e6781d13f101efb86cf674ebb9762eb70d3082b6f29889e89"}, ] +pytest-split = [ + {file = "pytest-split-0.8.0.tar.gz", hash = "sha256:8571a3f60ca8656c698ed86b0a3212bb9e79586ecb201daef9988c336ff0e6ff"}, + {file = "pytest_split-0.8.0-py3-none-any.whl", hash = "sha256:2e06b8b1ab7ceb19d0b001548271abaf91d12415a8687086cf40581c555d309f"}, +] python-dateutil = [ {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, diff --git a/pyproject.toml b/pyproject.toml index 45e90cb9..6da270ca 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -2,7 +2,7 @@ name = "summit" version = "0.8.8" description = "Tools for optimizing chemical processes" -authors = ["Kobi Felton ", "Jan Rittig"] +authors = ["Kobi Felton "] license = "MIT" readme = 'README.md' repository = "https://github.com/sustainable-processes/summit" @@ -85,14 +85,15 @@ docs = [ "sphinx-reredirects", ] -[tool.poetry.dev-dependencies] +[tool.poetry.scripts] +summit-tests = 'summit:run_tests' + +[tool.poetry.group.dev.dependencies] +pytest-split = "^0.8.0" ipdb = "0.13.4" rope = "^0.17.0" black = { version = "^20.8b1", allow-prereleases = true } -[tool.poetry.scripts] -summit-tests = 'summit:run_tests' - [build-system] requires = ["poetry>=0.12"] build-backend = "poetry.masonry.api" diff --git a/summit/benchmarks/experimental_emulator.py b/summit/benchmarks/experimental_emulator.py index a37f6b69..6201b313 100644 --- a/summit/benchmarks/experimental_emulator.py +++ b/summit/benchmarks/experimental_emulator.py @@ -127,7 +127,6 @@ class ExperimentalEmulator(Experiment): >>> res = exp.train(max_epochs=10, cv_folds=2, random_state=100, test_size=0.2) >>> # Plot to show the quality of the fit >>> fig, ax = exp.parity_plot(include_test=True) - >>> plt.show() >>> # Get scores on the test set >>> scores = exp.test() # doctest: +SKIP @@ -1505,7 +1504,6 @@ def get_pretrained_reizman_suzuki_emulator(case=1): >>> import pandas as pd >>> b = get_pretrained_reizman_suzuki_emulator(case=1) >>> fig, ax = b.parity_plot(include_test=True) - >>> plt.show() >>> columns = [v.name for v in b.domain.variables] >>> values = { "catalyst": ["P1-L3"], "t_res": [600], "temperature": [30],"catalyst_loading": [0.498],} >>> conditions = pd.DataFrame(values) @@ -1663,7 +1661,6 @@ def get_pretrained_baumgartner_cc_emulator(include_cost=False, use_descriptors=F >>> import pandas as pd >>> b = get_pretrained_baumgartner_cc_emulator(include_cost=True, use_descriptors=False) >>> fig, ax = b.parity_plot(include_test=True) - >>> plt.show() >>> columns = [v.name for v in b.domain.variables] >>> values = { "catalyst": ["tBuXPhos"], "base": ["DBU"], "t_res": [328.717801570892],"temperature": [30],"base_equivalents": [2.18301549894049]} >>> conditions = pd.DataFrame(values)