Skip to content

v0.1.2

Choose a tag to compare

@github-actions github-actions released this 09 Oct 06:29
· 2 commits to master since this release
15710d5

NestedThreading v0.1.2

Diff since v0.1.1

  • quiesce_foreign_pools(): before a Threads.@threads region, registered pools can release Julia's threads, so the region does not wait for spinning workers of another threading library (#3).
  • Soft thread defaults (with_thread_default): run a computation with every registered library at n threads by default, without capping the calls inside it the way a hard with_thread_budget would.
  • Thread grants (with_thread_grant): let a call known to be large enough thread despite a soft default in force. Grants never override a hard limit.
  • Park hooks (register_park_hook!, park_openblas): when a grant closes and a pool's count goes down, the library can release the cores its idle workers would otherwise keep spinning on.
  • A pool is never parked while a partial hard limit is open, and a worker that another task's @batch holds is never parked (#4).

Merged pull requests:

  • feat(registry): let a pool release Julia's threads before a @threads region (#3) (@hakkelt)
  • feat(scopes): soft thread defaults, grants and park hooks (#4) (@hakkelt)