The Linux kernel supports three overcommit handling modes

0       -       Heuristic overcommit handling. Obvious overcommits of
               address space are refused. Used for a typical system. It
               ensures a seriously wild allocation fails while allowing
               overcommit to reduce swap usage.  root is allowed to
               allocate slighly more memory in this mode. This is the
               default.

1       -       No overcommit handling. Appropriate for some scientific
               applications.

2       -       (NEW) strict overcommit. The total address space commit
               for the system is not permitted to exceed swap + a
               configurable percentage (default is 50) of physical RAM.
               Depending on the percentage you use, in most situations
               this means a process will not be killed while accessing
               pages but will receive errors on memory allocation as
               appropriate.

The overcommit policy is set via the sysctl `vm.overcommit_memory'.

The overcommit percentage is set via `vm.overcommit_ratio'.