l77Il7H Posted September 2, 2004 Share Posted September 2, 2004 curious question. are programs written with .net framework slower than regular program? i am assuming it's slower becuase it requires us to load the .net frame work in order to run those program. Link to comment Share on other sites More sharing options...
0 docvenom04 Posted September 2, 2004 Share Posted September 2, 2004 Feels slower. Maybe it's just the type of app i was running. :huh: Link to comment Share on other sites More sharing options...
0 +chorpeac MVC Posted September 2, 2004 MVC Share Posted September 2, 2004 I always find that the first time you run a asp.net website it is slower than the rest of the time, but that is by design. Remember, ASP.NET compiles each page as they are first acessed, so performance is always much slower the first time you access each page. Link to comment Share on other sites More sharing options...
0 XanDaMan Posted September 3, 2004 Share Posted September 3, 2004 No, I notice nothing. And I access a .NET program everyday, AppRocket, and its lightning fast. Link to comment Share on other sites More sharing options...
0 nexx Posted September 3, 2004 Share Posted September 3, 2004 I've written a number of small apps for personal use and they can take a while to load the first time as it appears to load the framework. But once it's loaded I cant tell the difference. Link to comment Share on other sites More sharing options...
0 John Veteran Posted September 3, 2004 Veteran Share Posted September 3, 2004 Moved to Programming Link to comment Share on other sites More sharing options...
0 Josh Posted September 3, 2004 Share Posted September 3, 2004 as far as local executables, you may notice a slight delay while the framework is initially being loaded. after that there should be no difference - or if anything - slightly faster (unnoticable to us tho). as far as web, if you're not using compiled code then again there will be a delay the first time the site is loaded because the code is being compiled. Afterwards, it should be lightning quick. More than you can say for those other scripting languages, because they need to be "processed and compiled" everytime they're accesseed. ASP.NET gets compiled and stays that way until a change, so you're actually executing binary code... not some script. Link to comment Share on other sites More sharing options...
0 vcv Posted September 3, 2004 Share Posted September 3, 2004 Normal applications, you will not notice a difference. However, in some applications that are processor intensive, you would. Such as a server that handles thousands of connections at a time. I am currently writing one in C++ for a job, and it is very important to get as much speed as we can. Using .NET (any language) would have cost us too much speed. Link to comment Share on other sites More sharing options...
0 neowin_hipster Posted September 3, 2004 Share Posted September 3, 2004 .net frame work Firstly, there's always dynamic linking to runtimes such as msvcrt and everything. Lets call the "framework" a virtual machine instead. Since .NET does not produce machine code, it produces byte-code which is code that willl run on a virtual machine. It is then the job of the virtual machine to turn it into machine code on loadup. There's also another misconception: byte code will run slower then a compile language for processor intensive tasks. Maybe its just a ****ty implementation, but .NET could potentially be as fast or faster (due to runtime profilling) as a typical c++ app. There is a reason why java runs on so many servers. Hell java is used on mainframes and those are basically extreme IO machines. Link to comment Share on other sites More sharing options...
0 Surr3al Posted September 3, 2004 Share Posted September 3, 2004 (edited) I agree, C++ wouldn't necessarily be faster than a .net based langauge. .net could possibly be faster since there is less code to work through, since most of the .net languages feel more scriptish than C++. In any case, the assumption that .NET sacrifices speed is wrong. Edited September 3, 2004 by Surr3al Link to comment Share on other sites More sharing options...
0 Glowstick Posted September 3, 2004 Share Posted September 3, 2004 Goalie... the bytecode gets JIT'ed into machine code. Link to comment Share on other sites More sharing options...
0 Sn1p3t Posted September 3, 2004 Share Posted September 3, 2004 http://www.vertigosoftware.com/Quake2.htm Quake 2 ported over from C++ to managed C++ (.NET). No difference :p Link to comment Share on other sites More sharing options...
0 Surr3al Posted September 3, 2004 Share Posted September 3, 2004 Wow, that's cool, must play. Link to comment Share on other sites More sharing options...
0 neowin_hipster Posted September 3, 2004 Share Posted September 3, 2004 Goalie... the bytecode gets JIT'ed into machine code. Hmm, i didn't mention that anywhere lol. I didn't wake up truly untill a few minutes ago, i blame the alochol! :p Maybe next time i'll be smarter and just outright plagiarize chapter 1, section 1 of any java/.net text. At least then it will make sense. Link to comment Share on other sites More sharing options...
0 Ultra Frosty Posted September 4, 2004 Share Posted September 4, 2004 curious question. are programs written with .net framework slower than regular program? i am assuming it's slower becuase it requires us to load the .net frame work in order to run those program. Correct. It has to load all the DLL files needed for the application, depending on what you including with your: using System ...... stuff. Link to comment Share on other sites More sharing options...
0 vcv Posted September 4, 2004 Share Posted September 4, 2004 Firstly, there's always dynamic linking to runtimes such as msvcrt and everything. Actually, you can remove the runtimes. I have done so in one of my own projects in fact, and it significantally cut down on the file size. Why did I say .NET can be slower? Simple. You can't use [inline] assembly in it, AFAIK. You can not provide optimizations that compilers can't currently do. Granted, it becomes less of an issue each year, and is only a concern of the more "hardcore" programmers.. Link to comment Share on other sites More sharing options...
0 Glowstick Posted September 4, 2004 Share Posted September 4, 2004 The JIT does inline code if under these conditions: - Method is under 32bytes of IL. - Contains only one branching operation (if). - The method isn't virtual. Link to comment Share on other sites More sharing options...
0 Varsity Posted September 4, 2004 Share Posted September 4, 2004 http://www.vertigosoftware.com/Quake2.htmQuake 2 ported over from C++ to managed C++ (.NET). No difference :p In fact at some points it's faster! With Longhorn the framework will be loaded at boot, that's fine, but I heard Win32 won't be? Is that true? Link to comment Share on other sites More sharing options...
0 Glowstick Posted September 4, 2004 Share Posted September 4, 2004 Longhorn fundamentals, on which .NET sits, is basically part of Win32. Link to comment Share on other sites More sharing options...
0 vcv Posted September 4, 2004 Share Posted September 4, 2004 The JIT does inline code if under these conditions:- Method is under 32bytes of IL. - Contains only one branching operation (if). - The method isn't virtual. actual raw machine code? If so, those limitations make it pretty pointless to bother. Link to comment Share on other sites More sharing options...
0 John Veteran Posted September 4, 2004 Veteran Share Posted September 4, 2004 actual raw machine code? If so, those limitations make it pretty pointless to bother. What? :huh: Link to comment Share on other sites More sharing options...
0 azcodemonkey Posted September 4, 2004 Share Posted September 4, 2004 Actually, you can remove the runtimes. I have done so in one of my own projects in fact, and it significantally cut down on the file size. Why did I say .NET can be slower? Simple. You can't use [inline] assembly in it, AFAIK. You can not provide optimizations that compilers can't currently do. Granted, it becomes less of an issue each year, and is only a concern of the more "hardcore" programmers.. Write your inline assembly in a non-managed DLL and have your managed code use it via P-Invoke. Link to comment Share on other sites More sharing options...
Question
l77Il7H
curious question. are programs written with .net framework slower than regular program? i am assuming it's slower becuase it requires us to load the .net frame work in order to run those program.
Link to comment
Share on other sites
21 answers to this question
Recommended Posts