SUSE Support

Here When You Need Us

Low Memory Conditions on SUSE

This document (7000120) is provided subject to the disclaimer at the end of this document.

Environment

SUSE Linux Enterprise Server 15
SUSE Linux Enterprise Server 12
SUSE Linux Enterprise Server 11
SUSE Linux Enterprise Server 10

Situation

The server is running out of memory
Application memory leak
Slow server or application performance

As of SLES 15 the output of the free command is:

#==[ Command ]======================================#
# /usr/bin/free -k                                                    vvvvvvvvv
              total        used        free      shared  buff/cache   available
Mem:        1817364       96144     1360352        5544      360868     1564216
Swap:       1715176           0     1715176                           ^^^^^^^^^


Prior to SLES 15 the output is:

#==[ Command ]======================================#
# /usr/bin/free -k                 vvvvv
             total       used       free     shared    buffers     cached
Mem:        776380     769628       6752          0       1268       4228
-/+ buffers/cache:     764132      12248
Swap:      1164672     396088     768584
                                   ^^^^^

Resolution

1. If there are no memory leaks and the server is just busy, consider adding more physical memory to the server or adjusting application specific memory configurations.

2. If you suspect a memory leak, you may need to report a bug to the application vendor. One method to narrow down an application memory leak is to reboot the server. Make sure all applications are running as expected. Finally run a supportconfig for a baseline server configuration. Wait for the server to show out of memory symptoms. Run another supportconfig to compare against the baseline. Compare the basic-health-check.txt and memory.txt files. Detailed memory troubleshooting is outside the scope of this document.

Additional Information

With SLES 15, the free command's available field shows the estimation of how much memory is available for starting new applications, without swapping.

Prior to SLES 15, the free command has a free memory available on the "Mem:" line, but it is not an accurate estimation of memory available for starting applications. You also have to include cached items that could be freed up if needed. This free memory plus cache that could be freed is on the "buffers/cache" line under the "free" column.

As you run out of memory, the server begins swapping to disk. A good rule of thumb is, used memory should be less than 90% of the total memory.

Disclaimer

This Support Knowledgebase provides a valuable tool for SUSE customers and parties interested in our products and solutions to acquire information, ideas and learn from one another. Materials are provided for informational, personal or non-commercial use within your organization and are presented "AS IS" WITHOUT WARRANTY OF ANY KIND.

  • Document ID:7000120
  • Creation Date: 23-Feb-2009
  • Modified Date:26-Aug-2021
    • SUSE Linux Enterprise Desktop
    • SUSE Linux Enterprise Server

< Back to Support Search

For questions or concerns with the SUSE Knowledgebase please contact: tidfeedback[at]suse.com

SUSE Support Forums

Get your questions answered by experienced Sys Ops or interact with other SUSE community experts.

Support Resources

Learn how to get the most from the technical support you receive with your SUSE Subscription, Premium Support, Academic Program, or Partner Program.

Open an Incident

Open an incident with SUSE Technical Support, manage your subscriptions, download patches, or manage user access.