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

Bump thinc from 6.10.0 to 6.12.1 #137

Closed
wants to merge 1 commit into from

Conversation

dependabot-preview[bot]
Copy link

Bumps thinc from 6.10.0 to 6.12.1.

Release notes

Sourced from thinc's releases.

v6.12.1: Fix messagepack pin

🔴 Bug fixes

v6.12.0: Wheels and separate GPU ops

✨ New features and improvements

  • Update dependencies to be able to provide binary wheels.
  • Move GPU ops to separate package, thinc_gpu_ops.
  • Support pip specifiers for GPU installation, e.g. pip install thinc[cuda92].

🔴 Bug fixes

  • Update murmurhash pin to accept newer version.

v6.11.2: Improve GPU installation

✨ New features and improvements

You can now require GPU capability using the pip "extras" syntax. Thinc also now expects CUDA to be installed at /usr/local/cuda by default. If you've installed it elsewhere, you can specify the location with the CUDA_HOME environment variable. Once Thinc is able to find CUDA, you can tell pip to install Thinc with cupy, as follows:

  • thinc[cuda]: Install cupy from source (compatible with a range of cuda versions)
  • thinc[cuda80]: Install the cupy-cuda80 wheel
  • thinc[cuda90]: Install the cupy-cuda90 wheel
  • thinc[cuda91]: Install the cupy-cuda91 wheel

If you're installing Thinc from a local wheel file, the syntax for adding an "extras" specifier is a bit unintuitive. The trick is to make the file path into a URL, so you can use an #egg clause, as follows:

pip install file://path/to/wheel#egg=thinc[cuda]

6.11.1: Support direct linkage to BLAS libraries

✨ New features and improvements

  • Thinc now vendorizes OpenBLAS's cblas_sgemm function, and delegates matrix multiplications to it by default. The provided function is single-threaded, making it easy to call Thinc from multiple processes. The default sgemm function can be overridden using the THINC_BLAS environment variable --- see below.
  • thinc.neural.util.get_ops now understands device integers, e.g. 0 for GPU 0, as well as strings like "cpu" and "cupy".
  • Update StaticVectors model, to make use of spaCy v2.0's Vectors class.
  • New .gemm() method on NumpyOps and CupyOps classes, allowing matrix and vector multiplication to be handled with a simple function. Example usage:

Customizing the matrix multiplication backend

Previous versions of Thinc have relied on numpy for matrix multiplications. When numpy is installed via wheel using pip (the default), numpy will usually be linked against a suboptimal matrix multiplication kernel. This made it difficult to ensure that Thinc was well optimized for the target machine.

To fix this, Thinc now provides its own matrix multiplications, by bundling the source code for OpenBLAS's sgemm kernel within the library. To change the default BLAS library, you can specify an environment variable, giving the location of the shared library you want to link against:

THINC_BLAS=/opt/openblas/lib/libopenblas.so pip install thinc --no-cache-dir --no-binary
export LD_LIBRARY_PATH=/opt/openblas/lib
</tr></table> ... (truncated)
Commits

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 cancel merge will cancel a previously requested merge
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot ignore this [patch|minor|major] version will close this PR and stop Dependabot creating any more for this minor/major 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 use these labels will set the current labels as the default for future PRs for this repo and language
  • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
  • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
  • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
  • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

Additionally, you can set the following in your Dependabot dashboard:

  • Update frequency (including time of day and day of week)
  • Automerge options (never/patch/minor, and dev/runtime dependencies)
  • Pull request limits (per update run and/or open at any time)
  • Out-of-range updates (receive only lockfile updates, if desired)
  • Security updates (receive only security updates, if desired)

Finally, you can contact us by mentioning @dependabot.

Bumps [thinc](https://github.com/explosion/thinc) from 6.10.0 to 6.12.1.
- [Release notes](https://github.com/explosion/thinc/releases)
- [Commits](explosion/thinc@v6.10.0...v6.12.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
@dependabot-preview
Copy link
Author

Superseded by #155.

@dependabot-preview dependabot-preview bot deleted the dependabot/pip/thinc-6.12.1 branch February 18, 2019 10:14
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