Aside from hardware upgrades that may make I/O or processing faster, there is very little that you, as a user, can legally do to modify a closed-source program on a closed-source operating system to "make it faster". There are of course plenty of "generic" tricks that improve performance across the board, but these don't directly target PowerShell. For example:
- Disabling active virus scanner or using a faster one
- Defragging your HDD or using a custom defragging tool
- Using an SSD to reduce access times, a Hardware RAID controller to increase bandwidth, or a combination of the two
- Using faster RAM to reduce memory latency and improve throughput
- Using a newer hardware platform (e.g. Ivy Bridge) for across-the-board performance improvements and the elimination of bottlenecks
- Reinstalling the OS or running various "cleaner" programs (can be dangerous) to clear out accruing junk like unneeded registry values, temporary files, SxS configurations, unneeded runtimes from VS2003/2005, programs that launch on startup, etc.
All of these are sort of "side-channel attacks" on the general problem of having slow-running programs that are beyond your control to directly modify or improve.
The only things I can think of that may in any way impact PowerShell startup performance directly are:
- The quantity and size of your environment variables. You can change your environment variables in System under Advanced Settings.
- Scripts that are wired up to launch on startup of PowerShell. If you don't know for a fact that you don't have these, you may indeed have them, and they can obviously impact startup time.
Either one of these things may be the answer to your question, but if not, I am not aware of any other factors that can influence PowerShell startup performance aside from the generic side-channel performance-impacting factors that I listed above.