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

[tune](deps): Bump optuna from 2.6.0 to 2.7.0 in /python/requirements #14

Closed

Conversation

dependabot[bot]
Copy link

@dependabot dependabot bot commented on behalf of github Apr 26, 2021

Bumps optuna from 2.6.0 to 2.7.0.

Release notes

Sourced from optuna's releases.

v2.7.0

This is the release note for v2.7.0.

Highlights

New optuna-dashboard Repository

A new dashboard optuna-dashboard is being developed in a separate repository under the Optuna organization. Install it with pip install optuna-dashboard and run it with optuna-dashboard $STORAGE_URL. The previous optuna dashboard command is now deprecated.

Deprecate n_jobs Argument of Study.optimize

The GIL has been an issue when using the n_jobs argument for multi-threaded optimization. We decided to deprecate this option in favor of the more stable process-level parallelization. Details available in the tutorial. Users who have been parallelizing at the thread level using the n_jobs argument are encouraged to refer to the tutorial for process-level parallelization.

If the objective function is not affected by the GIL, thread-level parallelism may be useful. You can achieve thread-level parallelization in the following way.

with ThreadPoolExecutor(max_workers=5) as executor:
    for _ in range(5):
        executor.submit(study.optimize, objective, 100)

New Tutorial and Examples

Tutorial pages about the usage of the ask-and-tell interface (#2422) and best_trial (#2427) have been added, as well as an example that demonstrates parallel optimization using Ray (#2298) and an example to explain how to stop the optimization based on the number of completed trials instead of the total number of trials (#2449).

Improved Code Quality

The code quality was improved in terms of bug fixes, third party library support, and platform support.

For instance, the bugs on warm starting CMA-ES and visualization.matplotlib.plot_optimization_history were resolved by #2501 and #2532, respectively.

Third party libraries such as PyTorch, fastai, and AllenNLP were updated. We have updated the corresponding integration modules and examples for the new versions. See #2442, #2550 and #2528 for details.

From this version, we are expanding the platform support. Previously, changes were tested in Linux containers. Now, we also test changes merged into the master branch in macOS containers as well (#2461).

Breaking Changes

  • Deprecate dashboard (#2559)
  • Deprecate n_jobs in Study.optimize (#2560)

New Features

  • Support object representation of StudyDirection for create_study arguments (#2516)

Enhancements

... (truncated)

Commits
  • cfa9011 Merge pull request #2566 from HideakiImamura/release-v2.7.0
  • ca239ad Bump up version to v2.7.0
  • dc79aed Merge pull request #2559 from not522/deprecate-dashboard
  • 1b2a391 Merge pull request #2560 from HideakiImamura/no-more-n-jobs
  • 36c4472 Remove in v3
  • db54050 Add test & add warning to doc of OptunaSearchCV
  • c78e4fb Merge pull request #2558 from not522/deprecated-text
  • 5d26b4a Revert "test name"
  • 507232c Deprecate n_jobs in study.optimize
  • db9471d Remove experimental warning
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

@dependabot dependabot bot force-pushed the dependabot/pip/python/requirements/optuna-2.7.0 branch from a2e430b to 2a08b3e Compare May 5, 2021 16:38
@dependabot dependabot bot force-pushed the dependabot/pip/python/requirements/optuna-2.7.0 branch 2 times, most recently from 3e48bd0 to dffe92f Compare May 19, 2021 02:39
@dependabot dependabot bot force-pushed the dependabot/pip/python/requirements/optuna-2.7.0 branch from dffe92f to ca60fbc Compare May 24, 2021 19:33
@dependabot dependabot bot force-pushed the dependabot/pip/python/requirements/optuna-2.7.0 branch from ca60fbc to ddf5569 Compare June 14, 2021 22:17
@dependabot @github
Copy link
Author

dependabot bot commented on behalf of github Aug 19, 2021

Looks like optuna is up-to-date now, so this is no longer needed.

@dependabot dependabot bot closed this Aug 19, 2021
@dependabot dependabot bot deleted the dependabot/pip/python/requirements/optuna-2.7.0 branch August 19, 2021 21:19
edoakes pushed a commit that referenced this pull request Aug 5, 2022
We encountered SIGSEGV when running Python test `python/ray/tests/test_failure_2.py::test_list_named_actors_timeout`. The stack is:

```
#0  0x00007fffed30f393 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) ()
   from /lib64/libstdc++.so.6
#1  0x00007fffee707649 in ray::RayLog::GetLoggerName() () from /home/admin/dev/Arc/merge/ray/python/ray/_raylet.so
#2  0x00007fffee70aa90 in ray::SpdLogMessage::Flush() () from /home/admin/dev/Arc/merge/ray/python/ray/_raylet.so
#3  0x00007fffee70af28 in ray::RayLog::~RayLog() () from /home/admin/dev/Arc/merge/ray/python/ray/_raylet.so
#4  0x00007fffee2b570d in ray::asio::testing::(anonymous namespace)::DelayManager::Init() [clone .constprop.0] ()
   from /home/admin/dev/Arc/merge/ray/python/ray/_raylet.so
#5  0x00007fffedd0d95a in _GLOBAL__sub_I_asio_chaos.cc () from /home/admin/dev/Arc/merge/ray/python/ray/_raylet.so
#6  0x00007ffff7fe282a in call_init.part () from /lib64/ld-linux-x86-64.so.2
#7  0x00007ffff7fe2931 in _dl_init () from /lib64/ld-linux-x86-64.so.2
#8  0x00007ffff7fe674c in dl_open_worker () from /lib64/ld-linux-x86-64.so.2
#9  0x00007ffff7b82e79 in _dl_catch_exception () from /lib64/libc.so.6
#10 0x00007ffff7fe5ffe in _dl_open () from /lib64/ld-linux-x86-64.so.2
#11 0x00007ffff7d5f39c in dlopen_doit () from /lib64/libdl.so.2
#12 0x00007ffff7b82e79 in _dl_catch_exception () from /lib64/libc.so.6
#13 0x00007ffff7b82f13 in _dl_catch_error () from /lib64/libc.so.6
#14 0x00007ffff7d5fb09 in _dlerror_run () from /lib64/libdl.so.2
#15 0x00007ffff7d5f42a in dlopen@@GLIBC_2.2.5 () from /lib64/libdl.so.2
#16 0x00007fffef04d330 in py_dl_open (self=<optimized out>, args=<optimized out>)
    at /tmp/python-build.20220507135524.257789/Python-3.7.11/Modules/_ctypes/callproc.c:1369
```

The root cause is that when loading `_raylet.so`, `static DelayManager _delay_manager` is initialized and `RAY_LOG(ERROR) << "RAY_testing_asio_delay_us is set to " << delay_env;` is executed. However, the static variables declared in `logging.cc` are not initialized yet (in this case, `std::string RayLog::logger_name_ = "ray_log_sink"`).

It's better not to rely on the initialization order of static variables in different compilation units because it's not guaranteed. I propose to change all `RAY_LOG`s to `std::cerr` in `DelayManager::Init()`.

The crash happens in Ant's internal codebase. Not sure why this test case passes in the community version though.

BTW, I've tried different approaches:

1. Using a static local variable in `get_delay_us` and remove the global variable. This doesn't work because `init()` needs to access the variable as well.
2. Defining the global variable as type `std::unique_ptr<DelayManager>` and initialize it in `get_delay_us`. This works but it requires a lock to be thread-safe.
edoakes pushed a commit that referenced this pull request Oct 10, 2023
Upgrade typepy, typepy 1.3.1 is broken

https://buildkite.com/ray-project/release-tests-branch/builds/2225#018afbb2-428e-4364-b26c-7c49052edd26

#14 80.99 ERROR: In --require-hashes mode, all requirements must have their versions pinned with ==. These do not:
--
  | 2023-10-05 07:42:44 PDT | #14 80.99     typepy<2,>=1.2.0 from https://files.pythonhosted.org/packages/f1/10/0d6dc654bb4e0eca017bbaf43a315b464c888576a68a2883cd4a74bd1b6b/typepy-1.3.2-py3-none-any.whl (from tabledata==1.3.1->-r requirements_ml_byod_3.9.txt (line 2259))

Test:
- CI
- Install requirements_ml_byod_3.9.txt locally

Signed-off-by: can <[email protected]>
edoakes pushed a commit that referenced this pull request Aug 1, 2024
…sume a tune.Tuner.fit() experiment from a checkpoint. (ray-project#45681)
edoakes pushed a commit that referenced this pull request Aug 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant