Massive unnecessary lag spike from loop

So I have this script that clones 5 or 6 rocks from server storage and places them inside workspace

for i = 1,OGHealth/5 do
    Drop = game.ServerStorage.PhysicalItems.Rock:Clone()
    Drop.Parent = game.Workspace
    Drop.Position = TaggedPart.Position
end

But for SOME REASON my game freezes and lags every time its ran? Does anyone know how to fix this…?

Reorganise the code so it looks like this:

for i = 1,OGHealth/5 do
    Drop = game.ServerStorage.PhysicalItems.Rock:Clone()
    Drop.Position = TaggedPart.Position
    Drop.Parent = game.Workspace
end

This is because of this annoucment that roblox put out where they found out that parenting a part to the workspace and then changing its size or position causes massive lag but if you do it before it is parented it works fine.

not gonna make much difference but make the clone outside of the for loop we don’t wanna make the engine clone multiple times if it stays the same

Drop = game.ServerStorage.PhysicalItems.Rock:Clone()
for i = 1,OGHealth/5 do
    Drop.Position = TaggedPart.Position
    wait()
    Drop.Parent = game.Workspace
end

and yes super is right do the parent last if u clone an item change size whatsoever it wont exist physicly as long as u dont set the parent
and if it doesnt need to do it supper fast add a wait perhaps to give the server the time it needs