lkml.org 
[lkml]   [2020]   [May]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 3/3] mm: adjust vm_committed_as_batch according to vm overcommit policy
    On Fri, May 08, 2020 at 03:25:17PM +0800, Feng Tang wrote:
    > +void mm_compute_batch(void)
    > {
    > u64 memsized_batch;
    > s32 nr = num_present_cpus();
    > s32 batch = max_t(s32, nr*2, 32);
    > -
    > - /* batch size set to 0.4% of (total memory/#cpus), or max int32 */
    > - memsized_batch = min_t(u64, (totalram_pages()/nr)/256, 0x7fffffff);
    > + unsigned long ram_pages = totalram_pages();
    > +
    > + /*
    > + * For policy of OVERCOMMIT_NEVER, set batch size to 0.4%
    > + * of (total memory/#cpus), and lift it to 6.25% for other
    > + * policies to easy the possible lock contention for percpu_counter
    > + * vm_committed_as, while the max limit is INT_MAX
    > + */
    > + if (sysctl_overcommit_memory == OVERCOMMIT_NEVER)
    > + memsized_batch = min_t(u64, ram_pages/nr/256, INT_MAX);
    > + else
    > + memsized_batch = min_t(u64, ram_pages/nr/16, INT_MAX);
    >
    > vm_committed_as_batch = max_t(s32, memsized_batch, batch);
    > + printk("vm_committed_as_batch = %d\n", vm_committed_as_batch);
    > }

    You left a debugging printk in ...

    \
     
     \ /
      Last update: 2020-05-08 13:25    [W:4.611 / U:0.444 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site