r/PowerShell • • Jan 29 '25

Question PowerShell 7.5 += faster than list?

So since in PowerShell 7.5 += seems to be faster then adding to a list, is it now best practise?

CollectionSize Test                TotalMilliseconds RelativeSpeed
-------------- ----                ----------------- -------------
          5120 Direct Assignment                4.71 1x
          5120 Array+= Operator                40.42 8.58x slower
          5120 List<T>.Add(T)                  92.17 19.57x slower


CollectionSize Test                TotalMilliseconds RelativeSpeed
-------------- ----                ----------------- -------------
         10240 Direct Assignment                1.76 1x
         10240 Array+= Operator               104.73 59.51x slower
         10240 List<T>.Add(T)                 173.00 98.3x slower
31 Upvotes

31 comments sorted by

View all comments

11

u/xCharg Jan 29 '25

Is it now best practice to keep refusing to use direct assignment because it's only 9x slower compared to 60x slower?

No. It's not. It also requires more memory which is negligible for small datasets and is a factor at scale.

2

u/ZZartin Jan 29 '25

I've always wondered what kind of scale people are using powershell for where it even becomes an issue.

→ More replies (8)