antiX still leading other distros in efficiency – MHO

Forum Forums General Other Distros antiX still leading other distros in efficiency – MHO

  • This topic has 16 replies, 7 voices, and was last updated Jan 29-12:56 pm by Brian Masinick.
Viewing 15 posts - 1 through 15 (of 17 total)
  • Author
    Posts
  • #76272
    Member
    olsztyn

      To keep current with development in Linux world I have been testing several ‘acceptable’ Linux distros from perspective of efficiency and reliability.
      Just to share my observations I was left with just a few, up-front discarding all those with artificially heavy and inefficient desktop environments.
      Without enumerating those few that were left as ‘acceptable’ my observations are:
      – So far the most versatile and most efficient memory footprint: antiX 21 Runit /JWM. Does not seem to leak any memory. Most capable of running some heavy stuff such as Google Earth, provided adequate graphics card, such as nVidia, even with Nuveau driver. Not tested with graphics intensive games without being able to install nVidia 340 though…
      With simple but quite capable JWM window manager antiX 21 proved to be very stable and rock solid reliable. Top in the industry Live tools not found any place else.
      – Astra Linux: Excellent distro used by Russian government and for official use for critical application, developed to replace Windows. It is sporting Fly desktop environment, way better than any inefficient Gnome or KDE bloat. It is an industrial quality distro with very efficient design and small memory footprint. Not much larger than antiX in that respect. Very well designed and professional. I have to say Russians know what they are doing and they do it well…
      According to my rudimentary testing does not leak memory at all, just like antiX. Live capabilities are not implemented in Astra, so I was able to implement the Live tools from MX to overcome this deficiency. Astra appears to run everything i was testing just fine, except it fails on Google Earth visualization for no apparent reason on the same machines, on which antiX runs Google Earth just fine.
      – Q4OS: Described as efficient and sporting Trinity desktop environment attracted my attention but also too elevated expectations. In spite of Trinity claimed as efficient it had much larger than antiX memory footprint and running browsers appears to leak memory terribly in my testing.
      Live: Not much to show except it has been announced that Q4OS is partnering with MX to implement MX Live infrastructure. About a year has passed and so far I see nothing of such stuff implemented.
      On my testing heavy graphics capabilities with Google Earth: On the same machines as antiX and Astra Q4OS was able to successfully launch Google Earth but after short use it seems to lock up the entire system solid. Possibly due to the above mentioned memory leak…

      I was able to play with a few other distros as well but with nothing worth to mention…

      Overall impression – antiX 21 Runit continues to be on top in efficiency, while still capable to run key heavy apps in a reliable way.
      I am concerned that distro reviews such as distrowatch are being superficial and not take into account what really matters…

      • This topic was modified 1 year, 3 months ago by olsztyn.
      • This topic was modified 1 year, 3 months ago by olsztyn.
      • This topic was modified 1 year, 3 months ago by olsztyn.

      Live antiX Boot Options (Previously posted by Xecure):
      https://antixlinuxfan.miraheze.org/wiki/Table_of_antiX_Boot_Parameters

      #76278
      Member
      mikey777
        Helpful
        Up
        0
        ::

        What does “leak memory” mean. Do you mean that when the “memory leaks” the RAM usage is not stable, and keeps increasing over the time you’re logged on?
        Thanks for the clarification.
        Your finds don’t surprise me. Since I moved to Linux (2014), I haven’t found a Linux OS that is as stable and/or economic on resources (both memory & CPU) as antiX is.

        ▪ 32-bit antix19.4-core+LXDE installed on :
        - (2011) Samsung NP-N145 Plus (JP04UK) – single-core CPU Intel Atom N455@1.66GHz, 2GB RAM, integrated graphics.
        ▪ 64-bit antix21-base+LXDE installed on:
        - (2008) Asus X71Q (7SC002) – dual CPU Intel T3200@2.0GHz, 4GB RAM. Graphics: Intel Mobile 4 Series, integrated graphics
        - (2007) Packard Bell Easynote MX37 (ALP-Ajax C3) – dual CPU Intel T2310@1.46GHz, 2GB RAM. Graphics: Silicon Integrated Systems.

        #76279
        Member
        olsztyn
          Helpful
          Up
          0
          ::

          What does “leak memory” mean. Do you mean that when the “memory leaks” the RAM usage is not stable, and keeps increasing over the time you’re logged on?
          Thanks for the clarification.

          Yes. In antiX memory is being reclaimed when you shut down apps. Many other distros appear to be losing memory in a continuous manner when you invoke and shut down some apps.
          My testing was limited to just a few distros that have reasonable initial memory footprint. I did not test mainstream, usually much more memory hungry distros.
          I did test in the recent past Intel’s Clear Linux, which is using Gnome DE. Clear Linux was well behaving too… But that one is considered more professional so Intel must have put some attention to it. It has also re-organized architecture, such as e.g. /etc/ is made irrelevant to the OS and can be deleted…

          Live antiX Boot Options (Previously posted by Xecure):
          https://antixlinuxfan.miraheze.org/wiki/Table_of_antiX_Boot_Parameters

          #76281
          Moderator
          Brian Masinick
            Helpful
            Up
            0
            ::

            “Memory leaks” can mean that:

            1) Resources are not properly “closed”, reduced, or released once they’ve been used.
            2) Memory use increases as an application is used, and it’s not put back into the memory pool.
            3) Even when an application is “closed”, until the user logs off, memory is still not released.

            Memory leaks can be one or more of these conditions. Most commonly they occur because of incorrect addressing within a program, and I’d add that “pointer” handling in the programs is usually a source of the problem. This can be caused by language compiler problems, but is most commonly caused by application programming defects.

            For further reading and better explanations, see:
            https://www.techopedia.com/definition/3838/memory-leak

            “A memory leak is a process in which a program or application persistently retains a computer’s primary memory. It occurs when the resident memory program does not return or release allocated memory space, even after execution, resulting in slower or unresponsive system behavior.”

            A memory leak is considered a failure or bug within the application/program that holds it. Memory leakage may be intended or unintended by the application/program, which may retain the application in memory to execute operations or remain frozen in an unrecoverable state. The resident program also may source/leak additional memory space without releasing the previously used space, leading to the exhaustion of memory resources and a poorly performing or frozen system.

            A memory leak may be mitigated through specialized memory management software or by adding garbage collection functions to the application source code.

            • This reply was modified 1 year, 3 months ago by Brian Masinick.

            --
            Brian Masinick

            #76285
            Member
            olsztyn
              Helpful
              Up
              0
              ::

              “A memory leak is a process in which a program or application persistently retains a computer’s primary memory. It occurs when the resident memory program does not return or release allocated memory space, even after execution, resulting in slower or unresponsive system behavior.”

              Indeed. And since for testing I use the same programs for each distro I came to suspect that often the offender might be none other but desktop environment itself or the way it is integrated with the system. The advantage of antiX in this respect is that it is using a very simple one – Windows Manager (JWM in my case but IceWM might not be much different), which being very simple and developed for one function that there is less opportunity to exhibit such bugs than a full blown (and bloated) DE.
              I remember in the past I was testing different DEs installed through antiX Package Installer and I noticed memory leaks with every one, whether to a lesser or larger degree.

              • This reply was modified 1 year, 3 months ago by olsztyn.

              Live antiX Boot Options (Previously posted by Xecure):
              https://antixlinuxfan.miraheze.org/wiki/Table_of_antiX_Boot_Parameters

              #76287
              Member
              blur13
                Helpful
                Up
                0
                ::

                So far the most versatile and most efficient memory footprint: antiX 21 Runit /JWM. Does not seem to leak any memory. Most capable of running some heavy stuff such as Google Earth, provided adequate graphics card, such as nVidia, even with Nuveau driver. Not tested with graphics intensive games without being able to install nVidia 340 though…

                Just to be clear, you cant install nvidia 340 legacy drivers on antiX 21?

                #76290
                Forum Admin
                anticapitalista
                  Helpful
                  Up
                  0
                  ::

                  Just to be clear, you cant install nvidia 340 legacy drivers on antiX 21?

                  It should be possible.
                  I think some people have managed to do it but I can’t find the post(s).

                  nvidia-graphics-drivers-legacy-340xx

                  Philosophers have interpreted the world in many ways; the point is to change it.

                  antiX with runit - leaner and meaner.

                  #76294
                  Moderator
                  Brian Masinick
                    Helpful
                    Up
                    0
                    ::

                    “A memory leak is a process in which a program or application persistently retains a computer’s primary memory. It occurs when the resident memory program does not return or release allocated memory space, even after execution, resulting in slower or unresponsive system behavior.”

                    Indeed. And since for testing I use the same programs for each distro I came to suspect that often the offender might be none other but desktop environment itself or the way it is integrated with the system. The advantage of antiX in this respect is that it is using a very simple one – Windows Manager (JWM in my case but IceWM might not be much different), which being very simple and developed for one function that there is less opportunity to exhibit such bugs than a full blown (and bloated) DE.
                    I remember in the past I was testing different DEs installed through antiX Package Installer and I noticed memory leaks with every one, whether to a lesser or larger degree.

                    You are absolutely right about leaks. Though the overall performance is pretty good and the leaks are modest, there are still a few modest memory leaks in Xfce, at least on one implementation I found on another distribution. It wasn’t huge, but I ran a simple test by logging in, opening a browser, did a little simple navigation and exited the browser. Meanwhile I had a terminal running with the htop resource tool running. The browser cost quite a bit of memory in use, but performance was fine.
                    However, upon exist, the system, even with the browser closed, consumed 5-10 MB more than it did previously.

                    Just to test the guess that the desktop environment, not the browser, per se, caused the leak I installed IceWM and ran virtually the same test. Upon exit from the browser, memory usage returned to the exact amount the system was previously using. Xfce isn’t horrible in this regard; I can use it for hours without issues but it does suggest that it’s not always 100% clean or perfect. Other desktop environments may be guilty of more leaks, but I have not performed a comprehensive study; what I can say is that IceWM performs admirably; I did not witness any leakage at all while using IceWM!

                    --
                    Brian Masinick

                    #76295
                    Moderator
                    Brian Masinick
                      Helpful
                      Up
                      0
                      ::

                      I haven’t found the Xfce memory leak to be cumulative but I’ll try out a few different tests and use a few different distros to see if there are different versions and different distros with a different result!

                      --
                      Brian Masinick

                      #76297
                      Moderator
                      Brian Masinick
                        Helpful
                        Up
                        0
                        ::

                        I checked out the Xfce situation on two different distributions. With Xfce, when the Firefox browser first closes, at first not all of the memory is released. If, however, you watch memory consumption over the next 5-10 minutes, the memory does appear to trim itself, though different distributions treat it somewhat differently and the memory usage on one distribution fluctuates somewhat, whether a browser is active or not.

                        I have a second hypothesis about this, not specifically related to memory usage. I’ve found that some systems, particularly a few of the nice, responsive distributions have excellent responsiveness, and one distribution that I value a lot uses a lot more memory than I would have predicted or expected, but I now have a theory about it, mostly because of the “changes” I observed while watching memory usage.

                        The theory and hypothesis is this: a “smart system”, one that knows if memory is a widely available resource or a scarce resource MAY decide to allocate, even pre-allocated chunks of memory to use for anticipated (perhaps even expected) usage patterns. IF – that is if and ONLY if a generous amount of unused memory IS available, the system algorithm will be to allocate and pre-allocate a comfortable amount of cache and/or unused free memory to the active system memory pool. If it finds the memory unused, it’ll release it, but if the system has idle CPU cycles AND available free memory, it may once again preallocate some memory. This is just a guess on my part, but based on discussions and articles that I’ve read in the past, some memory management systems may actually behave in this, or a similar manner,

                        If any of you have any definitive information either supporting or refuting this “thought”, idea, or hypothesis, I’m interested in hearing it, especially if it’s based on knowledge rather than conjecture. My comments are based on a combination of on-line observation and past reading regarding memory management algorithms, but I admit up front that it’s not substantiated by a code review or direct review of a specific implementation.

                        --
                        Brian Masinick

                        #76303
                        Member
                        olsztyn
                          Helpful
                          Up
                          1
                          ::

                          The theory and hypothesis is this: a “smart system”, one that knows if memory is a widely available resource or a scarce resource MAY decide to allocate, even pre-allocated chunks of memory to use for anticipated (perhaps even expected) usage patterns. IF – that is if and ONLY if a generous amount of unused memory IS available, the system algorithm will be to allocate and pre-allocate a comfortable amount of cache and/or unused free memory to the active system memory pool. If it finds the memory unused, it’ll release it, but if the system has idle CPU cycles AND available free memory, it may once again preallocate some memory. This is just a guess on my part, but based on discussions and articles that I’ve read in the past, some memory management systems may actually behave in this, or a similar manner,

                          I am aware of such ‘designs’ that proactively pre-allocates large chunks of memory based on anticipation of use. Windows is probably the best example of such. Depending on algorithm it may or may not be found beneficial in normal operation. I have not done proper analysis of such design and have not seen specific analysis and benchmarks performed on Linux systems to compare behavior but my personal and very subjective experience based on Windows is that Windows has always (since XP) has been using excessive amount of memory with no visible benefit translated into responsiveness of the system. On the contrary, I find Windows way more sluggish than simple Linux systems that do not employ such pre-allocation memory schemes, antiX being extreme such case. But on the other end some Linux systems went out of their way in their ‘smart’ imitating and ‘enhancing’ Windows’ bloat and developing inefficient garbage that even Windows could be considered lighter in comparison…
                          As I remember Microsoft has been touting various schemes showing off ‘smartness’ of the system and to me it always has been at the expense of something else.
                          My reports of my experience with Linux distros leaking memory was not much about ‘smartly’ pre-allocating memory in anticipation of need, but just clearly leaking memory that never seems to be recovered regardless of usage pattern. And it is not just 10 or 20M as you noticed about XFCE, which would be very modest and acceptable, but instead leaking memory in much larger quantities, that effectively leads to issues in the course of time, such as responsiveness or even freezing as I experienced with some.
                          My example was Q4OS I stress tested with Google Earth, which after short use effectively froze the entire system, probably due to memory management problem. It is not issue with Google Earth because the same Google Earth runs fine continuously on antiX 21, on the same machine. Understandably Google Earth might be considered a tough stress test but you cannot stress test a system running just a light application such as terminal…
                          Just my opinion.

                          • This reply was modified 1 year, 3 months ago by olsztyn.

                          Live antiX Boot Options (Previously posted by Xecure):
                          https://antixlinuxfan.miraheze.org/wiki/Table_of_antiX_Boot_Parameters

                          #76305
                          Moderator
                          Brian Masinick
                            Helpful
                            Up
                            0
                            ::

                            The amount of memory I noticed was enough to ‘cache’ nominal activity but not enough to cause a serious and costly memory leak. In fact the memory was either used or released. Both CPU and memory utilization was acceptable and performance was also good.

                            So in the samples I looked at the results were a responsive system that did not waste memory or other resources.

                            --
                            Brian Masinick

                            #76306
                            Moderator
                            Brian Masinick
                              Helpful
                              Up
                              0
                              ::

                              Whether Windows ever did this effectively the systems I used for the tests were smooth, effective and did release memory.

                              --
                              Brian Masinick

                              #76324
                              Member
                              ModdIt
                                Helpful
                                Up
                                0
                                ::

                                Browsers like firefox can be set to use no RAM memory when closed and/or release memory after a certain time period,
                                in general they keep chunks of ram for further usage. Firefox will continue to perform offline operations until
                                either closed or the operations finish. It can also be set to stop performing operations on closing.
                                All browsers use caching, again settings in config apply.

                                In many distros and windoze system settings are to keep data in ram for further usage calls but release it if space needed
                                for applications started later. Intent is to speed up processing.

                                Big subject as there are or can be kernel compile settings involved. Limits can be defined in Pam which further complicates matters.

                                Setting to swap only when absolutely neccesary also has an influence, all my users have SSD or terrible MMC so set to swap only if
                                absoluteley neccesary.

                                My facit is I run different distros at times, as long as my swap setting is respected I have no issue with Ram usage other than at
                                start after logging in, I dislike resoursce hogging desktops or processes running which are superfluos to my usage case..

                                #76328
                                Anonymous
                                  Helpful
                                  Up
                                  0
                                  ::

                                  Brian Masinick wrote:
                                  a “smart system”, one that knows if memory is a widely available resource or a scarce resource MAY decide to allocate, even pre-allocated chunks of memory to use for anticipated (perhaps even expected) usage patterns. IF – that is if and ONLY if a generous amount of unused memory IS available, the system algorithm will be to allocate and pre-allocate a comfortable amount of cache and/or unused free memory to the active system memory pool. If it finds the memory unused, it’ll release it, but if the system has idle CPU cycles AND available free memory, it may once again preallocate some memory.

                                  .
                                  FYI
                                  .

                                  packages.debian.org/bullseye/preload

                                  Package: preload
                                  adaptive readahead daemon

                                  preload monitors applications that users run, and by analyzing this data, predicts what applications users might run, and fetches those binaries and their dependencies into memory for faster startup times.

                                  Note that installing preload will not make your system boot faster and that preload is a daemon that runs with root privileges.

                                  additional documentation: sources.debian.org/src/preload/0.6.4-5/doc/proposal.txt

                                  online browsable manpage: manpages.debian.org/bullseye/preload/preload.8.en.html

                                  • This reply was modified 1 year, 2 months ago by Brian Masinick. Reason: From skidoo
                                Viewing 15 posts - 1 through 15 (of 17 total)
                                • You must be logged in to reply to this topic.