SetActorRotation super slow, why?

Hi there,

we have this simple code. On Windows it performed ok. I tried on my Mac M1 Max today and it ran at 10FPS. I then found that it was this code and removed the SetActorRotation line. Back to 100FPS.

void ASimpleWeaponPickup::Tick(float DeltaTime)
{
    Super::Tick(DeltaTime);

    FRotator rotation;
    rotation.Yaw = DeltaTime * RotationSpeed;

    SetActorRotation(GetActorRotation() + rotation);
}

I then fiddled around a bit and changed SetActorRotation to AddActorLocalRotation(RotationSpeed * DeltaTime * FRotator(0, 1, 0));. Back to 100FPS (+ Rotation working :D).

But WHY is the initial performance so freaking bad? I would have never expected it. And why sooo much worse on Mac? On Windows SetActor was also 3x slower than the new method, but still totally fine.

Here is a profiler image (Pickup Rotation uses the SetActor code and New the AddActorLocalRotation method)

Best,
Bennet