Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am having an issue running PowerShell 3.0 on Windows 7 64-bit. It takes a very long time to open/start when run it. It is also quite sluggish in response to just about anything.

I believe this may be due to the fact that my profile is stored in my documents, and the my documents folder is synched to our network.

Is there any way that I can move the location of my profile so that I can have it local instead of over the network?

share|improve this question
its slow for me too and my profile is on direct drive access. also it is read once, cached by OS and closed after startup so network or not it should affect nothing. this is just MS poor attempt at redoing the wheel, but square, yet again. – v.oddou Nov 26 '13 at 1:13

PowerShell relies on the .NET Framework, you can try updating that.

This script also helped my speed

$Env:PATH = [Runtime.InteropServices.RuntimeEnvironment]::GetRuntimeDirectory()
[AppDomain]::CurrentDomain.GetAssemblies() | % {
  $pt = $_.Location
  if (! $pt) {continue}
  if ($cn++) {''}
  $na = Split-Path -Leaf $pt
  Write-Host -ForegroundColor Yellow "NGENing $na"
  ngen install $pt
share|improve this answer
Thank you! What a big difference after I ran this script. – WeSam Abdallah Jul 13 '15 at 16:09
What does it do? – Pureferret Jun 10 at 18:40

There are a few different default places the Powershell profile can be stored.

  • The first location is the global location and would be useful when you want all users to have a customized Powershell profile. This profile should be placed in

  • The second location is for the local profile and would be specific to each user account. This file overrides the global configuration file and should be placed in

    C:\Username\My Documents\WindowsPowerShell\Profile.ps1

As a test try modifying the global Powershell profile (located in system32) and see if that speeds things up. If it does you will know the slowness is somehow due to the network and you can move forward from there.

share|improve this answer

Recently, I had a similar issue when developing a binary PowerShell module. My console was extremely slow in response to almost anything. Steven Penny's script worked for me, but only per instance of PowerShell. I did not really understand what was going on in his script; so I went line by line to see where my problem was.

It ended up being with my path environmental variable. I had UNC path string in my path variable, and the delay was caused, because PowerShell will open/close the connection for each execution (i.e. every time you press the enter key).

share|improve this answer
What's UNC? How did you fix it? – Tomáš Zato Aug 22 '15 at 19:27

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.