When experiencing some MAJOR file sharing slowdowns in a new macOS High Sierra machine running Server.app I came across this page from Apple showing how to enable "performance mode for macOS Server".


Some online resources make reference to the "old" procedure before SIP prevented that from working, and provided instructions on how to turn off SIP and then use "serverinfo" to enable perfmode, and then turn off SIP.

References at No boot-args in nvram and What does serverperfmode=1 actually do on macOS? gave me some more information, but I cannot find info about checking the perfmode status in High Sierra.

I have set the NVRAM variable like Apple says, and checking it returns the proper result of "boot-args serverperfmode=1" and I restarted a few times, but "serverinfo --perfmode" still returns the result of "Server performance mode is NOT enabled."

When set via the NVRAM, should "serverinfo --perfmode" tell me that performance mode is enabled? If not, how can I tell if it has been enabled? The NVRAM variable essentially says "turn it on when you boot", but it does not tell me "it got turned on when I booted".


OK, I guess I have one way to determine based on What does serverperfmode=1 actually do on macOS?

If you take the output from sysctl -a you can search it for some of the items listed above and see what their values are.

sysctl -a > temp.txt

Search temp.txt with your favourite editor and look for kern.maxvnodes, if it is 300000, and if kern.maxproc is 5000, then you are in "performance mode".

Or at least some of your settings match the "performance mode" settings.

Since I did both the NVRAM variable and the "disable SIP and use serverinfo --setperfmode 1" methods, I don't actually know if the NVRAM method by itself results in the changes for High Sierra.


According to this article you must disable SIP:

If you are using OS X 10.11 El Capitan or greater, you will need to disable SIP (System Integrity Protection) first. Check if your server is running in performance mode with

serverinfo --perfmode

If you find its NOT, its generally a good idea to enable it as performance mode tunes the system to run as a server.

You can do so by issuing:

serverinfo --setperfmode 1 When done, reboot.

  • @j-beda You are correct. I have updated my answer. P.S. I know it contradicts what I said before :) – JBis Apr 24 '18 at 22:15
  • I'm in the midst of discussing that article on topicdesk.com . Apple seems to indicate you can get around the SIP issues by using the boot-args variable within the NVRAM. I ended up disabling SIP and setting the perfmode as you described, but I am still left to wonder if the boot-args variable actually sets the thing, and even more, now that I set it via serverinfo can I trust that it has actually made changes? – j-beda Apr 25 '18 at 0:14
  • So is your issue solved? – JBis Apr 25 '18 at 0:15
  • I wish. The "important" thing is I have no idea why my file sharing is so very very very unresponsive, and I have yet to determine how to actually tell if the boot-args variable works. – j-beda Apr 25 '18 at 0:49
  • Lets discuss more in chat! – JBis Apr 25 '18 at 0:59

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .