Why are simple 2D particles extremely laggy on IOS builds?

Godot Version

4.3 - Building for Windows and IOS

Why are simple 2D particles extremely laggy on IOS builds?

Above is the game on windows, running in editor, particles are completely fine with no issues with lag spikes.

And here is the game playing on IOS, I’ve found that building in Release has helped partially, but this feels like an extremely simple particle effect to have this much effect on instance. In Debug builds this drops it down significantly more

The particle itself is a CPUParticles2D, a oneshot, with the amount set to exactly 8, with a 32x32 pixel .png texture and a colour gradient that turns more transparent as time goes past.

CpuParticles2D particle = playerMovement.PlayerDustParticle.Instantiate() as CpuParticles2D;
GetTree().CurrentScene.AddChild(particle);
particle.Position = Position + new Vector2(0, 50);
particle.ZIndex = 10;
particle.Restart();

Above is how I spawn in particles, which is loaded previously with ResourceManager

(And for clearness, yes getting rid of the particle spawning does stop the lag)

below is the particle itself, seemingly I cant upload the file directly.

[gd_scene load_steps=5 format=3 uid="uid://r74sr5lcu8w5"]

[ext_resource type="Texture2D" uid="uid://ccu4fkcojywaf" path="res://Entities/Player/Particles/Dust.png" id="1_o7b1l"]

[sub_resource type="Curve" id="Curve_x024s"]
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(0.98, 0.599196), 0.0, 0.0, 0, 0]
point_count = 2

[sub_resource type="Gradient" id="Gradient_ejcx5"]
colors = PackedColorArray(1, 1, 1, 1, 1, 1, 1, 0)

[sub_resource type="Gradient" id="Gradient_du0eu"]
colors = PackedColorArray(0.775063, 0.775063, 0.775063, 1, 1, 1, 1, 1)

[node name="DustParticle" type="CPUParticles2D"]
z_index = 6
emitting = false
one_shot = true
explosiveness = 1.0
texture = ExtResource("1_o7b1l")
emission_shape = 3
emission_rect_extents = Vector2(50, 1)
gravity = Vector2(0, 0)
angle_max = 360.0
scale_amount_curve = SubResource("Curve_x024s")
color_ramp = SubResource("Gradient_ejcx5")
color_initial_ramp = SubResource("Gradient_du0eu")

Any ideas would be great