Announcement

Collapse
No announcement yet.

Linux objtool Improvements Help Reduce RAM Usage & Build Time During Large Kernel Builds

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    "Boris [Petkov] complained he could no longer build allyesconfig on his 32G desktop machine without having [out of memory] terminate either objtool or chrome."​
    So we now need Chrome to build the Linux kernel?

    Whodathunkit!

    Comment


    • #12
      Originally posted by caligula View Post

      The entry level 2023 Macbook Pro has 8 GB of RAM and 256 GB (not GiB) of disk capacity (probably less than half usable for applications).
      Uh, as someone that owns a 2020 MBP M1 with 8GB of RAM I can tell you for general desktop use 8GB is still entirely adequate and in many cases so is 256 GB of storage (although mine has 512). What eats up storage is media files. If you're doing development work locally you don't buy the bottom of the line anything, unless it's very light scripting. No developer is going to do that. No student developer is going to do that. And even if they do, I've yet to see even a community college, let alone university, that didn't have remote developer resources available for the technical and science students. If they don't, I'd suggest looking for a school that's actually prepared for the 21st century.

      A lot of pro devs working on Linux servers aren't building anything local, they're ssh'd into headless servers that handle all the load. This is why services like OpenSUSE Build Service are so popular with independent developers and even corporations and many large projects have their own dedicated central build server farms or corps rent time from cloud providers on the cheap. You don't need a stupidly high end local system to build packages with services like that.

      It's kinda obvious that you shouldn't need a massive system to build the Linux kernel, which is why they revisited their assumptions in objtool and tweaked them to conserve system RAM. Contrary to popular opinion among the development community (both old and young in many cases) just because you have many gigabytes of system RAM doesn't give you license to waste it unnecessarily. Use it, sure. Waste it, no.

      Comment


      • #13
        I had a netbook and upgraded to 2GB RAM. It still worked pretty well for travel and handling a lot of simple tasks. Being a 32-bit Atom CPU it wasn't too heavy on RAM but the SSD stalled a lot so I ran /home off a SD card that fit fully in the slot, unlike most recent laptops.

        My desktop has 32GB and with Firefox, an IDE, docker, a couple of gwenview instances and not a lot else it'll still run short often enough to be annoying, especially after several days uptime. Using zram mostly helps avoid that but my next build will likely be targeting 64GB.

        Comment


        • #14
          Originally posted by stormcrow View Post
          Uh, as someone that owns a 2020 MBP M1 with 8GB of RAM I can tell you for general desktop use 8GB is still entirely adequate and in many cases so is 256 GB of storage (although mine has 512). What eats up storage is media files.
          I used to have a Mac Mini with OS X Lion. I didn't do any development but had to install XCode to run some open source app. I also had few simple apps installed like Dropbox and Lightroom. IIRC a clean installation with all apps, fonts (not that many), etc. used around 96 GB of space. On top of that, 256 GB usually means 238 GiB. The file system wastes few %. Those low end systems might also allocate some space via a page file. SSDs also require around 10% of free space to perform efficiently. So, in reality you're pretty fucked, no matter what you're doing. Other vendors charge around $50 per terabyte. So a 512 GB drive is around $12 more expensive than the 256 GB version.

          Comment


          • #15
            Originally posted by spiral_23 View Post
            i installed 64gb of ram in my hp dev one. there is still ram left when i build a kernel or other software. so i recommend at least 64gb of ram for a real developer machine.
            Spoiled much? A real developer machine is the one in front of you, heck I know of developers working on projects still running core2duos and Athlons64s/Phenoms with under 4gb of ram or under chugging along quite well on their fake "Developer" machines.

            Heck you can code, compile and ship all on a 1gb ram phone.

            Comment


            • #16
              Originally posted by Rallos Zek View Post

              Spoiled much? A real developer machine is the one in front of you, heck I know of developers working on projects still running core2duos and Athlons64s/Phenoms with under 4gb of ram or under chugging along quite well on their fake "Developer" machines.

              Heck you can code, compile and ship all on a 1gb ram phone.
              run 4 virtual machines with windows macos android and/or linux and then try it again.

              Last edited by spiral_23; 10 February 2023, 11:26 AM.

              Comment


              • #17
                While I do think that RAM is pretty cheap these days…. Shouldn’t swap automatically configure itself so you don’t run out of memory outside a genuine memory leak?

                it sounds as though 128Gb should be enough for anyone at the moment.

                Comment


                • #18
                  The limit is also the motherboard. Some only have 2 slots, and supports up to 32GB, some 64GB. I think both desktop/prosumer AMD Ryzen and Intel support up to 128GB as well?

                  DDR4 is pretty dang cheap these days.

                  Has there been a recent benchmark/showcase/article here to show performance differences for different RAM speeds, XMP on/off when compiling code?

                  Comment


                  • #19
                    Originally posted by spiral_23 View Post
                    i installed 64gb of ram in my hp dev one. there is still ram left when i build a kernel or other software. so i recommend at least 64gb of ram for a real developer machine.
                    I use 64GB on Gentoo as well and with 64 threads in some corner cases I have to use zram as well.
                    ## VGA ##
                    AMD: X1950XTX, HD3870, HD5870
                    Intel: GMA45, HD3000 (Core i5 2500K)

                    Comment


                    • #20
                      Originally posted by spiral_23 View Post
                      run 4 virtual machines with windows macos android and/or linux and then try it again.
                      And of course your workflow is the only one that determines what a "real development machine" is. Noted.

                      Originally posted by Rallos Zek View Post
                      Spoiled much? A real developer machine is the one in front of you, heck I know of developers working on projects still running core2duos and Athlons64s/Phenoms with under 4gb of ram or under chugging along quite well on their fake "Developer" machines.

                      Heck you can code, compile and ship all on a 1gb ram phone.
                      Back in 2017 I used a machine with 4GB RAM to build a whole embedded distro with buildroot more or less daily. It wasn't terrible.​

                      Comment

                      Working...
                      X