Mesh: Multithreaded transformation apply #115021

Closed
glitchy-virophage wants to merge 1 commits from (deleted):multithreaded into main

When changing the target branch, be careful to rebase the branch in your fork to match. See documentation.

1 Commits

Author SHA1 Message Date
glitchy-virophage 0e5bbafb03 added multithreading to 2 commonly used functions in source/blender/blenkernel/intern/mesh.cc
Optimize vertex coordinate update functions with multithreading

In this commit, the performance of the vertex coordinate update functions has been significantly improved by introducing multithreading. Two functions were targeted for optimization:

1. BKE_mesh_vert_coords_apply:
   - Original function: Updated vertex coordinates based on input array.
   - Optimized version: Parallelized the loop using OpenMP directives, enhancing performance for large datasets.

2. BKE_mesh_vert_coords_apply_with_mat4:
   - Original function: Applied a 4x4 transformation matrix to vertex coordinates.
   - Optimized version: Introduced parallel processing using OpenMP, accelerating the matrix operations for improved efficiency.

The optimization leverages the power of modern processors by parallelizing the computation, making these functions more efficient, especially in scenarios involving extensive vertex coordinate updates or matrix transformations. The commit aims to enhance overall performance in graphics programming tasks by leveraging multithreading capabilities.
2023-11-17 00:11:11 +01:00