Announcement

Collapse
No announcement yet.

EXT4 Getting Faster Case-Insensitive Performance

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

  • #21
    Personally I'm against case insensitivity for regular OS usage, and I think case sensitivity was a mistake for many reasons (performance, bugs with applications caching directory listings, etc.).

    But for wine, and running applications that interact with wine prefixes? This is amazing. Wine's implementation for case insensitivity is accurate, but incredibly slow (for example, no cache). This isn't really their fault, and more just a fact that this isn't available in the kernel. Because of this, many applications run under wine (especially modded Skyrim/Fallout etc.) are just incredibly slow, especially on HDDs. Not to mention that modding games manually is incredibly frustrating due to mods using different casings for directories. This is honestly a game changer for me (pardon the pun).

    Comment


    • #22
      Originally posted by milkylainen View Post
      Umm.. No?
      You can put it in an application. You list all entries in a path and do a case insensitive search for a file name before you open it.
      It's absolutely trivial.
      And absolutely slow, Wine is proof of that (on case-sensitive filesystems).

      Originally posted by milkylainen View Post
      It's exactly what the kernel will have to do if you do a camelcase name open in a case insensitive mountpoint.
      Actually no, because the filesystem hashes the filenames so it can do a faster lookup. Not to mention that there's no pointless context switching done because the filesystem driver will do it by itself. Whereas enumerating involves many syscalls...

      Comment


      • #23
        Originally posted by RomuloP View Post
        [...] is a complete mess... For example in Unicode [...]
        Unicode is a complete mess itself and shouldn't have existed. If they all forced English upon every computer user in existence by banning any Unicode idea, we wouldn't have to deal with this garbage in the first place.

        Comment


        • #24
          Originally posted by xfcemint View Post
          If an application wants to open "myAppSettings.dat", how can it know that the file "MyAPPseTTings.DAT" exists? Only the file system driver can do the case-insensitive search of particular directorie's file name list.
          opendir, readdir
          Last edited by microcode; 06-29-2019, 09:24 AM.

          Comment


          • #25
            Originally posted by microcode View Post
            opendir, readdir
            It would be ridiculous to do that in every application.

            Since I claimed that such a functionality is impossible to do without assistance from the driver, I guess your comment proves me wrong. When I was considering the possibilities of implementing case-insensitive file open, I failed to consider the inneficient and cumbersome method you are suggesting here. Ok, you are right, I was wrong.

            Comment


            • #26
              Originally posted by Weasel View Post
              Unicode is a complete mess itself and shouldn't have existed. If they all forced English upon every computer user in existence by banning any Unicode idea, we wouldn't have to deal with this garbage in the first place.
              Sure Unicode is a mess but a necessary one, being case-sensitive by default was just a reasonable choice, it is not perfect but was a sane decision to avoid bringing all the encoding horror down by default but also we do not need to bring so much machine idiosyncrasy horror up. For sure non case-sensitiveness on kernel is useful and I myself expect some good things from this (samba performance, etc), but I'm happy with it as a non default.
              Last edited by RomuloP; 06-29-2019, 10:48 AM.

              Comment


              • #27
                Originally posted by xfcemint View Post
                He's vomiting because he doesn't like his Holy-Unix-Church best-legacy-hacker ways made obsolete.

                He doesn't like case-insensitivity on an organic basis.
                It's his philosophy that Unix-ways are the best which is being put into question.

                Perhaps in the past he explained to many noobs why Unix is the best, and case-sensitivity is the best approach, and this new developments might put doubts on such advice. Then he might look foolish in the eyes of those people.

                I got too carried away...
                You are reading too much into a simple "I don't like it" expression.

                Also, it's a feature that basically comes down to how you use the system, and unless I'm mistaken, it's you that appear to have special needs, just like with all your rants about 32bits.

                I personally never ever gave a fuck about case-sensitivity in the filesystem because when I search for files the application doing the job (be it "file" or "grep" from commandline or a GUI one) can always be set to ignore case, and I never had so much files with different case letters to search into that this impacted performance in an appreciable way.

                The only times I had issues it's because some program can't deal with filesystem case sensitivity, but then again it was stupidity in the application (who is the moron that writes a file for his program ThisIsMyFile and then references it as "thisismyfile" in the code), or a game mod that was created on Windows so the modder genuinely didn't know how the case used in the game code and used camelcase or something just because on Windows it works the same.

                Comment


                • #28
                  I have a horrible feeling that Linux is merging with Windows. It's coming from both directions. Case sensitivity was a badge of rigour. It speaks to the underlying ascii code. It's a different damn character. 'a' != 'A' just as 97 != 65. But now we have some awful translation going on that makes it so. We're letting sloppy Windows-style workflows creep in. I blame the WSL which has coopted Linux.

                  Honestly, I'm getting a kind of Python3 feeling about Linux. A good, clean, idea, hijacked by a committee which wanted to "improve" it and killed what made it special in the first place. Sure, might make it more "mainstream" or whatever, but it's not longer something special. Personally the seed is being planted to look at new OSs. Linux is is losing its mojo.
                  Last edited by vegabook; 06-29-2019, 03:05 PM.

                  Comment


                  • #29
                    Originally posted by vegabook View Post
                    Case sensitivity was a badge of rigour.
                    Case sensitivity is a badge of laziness, sloppines, bad design and lack of forethought by software developers who fail to implement a better solution. Case sensitivity is easiest to implement, all other approaches require more work. That's the only reason why it is used.

                    Comment


                    • #30
                      Originally posted by xfcemint View Post

                      Case sensitivity is a badge of laziness, sloppines, bad design and lack of forethought by software developers who fail to implement a better solution. Case sensitivity is easiest to implement, all other approaches require more work. That's the only reason why it is used.
                      it's not "bad design". It's lean design. "Sloppines" [sic]. What an idiotic thought. It was a CHOICE. DOS from 1981 did case insensitive on a stone-age 8088 so it's not like the idea was not around.

                      Case insensitive is move higher level. An abstraction. A simpler mapping to a more complex underlying reality. Easier for the user. In return, distance taken from explicitness. Lower control over reality.

                      That's fine. Large layers of computing are about doing exactly that. My view is that the Linux command line is about explicit control with as little getting in the way of reality as possible.

                      But clearly others think that the shell needs to compete with the browser.
                      Last edited by vegabook; 06-29-2019, 03:39 PM.

                      Comment

                      Working...
                      X