• ch00f@lemmy.world
    link
    fedilink
    English
    arrow-up
    26
    arrow-down
    2
    ·
    edit-2
    1 day ago

    I suspect a 2.5kb application would probably load quickly and use little memory.

    Edit: I’m an illiterate dumdum. Don’t upvote.

    • lowleveldata@programming.dev
      link
      fedilink
      English
      arrow-up
      23
      arrow-down
      1
      ·
      1 day ago

      One user reported it chewing through around 500MB of RAM on 64-bit Windows 7

      It says this right in the article. Is reading the article too much to ask?

      • tal@lemmy.today
        link
        fedilink
        English
        arrow-up
        26
        ·
        1 day ago

        They don’t say the scenario where that’s happening, though. Unless your editor supports large file editing, a mode where it doesn’t load the whole file into memory, unless it has filesize restrictions that make it just fail, if you throw a large enough file at it, it’s invariably going to use a bunch of memory.

        $ dd if=/dev/zero of=out.bin bs=1M count=500
        500+0 records in
        500+0 records out
        524288000 bytes (524 MB, 500 MiB) copied, 0.100949 s, 5.2 GB/s
        $ vim out.bin
        

        On my system, after it (slowly) finishes opening that file, vim’s using 511MB RSS. I know that vim has some sort of large file editing support, though not how to use it.

        On emacs, large file editing support is from the vlf package.

        $ emacs
        M-x vlf RET
        out.bin RET
        

        Emacs is using 75.3 MB RSS after opening that.

        • ChaoticNeutralCzech@feddit.org
          link
          fedilink
          English
          arrow-up
          11
          ·
          1 day ago

          They do, in the linked GitHub issue:
          https://github.com/PlummersSoftwareLLC/TinyRetroPad/issues/21

          Apparently, that’s just sitting idle.

          By not optimizing for file size with Crinkler, the executable grows by a factor of 4 and RAM usage shrinks by a factor of 300. This build will probably be made available to people who value 500 MB RAM per running instance more than the 9 kiB of disk space saved (I assume that’s anyone wanting to use it in practice).

    • CameronDev@programming.dev
      link
      fedilink
      English
      arrow-up
      15
      arrow-down
      3
      ·
      edit-2
      1 day ago

      Size on disk doesn’t correlate to memory usage or load time. You can get a very small on disk size by compression, or downloading the main executable at runtime.

      • Feyd@programming.dev
        link
        fedilink
        English
        arrow-up
        10
        arrow-down
        1
        ·
        1 day ago

        The size of the main binary and all the libraries loaded does determine the starting point of the memory usage, but then doing things like loading files are going to also use memory and there are many strategies for optimizing for speed, memory usage, disk size that have tradeoffs between them. Anyway the point is that the size of the program itself isn’t irrelevant even though it isn’t the only factor in memory usage.

        • CameronDev@programming.dev
          link
          fedilink
          English
          arrow-up
          2
          ·
          1 day ago

          Even the linked libraries may not contribute anything, if they are already loaded and shared amongst other processes. There are so many factors and trade offs that you cant really make any assumptions based off just the executable size.

      • BCsven@lemmy.ca
        link
        fedilink
        English
        arrow-up
        8
        arrow-down
        1
        ·
        1 day ago

        The premise is probably if you can optimize the code to be small, you are probably also optimizing how it runs too. Rather then just bloat up everything

        • CameronDev@programming.dev
          link
          fedilink
          English
          arrow-up
          3
          ·
          1 day ago

          Once you start optimizing for one aspect, others become less important. In this case, they are doing a few hacks to get to 2.5kb, which do impact runtime performance. A few users report it using 500mb at runtime due to the compression :/

          • BCsven@lemmy.ca
            link
            fedilink
            English
            arrow-up
            3
            ·
            21 hours ago

            Well that sucks, although I assume that’s way better than the AI bloated version that now comes with Windows.

      • ch00f@lemmy.world
        link
        fedilink
        English
        arrow-up
        7
        ·
        1 day ago

        Sure. I wasn’t thinking of something like .kkreiger. I assumed that a small simple text editor would use a similarly small amount of memory. Shocked it ballooned so big. Sorry can’t read the article at the moment.