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

[RLlib](deps): Bump tensorflow-probability from 0.12.2 to 0.13.0 in /python/requirements/rllib #16

Conversation

dependabot[bot]
Copy link

@dependabot dependabot bot commented on behalf of github Jun 27, 2021

Bumps tensorflow-probability from 0.12.2 to 0.13.0.

Release notes

Sourced from tensorflow-probability's releases.

TensorFlow Probability 0.13.0

Release notes

This is the 0.13 release of TensorFlow Probability. It is tested and stable against TensorFlow version 2.5.0.

See the visual release notebook in colab.

Change notes

  • Distributions

    • Adds tfd.BetaQuotient
    • Adds tfd.DeterminantalPointProcess
    • Adds tfd.ExponentiallyModifiedGaussian
    • Adds tfd.MatrixNormal and tfd.MatrixT
    • Adds tfd.NormalInverseGaussian
    • Adds tfd.SigmoidBeta
    • Adds tfp.experimental.distribute.Sharded
    • Adds tfd.BatchBroadcast
    • Adds tfd.Masked
    • Adds JAX support for tfd.Zipf
    • Adds Implicit Reparameterization Gradients to tfd.InverseGaussian.
    • Adds quantiles for tfd.{Chi2,ExpGamma,Gamma,GeneralizedNormal,InverseGamma}
    • Derive Distribution batch shapes automatically from parameter annotations.
    • Ensuring Exponential.cdf(x) is always 0 for x < 0.
    • VectorExponentialLinearOperator and VectorExponentialDiag distributions now return variance, covariance, and standard deviation of the correct shape.
    • Bates distribution now returns mean of the correct shape.
    • GeneralizedPareto now returns variance of the correct shape.
    • Deterministic distribution now returns mean, mode, and variance of the correct shape.
    • Ensure that JointDistributionPinned's support bijectors respect autobatching.
    • Now systematically testing log_probs of most distributions for numerical accuracy.
    • InverseGaussian no longer emits negative samples for large loc / concentration
    • GammaGamma, GeneralizedExtremeValue, LogLogistic, LogNormal, ProbitBernoulli should no longer compute nan log_probs on their own samples. VonMisesFisher, Pareto, and GeneralizedExtremeValue should no longer emit samples numerically outside their support.
    • Improve numerical stability of tfd.ContinuousBernoulli and deprecate lims parameter.
  • Bijectors

    • Add bijectors to mimic tf.nest.flatten (tfb.tree_flatten) and tf.nest.pack_sequence_as (tfb.pack_sequence_as).
    • Adds tfp.experimental.bijectors.Sharded
    • Remove deprecated tfb.ScaleTrilL. Use tfb.FillScaleTriL instead.
    • Adds cls.parameter_properties() annotations for Bijectors.
    • Extend range tfb.Power to all reals for odd integer powers.
    • Infer the log-deg-jacobian of scalar bijectors using autodiff, if not otherwise specified.
  • MCMC

    • MCMC diagnostics support arbitrary structures of states, not just lists.
    • remc_thermodynamic_integrals added to tfp.experimental.mcmc
    • Adds tfp.experimental.mcmc.windowed_adaptive_hmc
    • Adds an experimental API for initializing a Markov chain from a near-zero uniform distribution in unconstrained space. tfp.experimental.mcmc.init_near_unconstrained_zero
    • Adds an experimental utility for retrying Markov Chain initialization until an acceptable point is found. tfp.experimental.mcmc.retry_init
    • Shuffling experimental streaming MCMC API to slot into tfp.mcmc with a minimum of disruption.

... (truncated)

Commits
  • 9e50fa3 Graduate 0.13 to full release
  • 49e7f5e Temporarily remove AutoCompositeTensor from bijectors for TFP 0.13 release.
  • 1b1beb7 Add an auto_composite_tensor_bijector decorator for bijectors that preserve...
  • 35932a7 Add non_identifying_kwargs to AutoCompositeTensor. These kwargs are preserv...
  • ed68695 Convert tfb.Invert to AutoCompositeTensor.
  • 0236e5a Add TypeSpec for tfp.util.TransformedVariable.
  • 673ff89 Patch Numpy and JAX backends before converting DeferredTensor and `Transfor...
  • e8d0b53 Refactor AutoCompositeTensorTypeSpecTest.
  • 375eb0b Add tensor_util.identity_as_tensor and use it in place of tf.identity in ...
  • b54bb7b Replace deprecation of parameter_properties inheritance with a 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 added the dependencies Pull requests that update a dependency file label Jun 27, 2021
@dependabot dependabot bot force-pushed the dependabot/pip/python/requirements/rllib/tensorflow-probability-0.13.0 branch from 6a2125c to a67204a Compare June 28, 2021 21:49
Bumps [tensorflow-probability](https://github.com/tensorflow/probability) from 0.12.2 to 0.13.0.
- [Release notes](https://github.com/tensorflow/probability/releases)
- [Commits](tensorflow/probability@v0.12.2...0.13.0)

---
updated-dependencies:
- dependency-name: tensorflow-probability
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot force-pushed the dependabot/pip/python/requirements/rllib/tensorflow-probability-0.13.0 branch from a67204a to 9980efe Compare September 2, 2021 07:08
@dependabot @github
Copy link
Author

dependabot bot commented on behalf of github Sep 16, 2021

Superseded by #34.

@dependabot dependabot bot closed this Sep 16, 2021
@dependabot dependabot bot deleted the dependabot/pip/python/requirements/rllib/tensorflow-probability-0.13.0 branch September 16, 2021 06:52
suquark pushed a commit that referenced this pull request Jul 27, 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.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants