The issue happens because the algorithm used to calculate the center of the selection first needs to create a TransData array. In this array, the code calculates the "mirrored" elements which can be quite slow in dense meshes. The solution is replace this slow algorithm used for calculating the pivot point with the fast algorithm used to calculate the position of transform gizmos. Pull Request: https://projects.blender.org/blender/blender/pulls/107203