Minutes from 34th OpenVDB TSC meeting, November 28, 2019, (GMT)

Attendees: *Nick* A., *Dan* B., *Jeff* L., *Ken* M.

Regrets: *Peter* C.

Agenda:

1) Confirm quorum
2) Secretary
3) OVDB 117: Nondeterministic Meshing
4) PR Change for leaky mesh.
5) Strange CI Failures?
6) CMake PR from David
7) Release plan for 7.0
8) Curvature methods and gaussian methods
9) Roadmap
10) PR 573: DSO changes
11) OVDB-33: Threadsafety of copy constructor.
12) Merged in Copyright Header changes.
13) PR 566: Update project license.
14) PR 561: Add child node request.
15) PR 493: POPCNT.
16) Spark FX conference BoF?
17) Next meeting

1) Quorum was confirmed.

2) Secretary was Jeff Lait


3) OVDB 117

This is the non deterministic mesh bug.  This was a result of non-reentrancy of threadedlocal storage used for the scratch primitive tree.  Introduced by clear() becoming threaded in 3.2.  If the primitive id ends up being the sentinel value it doesn't reset and instead uses the background value.

Should clear remain multithreaded?  Change how we assign the reset value?  Or change the background value?

Parallel clear does make a difference, so it is justified to have a multithreaded clear().  But the scratch pad should never have got large in any case.  And it is inside a parallel for in any case.

We should check for this pattern of thread local storage elsewhere.

PR will change to serial clear.

4) PR Change for leaky mesh.

Nick will attempt to look at the code change.

5) Strange CI Failures?

"Run Failed" from github when doing a pull request?  Forward these errors to Dan.

6) CMake PR from David

Needed separate PR request to do the final clean up.  Can we directly edit the PR?  This will cause it to persist in their repository.  We should be courteous about it and alert them we plan on changing their PR.  But we reserve the right to modify external users if they have enabled the switch.

We should add to our contribution guidelines that we may change your PR.

7) Release plan for 7.0

Nick will do the release, with Dan providing a checklist.

8) Curvature methods and gaussian methods

No changes in this PR to the SOP.  Adds more curvature options.  Likely will want to add more options to the analysis SOP.

Regarding the free standing functions that are removed.  API of tools has been allowed to change.  Add to the review if we should keep them.

Note the genus computation can become unstable.

9) Roadmap

Should add a roadmap for the release.  Start the discussion after 7.0 release.

10) PR 573: DSO changes

Nick is to inspect.


11) OVDB-33.  Threadsafety of copy constructor.

Must be prioritized for 7.0.  Nick to inspect.

12) Merged in Copyright Header changes.

We should check for any existing copyrights owned by our respective companies.  New files should use the copyright to contributors and SPDX

13) PR 566: Update project license.

Update project license.  Needs second review.

14) PR 561: Add child node request.

Ken to review.

15) PR 493: POPCNT.

Replaced with new PR which is incoming.  Much of the original code was for the deprecated root node mask that is not worth optimizing, so the new PR is smaller.

16) Spark FX conference BoF?

Artist tailored conference.  Dan will follow up and see if he can attend.

17) Next planned meeting is:

December 5th 2019. 2pm-3pm EST (GMT-5).
