home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   alt.os.linux.slackware      I think its the one without Selinux crap      87,272 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 86,658 of 87,272   
   Lew Pitcher to Chris Elvidge   
   Re: Kernel huge vs generic   
   16 Apr 24 17:19:11   
   
   From: lew.pitcher@digitalfreehold.ca   
      
   On Tue, 16 Apr 2024 16:40:19 +0100, Chris Elvidge wrote:   
      
   > On 16/04/2024 at 14:51, Lew Pitcher wrote:   
   >> On Tue, 16 Apr 2024 14:33:47 +0100, Chris Elvidge wrote:   
   >>   
   >>> Slackware current - VirtualBox 7.0.14   
   >>>   
   >>> I normally use the huge kernel with no problems but the other day I   
   >>> mistakenly downloaded the generic kernel, too, and noticed the   
   >>> difference in size is only 2Mb. I was originally told the generic kernel   
   >>> was better for memory consumption. The required initrd.gz unzips to 27Mb.   
   >>>   
   >>> What is the/Is there a supposed advantage of generic + initrd over huge?   
   >>   
   >> I believe (and others here will correct me if I am wrong) that the "generic"   
   >> kernel + initrd result in less memory used in the finally running system   
   than   
   >> the "huge" kernel.   
   >>   
   >> Consider: once booted, the generic kernel will (should?) free any memory   
   >> occupied by the initrd image, as it no longer needs the initrd image to run.   
   >> The generic kernel only needs initrd because it uses (filesystem backed)   
   >> modules to provide the disk controller interfaces. This results in a small   
   >> initial load module for the kernel. Once executing, it only loads the   
   hardware   
   >> drivers it needs, leaving all the rest alone.   
   >>   
   >> OTOH, the "huge" kernel has all the disk controller drivers built-in to   
   >> the loaded module. Even if the kernel doesn't use the disk controller, the   
   >> code is still resident in memory.   
   >>   
   >> So, the "huge" kernel results in a running kernel with more resident code   
   >> than the "generic" kernel.   
   >>   
   >> Having said all that, I run the "huge" kernel; I can't be bothered with   
   >> the additional initrd step if/when I upgrade my kernel, and I have the   
   >> memory to support the minor additional overhead of unused drivers.   
   >>   
   >> HTH   
   >>   
   >   
   > These are the figures I got:   
   >   
   > generic-6.6.27   
   >                 total used free shared buff/cache available   
   > Mem:            2974 1084  890      7       1172      1889   
   > Swap:           6143    0 6143   
   > Total:          9118 1084 7034   
   >   
   > huge-6.6.27   
   >                 total used free shared buff/cache available   
   > Mem:            2971 1069 1201      7        870      1902   
   > Swap:           6143    0 6143   
   > Total:          9115 1069 7345   
   >   
   > huge-6.8.6   
   >                 total used free shared buff/cache available   
   > Mem:            2971 1082  907      8       1163      1889   
   > Swap:           6143    0 6143   
   > Total:          9115 1082 7051   
   >   
   > So no noticeable difference AFAICS.   
      
   Glad to hear that. Apparently, the inclusion of disk drivers no longer   
   makes a significant difference on the end resident size of the kernel.   
      
   I'd be interested to know what your dmesg says about the kernel memory   
   Would you be willing to post the results of   
     dmesg | grep 'Memory:'   
   and   
     dmesg | grep 'Freeing unused kernel memory:'   
   under all three kernels?   
      
   That would tell us directly (rather than by implication) how much memory   
   each kernel takes.   
      
      
   > I brewed 6.8.6 from 6.6.27 .config and 'make olddefconfig'   
      
   I used to (back in the 2.x days) brew my own kernel. These days, not   
   so much. I salute you on conquering the kernel build process. :-)   
      
   --   
   Lew Pitcher   
   "In Skills We Trust"   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca