Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. .NET Performance

.NET Performance

Scheduled Pinned Locked Moved The Lounge
csharpc++dotnetsysadminsales
57 Posts 18 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J J Dunlap

    Joey Bloggs wrote: For those of you who are convinced that .NET and CLR will outperform C++ with a P3/P4 optimizing compiler... The actual overall performance will not be better, because of JIT compilation. However, in some math-intensive operations, .NET will out-perform native code, because of its optimizations for individual processors. I found this out in my search for details on ngen and how it affects performance.

    "Blessed are the peacemakers, for they shall be called sons of God." - Jesus
    "You must be the change you wish to see in the world." - Mahatma Gandhi

    J Offline
    J Offline
    John M Drescher
    wrote on last edited by
    #8

    jdunlap wrote: NET will out-perform native code, because of its optimizations. Do you know if .NET will make use of MMX, SIMD ...?? Also I was thinking one of the things that can really slow some algorithms written in C is float to int conversions. C states it must truncate, but the hardware rounds by default so the compiler has to remove the rounding effect and also add out of bounds checking. In a bilinear interpolation algorithm I used a couple of asm statements to do the conversion and it speeded up the algorithm by more than 10 times the original code speed... I really needed that because the images were taking several seconds to scale (they were over 30MB) and that was too long for the user to wait to view them... John

    J J 2 Replies Last reply
    0
    • J Joey Bloggs

      I don't think ms has made that claim. There just seem to be a variety of folks around besotted with .NET (Way beyond its technological capabilities or likely real world performance). Who have also uncritically swallowed whole, microsoft claims on .net performance and their rationalization's on why they are going .net (for the good of mankind, obviously!)

      J Offline
      J Offline
      John M Drescher
      wrote on last edited by
      #9

      Joey Bloggs wrote: There just seem to be a variety of folks around besotted with .NET I have heard these stetements myself... John

      1 Reply Last reply
      0
      • J John M Drescher

        jdunlap wrote: NET will out-perform native code, because of its optimizations. Do you know if .NET will make use of MMX, SIMD ...?? Also I was thinking one of the things that can really slow some algorithms written in C is float to int conversions. C states it must truncate, but the hardware rounds by default so the compiler has to remove the rounding effect and also add out of bounds checking. In a bilinear interpolation algorithm I used a couple of asm statements to do the conversion and it speeded up the algorithm by more than 10 times the original code speed... I really needed that because the images were taking several seconds to scale (they were over 30MB) and that was too long for the user to wait to view them... John

        J Offline
        J Offline
        J Dunlap
        wrote on last edited by
        #10

        John M. Drescher wrote: Do you know if .NET will make use of MMX, SIMD ...?? I believe that's what they are talking about - taking advantage of the unique instructions on different processors when doing JIT Compilation, in order to achieve maximum speed. Native code can't do this very well without the binary being tied to the processor it's optimized for. But the JIT compiler finds out what processor the assembly is running on, and optimizes the machine code for that processor.

        "Blessed are the peacemakers, for they shall be called sons of God." - Jesus
        "You must be the change you wish to see in the world." - Mahatma Gandhi

        1 Reply Last reply
        0
        • J John M Drescher

          Joey Bloggs wrote: For those of you who are convinced that .NET and CLR will outperform C++ with a P3/P4 optimizing compiler I don't think it could ever do that but it could get in the 90% efficiency range.. You give up performance for added features. John

          J Offline
          J Offline
          Joey Bloggs
          wrote on last edited by
          #11

          Well as a windows developer for 13 years and a java developer for the last 3. I can almost guarentee that they will not be able to hit that sort of performance level. I doubt that they will get the CLR much faster than the JVM. And beyond that heap based instantiation of 'every' object and no placment new etc almost guarentees that you cannot write faster code.

          J R 2 Replies Last reply
          0
          • J Joey Bloggs

            Well as a windows developer for 13 years and a java developer for the last 3. I can almost guarentee that they will not be able to hit that sort of performance level. I doubt that they will get the CLR much faster than the JVM. And beyond that heap based instantiation of 'every' object and no placment new etc almost guarentees that you cannot write faster code.

            J Offline
            J Offline
            J Dunlap
            wrote on last edited by
            #12

            Joey Bloggs wrote: I doubt that they will get the CLR much faster than the JVM. They already have. One of the ways they do it is to only JIT compile the parts of the assembly that you use, and not the parts you don't.

            "Blessed are the peacemakers, for they shall be called sons of God." - Jesus
            "You must be the change you wish to see in the world." - Mahatma Gandhi

            J 1 Reply Last reply
            0
            • O Olli

              Joey Bloggs wrote: I do not know That's obvious... Joey Bloggs wrote: But instead they are trying to move everyone into a proprietry managed environment where they can licence .net server products for big bucks Maybe that's the cause they call Microsoft a company??? I don't know, but if you bother selling something, than it maybe you're on the wrong site... just ranting a little back...

              Olli "Ooooooh, they have the internet on computers now!"
              Homer Simpson
              :beer: + :java: = NULL :=> X|

              J Offline
              J Offline
              Joey Bloggs
              wrote on last edited by
              #13

              Yes but they are being very underhanded in the way they are trying to move everyone to .net and not stating their real intentions. When you hold a worldwide monopolistic power social responsibility and democratic public policy must come into play.

              1 Reply Last reply
              0
              • J J Dunlap

                Joey Bloggs wrote: I doubt that they will get the CLR much faster than the JVM. They already have. One of the ways they do it is to only JIT compile the parts of the assembly that you use, and not the parts you don't.

                "Blessed are the peacemakers, for they shall be called sons of God." - Jesus
                "You must be the change you wish to see in the world." - Mahatma Gandhi

                J Offline
                J Offline
                Joey Bloggs
                wrote on last edited by
                #14

                Go to the kitchen right now. Hurry there is not much time left!

                J 1 Reply Last reply
                0
                • J Joey Bloggs

                  Go to the kitchen right now. Hurry there is not much time left!

                  J Offline
                  J Offline
                  J Dunlap
                  wrote on last edited by
                  #15

                  Time left for what??? ;P ;P ;P So, instead of answering to what I said in the post, you gave a low blow. :rolleyes:

                  "Blessed are the peacemakers, for they shall be called sons of God." - Jesus
                  "You must be the change you wish to see in the world." - Mahatma Gandhi

                  1 Reply Last reply
                  0
                  • S Shog9 0

                    Look, If you're not (and do not plan on) selling your services to a company that has bought into the MS line and will happily pay for all the new toys you desire, then i'd say it's rather unwise for you to be using MS tech. There's better, lower-cost stuff out there for many purposes. For those of us feeding on the MS teat, your rantings sound more like sour grapes. Either have fun doing what makes you the $$$, or find something else to do - such criticism is only useful if you follow it with: "and so this is what i'm going to do personally to correct this terrible problem."

                    Shog9

                    Let your mercy spill / On all these burning hearts in hell If it be your will / To make us well...

                    J Offline
                    J Offline
                    Joey Bloggs
                    wrote on last edited by
                    #16

                    I am concerned at the long term costs to OUR societies. The lost opportunites the increased taxes and product costs that will flow from having a worldwide monopolistic power lead a large segment of the planets developers into such a proprietry solution. As to a response, I feel powerless against the beast. The open source communities are making small steps but I wonder if it will be enough.

                    J 1 Reply Last reply
                    0
                    • J Joey Bloggs

                      I am concerned at the long term costs to OUR societies. The lost opportunites the increased taxes and product costs that will flow from having a worldwide monopolistic power lead a large segment of the planets developers into such a proprietry solution. As to a response, I feel powerless against the beast. The open source communities are making small steps but I wonder if it will be enough.

                      J Offline
                      J Offline
                      J Dunlap
                      wrote on last edited by
                      #17

                      But what about Mono and SharpDevelop? BTW, Do you use VC++?

                      "Blessed are the peacemakers, for they shall be called sons of God." - Jesus
                      "You must be the change you wish to see in the world." - Mahatma Gandhi

                      J 1 Reply Last reply
                      0
                      • J Joey Bloggs

                        For those of you who are convinced that .NET and CLR will outperform C++ with a P3/P4 optimizing compiler please go into the kitchen now and fashion a helmet out of aluminium foil. The microsoft marketing / brainwashing / indoctrination signals being beamed from the satelltes are obviously too strong in your area. Will .NET reduce programmer effort / time to market / life cycle maintenence costs ? I do not know. What I do know is that if ms had developed all the appropriate libraries in open source c++ along with a new compiler. We would all be better of. But instead they are trying to move everyone into a proprietry managed environment where they can licence .net server products for big bucks just like sun and their J2EE / JMS vendors. just having a little rant

                        P Offline
                        P Offline
                        Philip Patrick
                        wrote on last edited by
                        #18

                        Joey Bloggs wrote: What I do know is that if ms had developed all the appropriate libraries in open source c++ along with a new compiler. We would all be better of. I don't understand, how this can improve performance? Philip Patrick Web-site: www.stpworks.com "Two beer or not two beer?" Shakesbeer

                        J 1 Reply Last reply
                        0
                        • P Philip Patrick

                          Joey Bloggs wrote: What I do know is that if ms had developed all the appropriate libraries in open source c++ along with a new compiler. We would all be better of. I don't understand, how this can improve performance? Philip Patrick Web-site: www.stpworks.com "Two beer or not two beer?" Shakesbeer

                          J Offline
                          J Offline
                          Joey Bloggs
                          wrote on last edited by
                          #19

                          Open VC6 go to Project, Settings, C/C++, Code Generation and see what is the lastest processor that you can optimize for. Plus various other comments in this thread about heap based object instantiation etc. We won't even get into gc impacts on performance but do you really think letting the machine figure out what memory your using instead of telling it is going to improve performance.

                          P 1 Reply Last reply
                          0
                          • J J Dunlap

                            But what about Mono and SharpDevelop? BTW, Do you use VC++?

                            "Blessed are the peacemakers, for they shall be called sons of God." - Jesus
                            "You must be the change you wish to see in the world." - Mahatma Gandhi

                            J Offline
                            J Offline
                            Joey Bloggs
                            wrote on last edited by
                            #20

                            I'm not so worried about the development environments. Its the .NET Server products that will be sold to every customer needing to run large .net solutions that are going to cost the big bucks. since v1.1 or 1.2 i can't quite remember

                            J S G 3 Replies Last reply
                            0
                            • J Joey Bloggs

                              I'm not so worried about the development environments. Its the .NET Server products that will be sold to every customer needing to run large .net solutions that are going to cost the big bucks. since v1.1 or 1.2 i can't quite remember

                              J Offline
                              J Offline
                              J Dunlap
                              wrote on last edited by
                              #21

                              But will they have to use those, or can alternative be made?

                              "Blessed are the peacemakers, for they shall be called sons of God." - Jesus
                              "You must be the change you wish to see in the world." - Mahatma Gandhi

                              J 1 Reply Last reply
                              0
                              • J J Dunlap

                                But will they have to use those, or can alternative be made?

                                "Blessed are the peacemakers, for they shall be called sons of God." - Jesus
                                "You must be the change you wish to see in the world." - Mahatma Gandhi

                                J Offline
                                J Offline
                                Joey Bloggs
                                wrote on last edited by
                                #22

                                I really don't know. Is the CLR rated to run efficently on a multiprocessor 64bit XP platform for example and will it come with the OS or will you have to licence it seperately ?

                                J 1 Reply Last reply
                                0
                                • J Joey Bloggs

                                  Open VC6 go to Project, Settings, C/C++, Code Generation and see what is the lastest processor that you can optimize for. Plus various other comments in this thread about heap based object instantiation etc. We won't even get into gc impacts on performance but do you really think letting the machine figure out what memory your using instead of telling it is going to improve performance.

                                  P Offline
                                  P Offline
                                  Philip Patrick
                                  wrote on last edited by
                                  #23

                                  I actually was talking about "open source", that can improve performance. Philip Patrick Web-site: www.stpworks.com "Two beer or not two beer?" Shakesbeer

                                  J 1 Reply Last reply
                                  0
                                  • J Joey Bloggs

                                    I really don't know. Is the CLR rated to run efficently on a multiprocessor 64bit XP platform for example and will it come with the OS or will you have to licence it seperately ?

                                    J Offline
                                    J Offline
                                    J Dunlap
                                    wrote on last edited by
                                    #24

                                    The .NET Framework for 64-bit platforms is free. Also, you can run the same assembly in both 64-bit and 32-bit environments without re-compiling, provided that you don't have any unsafe code in that assembly (which could be wrapped in a seperate DLL as necessary). BTW, Joey, I don't intend to hurt your feelings or cause excessive strife between us. I have a different viewpoint, but let me know if something I say hurts your feelings. :rose:

                                    "Blessed are the peacemakers, for they shall be called sons of God." - Jesus
                                    "You must be the change you wish to see in the world." - Mahatma Gandhi

                                    J M 2 Replies Last reply
                                    0
                                    • J John M Drescher

                                      jdunlap wrote: NET will out-perform native code, because of its optimizations. Do you know if .NET will make use of MMX, SIMD ...?? Also I was thinking one of the things that can really slow some algorithms written in C is float to int conversions. C states it must truncate, but the hardware rounds by default so the compiler has to remove the rounding effect and also add out of bounds checking. In a bilinear interpolation algorithm I used a couple of asm statements to do the conversion and it speeded up the algorithm by more than 10 times the original code speed... I really needed that because the images were taking several seconds to scale (they were over 30MB) and that was too long for the user to wait to view them... John

                                      J Offline
                                      J Offline
                                      Joey Bloggs
                                      wrote on last edited by
                                      #25

                                      I find it hard to believe that the CLR will be able to analyze your vb.net or c# source code and determine the algorithim you are trying to implement and call the appropriate simd mmx instructions etc. However you are certainly able to call un/managed C++ functions from those environments and presumably you can still put asm code into your MC++ / C++ function ?

                                      J R 2 Replies Last reply
                                      0
                                      • J Joey Bloggs

                                        I find it hard to believe that the CLR will be able to analyze your vb.net or c# source code and determine the algorithim you are trying to implement and call the appropriate simd mmx instructions etc. However you are certainly able to call un/managed C++ functions from those environments and presumably you can still put asm code into your MC++ / C++ function ?

                                        J Offline
                                        J Offline
                                        Joey Bloggs
                                        wrote on last edited by
                                        #26

                                        However moving your data between the managed and unmanaged environments may take quite a performance hit, if you need to access it piecemeal it both environments ?

                                        1 Reply Last reply
                                        0
                                        • P Philip Patrick

                                          I actually was talking about "open source", that can improve performance. Philip Patrick Web-site: www.stpworks.com "Two beer or not two beer?" Shakesbeer

                                          J Offline
                                          J Offline
                                          Joey Bloggs
                                          wrote on last edited by
                                          #27

                                          Well only in the sense that a variety of different people over time might be able to contribute optimizations I guess.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups