Announcement

Collapse
No announcement yet.

GCC vs. Clang Compiler Performance On Intel Meteor Lake

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

  • #21
    Originally posted by sophisticles View Post

    Where did I get "superstitious"?

    The code is pretty straightforward, using Numba should not trigger the conditional.

    Numba is a JIT compiler for Python that is used for scientific computing and makes it very easy to get your Python code to match the speed of compiled languages:



    After some test runs, using Numba triggers the conditional once the number of iterations passes 15 times for each loop, i.e. if i replace the 101 with a 17 the conditional triggers but with 16 it does not.

    if i was making a mistake with the code, then it should always return the worn result.

    You're theory is interesting but I doubt that is the answer, pure Python works as expected by using a JIt built for this type of work fails past a certain number of iterations?

    Doesn't make sense to me.

    .


    Hello everybody,

    I would like to apologize for my posts under nickname "sophisticles" and "hel88".

    the thing is, I am very sick person. Schizophrenia with manic depression.
    When I'm on my medication like now, I feel ashamed for the things that I do when not on medication.

    For example, when I'm not using my therapy properly I get this crazy tendency to troll on linux forums. For that devious purpose I am using nicknames "sophisticles" and "hel88". under those nicknames I write crazy, insane things. when I am on regular therapy like now, I cannot believe the crap that I wrote under those 2 nicknames.

    overall, I would like all of you to know that I don't really mean what I write under those 2 nicknames and also, I love linux, open source and gpl. and yes, microsoft sucks.​

    Comment


    • #22
      Originally posted by sophisticles View Post
      Where did I get "superstitious"?
      Your presumption that compilers are introducing behavioral variations without being explicitly told to do so.

      Originally posted by sophisticles View Post
      The code is pretty straightforward, using Numba should not trigger the conditional.
      This is a good example of not understanding the tools you're using. There's simply no substitute for reading the manual, although doing some web searches and reaching out on somewhere like stackoverflow aren't bad fallbacks, if you're still stuck.

      In scientific computing range and precision are first-order concerns. Practitioners of those fields understand this, and know they need to manage both of those aspects. They would know to seek out details of what's happening in such an acceleration framework. As a dilettante, you did not.

      Originally posted by sophisticles View Post
      After some test runs, using Numba triggers the conditional once the number of iterations passes 15 times for each loop, i.e. if i replace the 101 with a 17 the conditional triggers but with 16 it does not.

      if i was making a mistake with the code, then it should always return the wrong result.​​
      It could be deciding to use a different data type in each case, or perhaps it's performing an invalid optimization based on the combination datatype and range. However, according to the docs, it will not use greater than 64-bit integers, which makes it fundamentally unsuitable for your algorithm. You can try and understand more about what it's doing, but unless it's to satisfy your own curiosity, it seems pointless.

      Most importantly: this has nothing to do with GCC or Clang. and is therefore essentially off-topic.

      I hope you've learned from this experience to have a little more humility and do a little more diligence, both when you're experimenting with something new & especially when you see a problem or unexpected behavior.

      Comment


      • #23
        Originally posted by SophTherapy View Post

        Hello everybody,

        I would like to apologize for my posts under nickname "sophisticles" and "hel88".

        the thing is, I am very sick person. Schizophrenia with manic depression.
        When I'm on my medication like now, I feel ashamed for the things that I do when not on medication.

        For example, when I'm not using my therapy properly I get this crazy tendency to troll on linux forums. For that devious purpose I am using nicknames "sophisticles" and "hel88". under those nicknames I write crazy, insane things. when I am on regular therapy like now, I cannot believe the crap that I wrote under those 2 nicknames.

        overall, I would like all of you to know that I don't really mean what I write under those 2 nicknames and also, I love linux, open source and gpl. and yes, microsoft sucks.​
        OK, I admit this is pretty funny, as is the nickname you chose, SophTherapy.

        i take it as a compliment that someone felt the need to create a throw away account so he could mock me.

        This tells me that you lack the technical knowledge to debate me directly so you need to resort to this type of tactic.

        The reality is that most Linux users, since the early days of the OSes existence, have less technical knowledge than Windows users and that is why they believe silly notions like "security via obscurity" is not a valid security model or that making something open source somehow makes it more secure and/or more performant.

        You can see it in the comments made in this thread, people that hate on BSD and MIT style licenses, people that do not understand that there is something wrong with the accelerating libraries if they produce incorrect results, and so on.

        So if sharing some informed opinions makes me a "schizophrenic troll with manic depression" then you need to take a good hard look at yourself because this "schizophrenic troll with manic depression" knows more about Linux than most of the Linux users on this forum.

        Comment


        • #24
          Originally posted by sophisticles View Post

          OK, I admit this is pretty funny, as is the nickname you chose, SophTherapy.

          i take it as a compliment that someone felt the need to create a throw away account so he could mock me.

          This tells me that you lack the technical knowledge to debate me directly so you need to resort to this type of tactic.

          The reality is that most Linux users, since the early days of the OSes existence, have less technical knowledge than Windows users and that is why they believe silly notions like "security via obscurity" is not a valid security model or that making something open source somehow makes it more secure and/or more performant.

          You can see it in the comments made in this thread, people that hate on BSD and MIT style licenses, people that do not understand that there is something wrong with the accelerating libraries if they produce incorrect results, and so on.

          So if sharing some informed opinions makes me a "schizophrenic troll with manic depression" then you need to take a good hard look at yourself because this "schizophrenic troll with manic depression" knows more about Linux than most of the Linux users on this forum.
          No one needs to mock you, with every post you mock yourself

          Comment


          • #25
            Originally posted by sophisticles View Post
            The reality is that most Linux users, since the early days of the OSes existence, have less technical knowledge than Windows users and that is why they believe silly notions like "security via obscurity" is not a valid security model or that making something open source somehow makes it more secure and/or more performant.
            The reality is Windows users, Microsoft have no clue about security. Their 'security by layerity' model doesn't work and makes their sluggish Windows even more sluggish. Windows is an onion rotten in its core.

            You can see it in the comments made in this thread, people that hate on BSD and MIT style licenses, people that do not understand that there is something wrong with the accelerating libraries if they produce incorrect results, and so on.
            What's wrong in hating the BSD license? It supports proprietary trash. There are cases where BSD is good, but bigger and more important code should be GPL licensed. However, it doesn't make me hating Clang. It's wonderful compiler and it's Open Source. It's great GCC alternative and competition. If there were no GCC Clang could be 'adapted' by some proprietary company and sold as better and faster alternative. However, thanks to GCC it won't happen, because everyone will switch to GCC then. The same is true for *BSD OS'es. If there were no Linux someone could take FreeBSD code, improve it and sell as new Solaris or something. BSD lives thanks to GPL.

            So if sharing some informed opinions makes me a "schizophrenic troll with manic depression" then you need to take a good hard look at yourself because this "schizophrenic troll with manic depression" knows more about Linux than most of the Linux users on this forum.
            Last time you mentioned MAC as Linux' main/only security feature. You have no clue about Linux.
            Last edited by Volta; 05 January 2024, 11:18 AM.

            Comment


            • #26
              Originally posted by user1 View Post
              Did you know that Mesa drivers, which are shipped in virtually every distro, also use a permissive license? By your logic are Mesa drivers also proprietary-able​ cuckware?
              Doesn't Microsoft benefit from this?

              Comment


              • #27
                Originally posted by sophisticles View Post
                The reality is that most Linux users, since the early days of the OSes existence, have less technical knowledge than Windows users
                Wow, do you understand why sweeping statements like that brand you as a troll? Even if you think it's true, there's a difference between making an argument based on "Linux users are n00bs" vs. technical merit. Especially after you've just outed yourself as a n00b programmer.

                Originally posted by sophisticles View Post
                people that do not understand that there is something wrong with the accelerating libraries if they produce incorrect results,
                They're tools. You're meant to understand them, before trying to use them. If that Python JIT framework worked perfectly, it would be the built-in default. The fact that it's not should tell you something!

                Most people don't need infinite integers, and Python acceleration frameworks would perform terribly if they pessimized for them. More importantly, you're expected to know when you actually do need that additional range.

                Originally posted by sophisticles View Post
                if sharing some informed opinions makes me a "schizophrenic troll with manic depression" then you need to take a good hard look at yourself because this "schizophrenic troll with manic depression" knows more about Linux than most of the Linux users on this forum.
                You're an arrogant narcissist who doesn't know nearly as much as he thinks. That's the elephant in the room, here.

                Comment


                • #28
                  It is good to see after all these years of developing Clang/LLVM that it can consistently produce faster code than GCC. It is not an easy goal to meet. It also shows how strong GCC still is, as a compiler and also as an open source project. There is no loser here. It is a generational change, and a testament to the strength of open source projects.

                  Comment


                  • #29
                    Michael

                    When comes to benchmarks was system clear before switching to another compiler? In I/O related stuff cache may impact performance. If GCC was launched first, Clang will have an advantage and vice versa. You should do:

                    echo 3 > /proc/sys/vm/drop_caches

                    I'd also use performance governor just in case.

                    Comment


                    • #30
                      Originally posted by coder View Post
                      Wow, do you understand why sweeping statements like that brand you as a troll? Even if you think it's true, there's a difference between making an argument based on "Linux users are n00bs" vs. technical merit. Especially after you've just outed yourself as a n00b programmer.


                      They're tools. You're meant to understand them, before trying to use them. If that Python JIT framework worked perfectly, it would be the built-in default. The fact that it's not should tell you something!

                      Most people don't need infinite integers, and Python acceleration frameworks would perform terribly if they pessimized for them. More importantly, you're expected to know when you actually do need that additional range.


                      You're an arrogant narcissist who doesn't know nearly as much as he thinks. That's the elephant in the room, here.
                      you are insulting arrogant narcissists comparing them with sophisticles

                      Comment

                      Working...
                      X