Revision 14f3b2c by Campbell Barton June 9, 2021, 14:55 (GMT) |
BLI_task: add TLS support to BLI_task_parallel_mempool Support thread local storage for BLI_task_parallel_mempool, as well as support for the reduce and free callbacks. mempool_iter_threadsafe_* functions have been moved into a private header thats only shared between task_iterator.c and BLI_mempool.c so the TLS can be made part of the iterator array without having to rely on passing in struct offsets. Add test task.MempoolIterTLS that ensures reduce and free are working as expected. Reviewed By: mont29 Ref D11548 |
June 9, 2021, 14:46 (GMT) |
GPencil: Add custom normal entry to bGPDspoint. Also modified existing utility functions to take care of the new surface normal interpolation and so on. Reviewed By: Antonio Vazquez (antoniov) Differential Revision: https://developer.blender.org/D11543 |
Revision 92ae3ff by Bastien Montagne June 9, 2021, 14:33 (GMT) |
Fix assigning material to linked object being forbidden in BKE. While this should not be allowed in general, there are some cases (library overrides at least) where supporting this is mandatory. Further more, comment stating that this could crash is from 2011, could not reproduce any issue with current code. Commit comment was referring to undo/redo, but in use cases here those should not affect things. Note that in general, such relatively high-level checks should be handled by high-level, close to user code (like in ED area e.g.), not in low-level BKE code anyway. |
Revision 5954b35 by Jeroen Bakker June 9, 2021, 14:31 (GMT) |
Cleanup: Removed unused definition. |
Revision 33c4eef by Hans Goudey June 9, 2021, 14:28 (GMT) |
Cleanup: Comment formatting |
Revision 6e999e0 by Jeroen Bakker June 9, 2021, 14:20 (GMT) |
T88352: Use threaded ibo.tris extraction for single material meshes. This patch adds a specific extraction method when the mesh has only one material. This method is multi-threaded. There is a trade-off in this patch as the ibo isn't compressed (it adds restart indexes for hidden faces). So it depends if threading is faster than the additional GPU buffer upload. # Subdivided cube I used a cube subdivided 7 times, modifiers applied. that gives around 400000 faces. The test is selecting some vertices and move them. During this test the next buffers are updated on each frame: * vbo.pos_nor * vbo.lnor * vbo.edit_data * ibo.tris * ibo.points System info: |platform| Linux-5.11.0-7614-generic-x86_64-with-glibc2.33| | renderer| AMD SIENNA_CICHLID (DRM 3.40.0, 5.11.0-7614-generic, LLVM 11.0.1)| |vendor| AMD| |version| 4.6 (Core Profile) Mesa 21.0.1| |cpu| Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz| |compiler| gcc version 10.3.0| Timing have been measured using DEBUG_TIME in `draw_cache_extract_mesh`. master: `rdata 8ms iter 45ms (frame 153ms)` this patch `rdata 6ms iter 36ms (frame 132ms)` Reviewed By: mano-wii Maniphest Tasks: T88352 Differential Revision: https://developer.blender.org/D11290 |
Revision ec98bb3 by Hans Goudey June 9, 2021, 14:13 (GMT) |
UI: Add the option to not display some socket labels This commit adds a flag to disable displaying some socket labels which just redundant eye sores. We still want to have a label, because that information can potentially be accessed elsewhere in the UI. The flag is used in a few geometry nodes. Differential Revision: https://developer.blender.org/D11540 |
Revision 3a7ab62 by Germano Cavalcante June 9, 2021, 13:59 (GMT) |
Fix T88885: Circle select deselects first selections after moving cursor `is_active_prev` is always set after the first operation. But this was not the case with `wait_for_input` `false`. |
Revision 1f55e12 by Brecht Van Lommel June 9, 2021, 13:28 (GMT) |
Tests: temporarily increase threshold for OpenImageDenoise test Until all platforms have the same version, this helps the tests pass. |
Revision ea38955 by Germano Cavalcante June 9, 2021, 12:32 (GMT) |
Fix T88998: GPencil not projecting to the most front surface It was projecting from the stroke position. The behavior has changed in {rB5400be9ffee2}. |
Revision e4c6da2 by Germano Cavalcante June 9, 2021, 11:58 (GMT) |
Draw Cache: use threading for Mesh extract lines This is an optimization, but the difference is still not that significant as some extractions are still done in single thread. **Benchmarking** ||before:|after: |---|---|---| |large_mesh_editing:|Average: 14.246502 FPS|Average: 15.438118 FPS ||rdata 9ms iter 31ms (frame 69ms)|rdata 9ms iter 27ms (frame 65ms) |large_mesh_editing_ledge: |Average: 14.913622 FPS|Average: 15.856538 FPS ||rdata 9ms iter 30ms (frame 67ms)|rdata 9ms iter 26ms (frame 63ms) |looptris_test:|Average: 3.970774 FPS|Average: 4.095200 FPS ||rdata 11ms iter 90ms (frame 235ms)|rdata 12ms iter 87ms (frame 229ms) Reviewed By: jbakker Differential Revision: https://developer.blender.org/D11467 |
Revision f087a22 by Antonio Vazquez June 9, 2021, 10:52 (GMT) |
GPencil: Hide Brush panels for some tools Some tools don't use brush and the panel must be hidden. Reviewed By: mendio Differential Revision: https://developer.blender.org/D11518 |
Revision 4ced890 by Antonio Vazquez June 9, 2021, 10:52 (GMT) |
Fix T88983: GPencil toggle caps error in python enum The value for default option was wrong in the python definition. |
Revision dd98f6b by Campbell Barton June 9, 2021, 10:33 (GMT) |
Fix missing free calls for task iterator A single threaded task with thread data over 8192 bytes would leak. While this didn't happen in practice, it could cause issues in the future. The free call for `task_parallel_iterator_do` wasn't running if callbacks weren't set, also not an issue in practice but avoids potential problems in the future too. |
Revision b18a214 by Manuel Castilla June 9, 2021, 09:21 (GMT) |
Fix: Compositor test desintegrate failing on arm64 Changes introduced in commit rBe9f2f17e8518 can create different render results when there is a Math or Mix operation after TextureOperation on tiled execution model. This is due to WriteBufferOperation forcing a single pixel resolution when these operations use a preferred resolution of 0 to check if their inputs have resolution. Fixing this behaviour creates different renders too. This patch keeps previous tiled implementation and adds the new implementation only for full frame execution. Reviewed By: Jeroen Bakker (jbakker) Differential Revision: https://developer.blender.org/D11546 |
Revision d7c812f by Manuel Castilla June 9, 2021, 09:02 (GMT) |
Compositor: Refactor recursive methods to iterative In order to reduce stack size this patch converts full frame recursive methods into iterative. - No functional changes. - No performance changes. - Memory peak may slightly vary depending on the tree because now breadth-first traversal is used instead of depth-first. Tests in D11113 have same results except for test1 memory peak: 360MBs instead of 329.50MBs. Reviewed By: Jeroen Bakker (jbakker) Differential Revision: https://developer.blender.org/D11515 |
Revision 3ba16af by Jeroen Bakker June 9, 2021, 06:12 (GMT) |
Fix failing test case sequence_transform. |
Revision 8c3f4f7 by Hans Goudey June 9, 2021, 04:52 (GMT) |
Fix: Incorrect node bezier spline tangent calculation for end points The code was using the useless dangling handle at each end of the spline rather than the handle pointing inwards. |
Revision 307f8c8 by Sebastian Parborg June 8, 2021, 21:18 (GMT) |
Fix: Prevent small memory leak in VSE indexer We need to unref the packet to tell ffmpeg it is ok to free it after use. |
Revision 8bd09b1 by Brecht Van Lommel June 8, 2021, 17:22 (GMT) |
Build: upgrade OpenImageDenoise to 1.4.0 CMake builder and install deps changes, precompiled libraries are still to be committed. Ref T88438, T88434 Differential Revision: https://developer.blender.org/D11486 |
|
|
|


Master Commits
MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021