Skip to content

Commit

Permalink
update changelog, bump nvidia docker image
Browse files Browse the repository at this point in the history
  • Loading branch information
wjakob committed Sep 27, 2024
1 parent b1088be commit 81e761e
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 11 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,12 +67,12 @@ jobs:
nvcc:
runs-on: ubuntu-latest
container: nvidia/cuda:12.2.0-devel-ubuntu22.04
container: nvidia/cuda:12.6.1-devel-ubuntu24.04
name: "Python 3 / NVCC (CUDA 12.2)"

steps:
- name: Install dependencies
run: apt-get update && DEBIAN_FRONTEND="noninteractive" apt-get install -y cmake git python3-dev python3-pytest python3-pip libeigen3-dev && python3 -m pip install typing_extensions numpy
run: apt-get update && DEBIAN_FRONTEND="noninteractive" apt-get install -y cmake git python3-dev python3-pytest python3-pip libeigen3-dev python3-typing-extensions python3-numpy

- uses: actions/checkout@v4
with:
Expand Down
21 changes: 12 additions & 9 deletions docs/changelog.rst
Original file line number Diff line number Diff line change
Expand Up @@ -25,19 +25,20 @@ Version 2.2.0 (TBA)
fine-grained locking scheme (see `PEP 703
<https://peps.python.org/pep-0703/>`__) to better leverage multi-core
parallelism. A `separate documation page <free-threading>`__ explains this in
detail. (PRs `#695 <https://github.com/wjakob/nanobind/pull/720>`__, `#720
detail (PRs `#695 <https://github.com/wjakob/nanobind/pull/695>`__, `#720
<https://github.com/wjakob/nanobind/pull/720>`__)

- nanobind has always used `PEP 590 vector calls
<https://www.python.org/dev/peps/pep-0590>`__ to efficiently dispatch calls
to function and method bindings, but it lacked the ability to do so for
constructors (e.g., ``MyType(arg1, arg2, ...)``).

Version 2.2.0 adds this missing part, which accelerates object construction
by up to a factor of 2×. The difference is especially pronounced when passing
keyword arguments to constructors. Note that this improvement only applies to
Python version 3.9 and newer (commits
`#24907b0 <https://github.com/wjakob/nanobind/commit/24907b04a7f52074f41af8a256ac63a945fe5a96>`__,
Version 2.2.0 adds this missing part, which accelerates object
construction by up to a factor of 2×. The difference is
especially pronounced when passing keyword arguments to
constructors. Note that this improvement only applies to
Python version 3.9 and newer (PR
`#706 <https://github.com/wjakob/nanobind/pull/695>`__, commits
`#e24d7f3 <https://github.com/wjakob/nanobind/commit/e24d7f3434a6bbcc33cd8965632dc47f943fb2f8>`__,
`#0acecb4 <https://github.com/wjakob/nanobind/commit/0acecb474874f286119dce2b97b84142b6ada1a8>`__).

Expand All @@ -48,6 +49,7 @@ Version 2.2.0 (TBA)
``^``, and ``~``). Further combining the annotation with
:cpp:class:`nb::is_arithmetic() <is_flag>` creates
enumerations deriving from :py:class:`enum.IntFlag`. (PRs
`#599 <https://github.com/wjakob/nanobind/pull/599>`__,
`#688 <https://github.com/wjakob/nanobind/pull/688>`__,
`#688 <https://github.com/wjakob/nanobind/pull/688>`__,
`#727 <https://github.com/wjakob/nanobind/pull/727>`__,
Expand Down Expand Up @@ -96,7 +98,7 @@ Version 2.2.0 (TBA)

There are two minor but potentially breaking changes:

1. The ndarray type caster now interprets the
1. The nd-array type caster now interprets the
:cpp:enumerator:`nb::rv_policy::automatic_reference
<rv_policy::automatic_reference>` return value policy analogously to the
:cpp:enumerator:`nb::rv_policy::automatic <rv_policy::automatic>`, which
Expand All @@ -109,8 +111,9 @@ Version 2.2.0 (TBA)
which previously did nothing, now accepts C- or F-contiguous arrays and
rejects non-contiguous ones.

PR `#721 <https://github.com/wjakob/nanobind/pull/721>`__
and commit `4647ef
For further details on the nd-array changes, see PR `#721
<https://github.com/wjakob/nanobind/pull/721>`__ and commit
`4647ef
<https://github.com/wjakob/nanobind/commit/4647efcc45d96e530d41a3461cd9727656bc2ca3>`__.

- The NVIDIA CUDA compiler (``nvcc``) is now explicitly supported and included
Expand Down

0 comments on commit 81e761e

Please sign in to comment.