SharePoint 2013: Fix to Reduce Memory Utilization Due to NodeRunner.exe

Problem Description

NodeRunner.exe consuming a lot of CPU memory resulted in a heavy performance impact on SharePoint server. As we all know Search Service is one of the most enhanced feature in SharePoint 2013 as compared to previous version of SharePoint i.e. SharePoint 2010. Mainly Microsoft has included FAST search in SharePoint Search previously it was not there. Noderunner.exe comes in picture because of this search service. FYI even though we don’t have any problem to go in Task manager and kill the running instance of a NodeRunner ; SharePoint almost instantly created another instance of it.

Here I will describe you how to reduce CPU/memory usage by killing NodeRunner.exe.

Cause

SharePoint Search Services.

Solution

  1. Open Notepad and navigate to C:\Program Files\Microsoft Office Servers\15.0\Search\Runtime\1.0\

  2. Find NodeRunner.exe and if you are not able to see the same select All Files mode as shown below:

    AllFiles
      
  3. Now you should be able to see it. Select NodeRunner.exe and Click Open.

  4. Search for memoryLimitMegabytes as shown below.

    memoryLimitmegabytes

    Noderunner.exe is set to “0” by default, which means unlimited memory usage. Change the “0” to a number in megabytes to limit the total amount of ram that it can use.

    For example: <nodeRunnerSettings memoryLimitMegabytes="1024" />

  5. Now save the file and I recommend restart the SharePoint server.

  6. To test the same now go to Task manager and details tab you will see the NodeRunner.exe is not there.