Linked by Thom Holwerda on Sat 4th Aug 2012 04:17 UTC
Hardware, Embedded Systems "Quick - name the most important personal computer of the late 1970s and early 1980s. Those of you who mentioned the legendary Apple II - that's fine. I respect your decision. Forced to think objectively in 2012, I may even agree. But if you just named Radio Shack's TRS-80, you made me smile. Your choice is entirely defensible. And back in the TRS-80's heyday, I not only would have agreed with it but would have vehemently opposed any other candidate."
Thread beginning with comment 529740
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[5]: Nothing special
by MOS6510 on Sun 5th Aug 2012 09:25 UTC in reply to "RE[4]: Nothing special"
MOS6510
Member since:
2011-05-12

How much faster does C++ perform vs .NET you reckon?

Reply Parent Score: 2

RE[6]: Nothing special
by lucas_maximus on Sun 5th Aug 2012 15:43 in reply to "RE[5]: Nothing special"
lucas_maximus Member since:
2009-08-18

Depends whether it is managed C++ or not.

TBH I managed to get some pretty good performance increases in modern Java and .NET by just thinking about an if ... then ... else blocks.

With T-SQL etc you still have to think about the best way to write a query ... the optimizer will only do soo much for you.

While you can write small programs and let modern CPUs and Ram and mainly not worry ... but once there are quite a few people hitting it you really have to start thinking.

Reply Parent Score: 2

RE[7]: Nothing special
by MOS6510 on Sun 5th Aug 2012 18:39 in reply to "RE[6]: Nothing special"
MOS6510 Member since:
2011-05-12

At work we use Dynamics, which uses MS SQL.

Microsoft makes the bare Dynamics and all kinds of companies can build upon it. Our Dynamics partner doesn't have any SQL experts, which seems a bit odd considering it's a lot of SQL stuff. When things don't work they have to contact Microsoft and Microsoft often doesn't know either.

When I last coded "seriously" it was early 1990's. Back then you now what happened and if unexpected things occurred you'd know where to look and where to insert debug stuff.

This annoys me with these modern coders. They rely so much on other people's code: libs, APIs, SQL, etc... when something doesn't work they need to contact other people and then the clock starts ticking. An answer in 2-3 days is considered very quick.

Reply Parent Score: 3

RE[6]: Nothing special
by moondevil on Sun 5th Aug 2012 16:30 in reply to "RE[5]: Nothing special"
moondevil Member since:
2005-07-08

How much faster does C++ perform vs .NET you reckon?


It depends on your use case, but there is nothing like native code if you want to squeeze the performance out of the machine.

With C++ you have more control over the data structure layouts to optimize the caches usage.

Shorter startup times and easy distribution of binaries.

Plus thanks to intrinsics it is easy to exploit SIMD and GPGPU capabilities.

Now, it is possible to compile .NET applications directly to native code by making use of NGEN, but even with .NET 4.0 there are some limitations on NGEN code quality vs JIT.

Microsoft actually acknowledges this in two ways:

- NGEN is being improved in .NET 4.5;

- A few months ago they had listed on their careers web site, open positions for C# native code compilers engineers

This second point is actually what I would like to have. A C# compiler that targets native code directly for distribution, while using the CLR during development.

Reply Parent Score: 2

RE[7]: Nothing special
by MOS6510 on Sun 5th Aug 2012 18:43 in reply to "RE[6]: Nothing special"
MOS6510 Member since:
2011-05-12

I stopped coding in the BASIC/Assembler period. BASIC was slow, Assembler was fast. So each time anything but Assembler is used I get the feeling things aren't as effective/fast as they could be.

But I promisse I will start learning a (modern) language.

Reply Parent Score: 2

RE[6]: Nothing special
by chiwaw on Sun 5th Aug 2012 19:11 in reply to "RE[5]: Nothing special"
chiwaw Member since:
2006-02-05

Well an expert .NET programmer would probably outperform a terrible C++ programmer. Often time execution slowness is more about bad code design, unoptimized algorithms, etc.

But assuming equally expert in both languages, C++ will definitely have the edge, as it run on top of at least one less layer. As for how much faster, I'm not sure. I know .NET is getting a whole lot more efficient over time.

The (video game) company I work for switched from C++ to C# last year. We lost a bit of performance, but oh man is producing code C# so much more fun and comfortable and easy. And also our bug counts went down dramatically.

Reply Parent Score: 1

RE[7]: Nothing special
by moondevil on Sun 5th Aug 2012 21:48 in reply to "RE[6]: Nothing special"
moondevil Member since:
2005-07-08

Yeah, most game studios I know have moved from C++/MFC to C#/WinForms/WPF for their tooling.

There are some that moved to C++/Qt though.

Do you guys ngen your games upon installation?

Reply Parent Score: 2