I have a SharePoint server that is relatively slow. When I look on the task manager, I can see that noderunner.exe is RAM consuming process.

I saw that my Get-SPEnterpriseSearchService returns Maximum, so if I turn it to Reduced (with Set-SPEnterpriseSearchService -PerformanceLevel Reduced), will I get my RAM back ?

Do you know if there is any impact by doing this ? As its a production environment, I must ask this question.

It's SharePoint 2013 on a 2008R2 SP1 and IIS 7.5. This server is hosting the C.A.

Ask for more details if I forget something. TIA

2 Answers 2


You should reduce it, and your farm will get benefit from it. Their is no impact rather you will get performance improvement. NodeRunner.exe is resource hungry process.

their 3 step process:

  1. Use Set-SPEnterpriseSearchService -PerformanceLevel Reduced to reduce the CPU impact the search service
  2. Modify the C:\Program Files\Microsoft Office Servers\15.0\Search\Runtime\1.0\noderunner.exe.config so that it can only consume X amount of RAM. Change the value at to any amount of RAM you like to contain the memory leak.
  3. Do not forget to restart the search service so the modification could be effective.
  • Thanks for answer, but reducing the amount in the noderunner.exe.config is something that didn't work for a lot of ppl as I could read on different blogs/posts. Did you ever do this yourself ?
    – Nico
    Dec 15, 2014 at 14:56
  • 3 steps process, i followed the exact thing on my Dev farm and having happy life
    – Waqas Sarwar MVP
    Dec 15, 2014 at 14:57
  • Ok, thanks for your answer. I'll follow this. Any PS Command to restart the search service ? No impact on connected users by restarting the search service too ?
    – Nico
    Dec 15, 2014 at 15:00
  • 1
    Yes I saw it, sorry for this bad question that I could solve on my own. For those who will read this later : Restart-Service SPSearchHostController
    – Nico
    Dec 15, 2014 at 15:08

by default the level is set to maximum when you install the sharepoint search service, Thats because on a live service you expect it to be fast with optimum hardware to support it with the correct topology to break the load from the search service!

setting it to reduced is the correct way go about it:

on dev machine:

  • Set-SPEnterpriseSearchService -PerformanceLevel Reduced
  • restart sharepoint search service

on production if hardware is tight than use PartlyReduced

  • Set-SPEnterpriseSearchService -PerformanceLevel PartlyReduced
  • restart sharepoint search service

on a live server where the search service is over serveral servers within a farm with 4 cores each with atleast 8gb ram:

leave it as it is:

  • Set-SPEnterpriseSearchService -PerformanceLevel Maximum
  • restart sharepoint search service

there is not much difference between partlyreduced and reduced, the difference is the priority is NOT set to high in partlyreduced setting.

Specifies the relative number of threads for the crawl component performance.

The type must be one of the following values: Reduced, PartlyReduced, or Maximum. The default value is Maximum.

Reduced: Total number of threads = 4 number of processors, Max Threads/host = number of processors.

Partly Reduced: Total number of threads = 16 times the number of processors , Max Threads/host = 4 plus the number of processors. Threads are assigned Below Normal priority.

Maximum: Total number of threads = 32 times the number of processors, Max Threads/host = 4 plus the number of processors. Threads are assigned Normal priority.



Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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