|
You're right.
They should be immensely proud that it only took them ten years to make it "not so bad".
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
pictures or it didn't happen!
#SupportHeForShe
Government can give you nothing but what it takes from somebody else. A government big enough to give you everything you want is big enough to take everything you've got, including your freedom.-Ezra Taft Benson
You must accept 1 of 2 basic premises: Either we are alone in the universe or we are not alone. Either way, the implications are staggering!-Wernher von Braun
|
|
|
|
|
How I handle VC++...[^]
Skipper: We'll fix it.
Alex: Fix it? How you gonna fix this?
Skipper: Grit, spit and a whole lotta duct tape.
|
|
|
|
|
Stop subjecting yourself the repeated pain and disappointments.
Join that VB6 crowd (the unwashed). No more surprises.
Ravings en masse^ |
---|
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "If you are searching for perfection in others, then you seek disappointment. If you are seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
Be careful what you ask for.
cheers
Chris Maunder
|
|
|
|
|
Forsooth!
#SupportHeForShe
Government can give you nothing but what it takes from somebody else. A government big enough to give you everything you want is big enough to take everything you've got, including your freedom.-Ezra Taft Benson
You must accept 1 of 2 basic premises: Either we are alone in the universe or we are not alone. Either way, the implications are staggering!-Wernher von Braun
|
|
|
|
|
In what way ? did you forget to build in RELEASE, it is a widely known fact that the DEBUG code is really slow.
Do you have particular instances where it differs that much ?
I'd rather be phishing!
|
|
|
|
|
Maximilien wrote: it is a widely known fact that the DEBUG code is really slow.
Jeremy Falcon
|
|
|
|
|
Not only I used release as base, but also configured a lot of optimizations to gain more speed...
On old 32 bit CPU the result is more than 200%
On newer 32 bit CPU it is about 160%
On 8 core i7 it is still 140%
The problem is that I can not tell the compiler to use the most sophisticated command sets the CPU has and can help my (not really mine, but I'm learning it) code (intensive calculations)
Skipper: We'll fix it.
Alex: Fix it? How you gonna fix this?
Skipper: Grit, spit and a whole lotta duct tape.
|
|
|
|
|
Do you know how well gcc compares to icc, just out of curiosity?
Jeremy Falcon
|
|
|
|
|
I didn't do test of my own with icc, but what I saw from others gcc a bit faster (2%-4%) but not always...
Skipper: We'll fix it.
Alex: Fix it? How you gonna fix this?
Skipper: Grit, spit and a whole lotta duct tape.
|
|
|
|
|
Cool. Just curious. Thanks.
Jeremy Falcon
|
|
|
|
|
In 2012, I did extensive testing with icc. It was consistently faster than other compilers except for a few times when it was a total fail, which made it not worth it. I haven't even bothered to see how C++14/17 compliant it's become since.
|
|
|
|
|
Cool. I remember hearing that too, but since I've never used it, it's nice to hear it from folks that have.
Jeremy Falcon
|
|
|
|
|
It has AVX2 support, surely you have nothing newer than that?
edit: i7 doesn't mean anything by the way. That's just marketing numerology.
|
|
|
|
|
And I turned on that one with no result I can see... On gcc I used sse3 flag and it made the code fly... using sse2 on VC++ had no effect whatsoever...
Skipper: We'll fix it.
Alex: Fix it? How you gonna fix this?
Skipper: Grit, spit and a whole lotta duct tape.
|
|
|
|
|
Auto vectorisation is unreliable. In GCC too.
Even if it gets better it still shouldn't be relied on, because it's too easy to accidentally cause a performance regression (making a trivial change can devectorize a whole loop).
|
|
|
|
|
I do not rely on, but use it and check it...
Skipper: We'll fix it.
Alex: Fix it? How you gonna fix this?
Skipper: Grit, spit and a whole lotta duct tape.
|
|
|
|
|
Sure. Don't be so disappointed then. It's just a free extra, for code that doesn't matter but it can't hurt to have it be a little faster. It shouldn't make any real difference unless the code is broken. Anything that matters already uses intrinsics anyway.
|
|
|
|
|
VC++ is a fine compiler - maybe you havent messed with any other.
Search for some useful additional library like Boost. I read that some Intel or AMD code is available.
Press F1 for help or google it.
Greetings from Germany
|
|
|
|
|
I work extensively with VC++, GCC and Clang. Before GCC 6.x was released, I found that VC++ had a clear lead and that both were better than Clang. Right now, it's about even with Clang still trailing (what happened to those guys?)
(EDIT: one big improvement Microsoft is allegedly working on is to massively speed up streams, but that's a standard library implementation. Hopefully, other standard library implementers will follow suit.)
modified 21-Sep-16 18:38pm.
|
|
|
|
|
You probably talking about the compilation time... I'm about the performance of the result...
Skipper: We'll fix it.
Alex: Fix it? How you gonna fix this?
Skipper: Grit, spit and a whole lotta duct tape.
|
|
|
|
|
I'm talking about the entire thing, including performance of compiled code and C++11/14/17 conformance. In contrast, it's extremely clear that you are focusing on a tiny subset of performance in extremely specific circumstances.
|
|
|
|
|
Yes. I'm talking about compiling the best chess engine (not mine to be sure) on Windows using VC++ vs GCC... The GCC beats VC++ with no mercy...
Skipper: We'll fix it.
Alex: Fix it? How you gonna fix this?
Skipper: Grit, spit and a whole lotta duct tape.
|
|
|
|
|
I'd look at your algorithms and settings. There are places where the standard library being used makes a huge difference. Another thing to check is code optimized for a specific compiler. I have some code that is highly optimized for SSE 4.2 on VC++. I will be adding intrinsic support to GCC soon, but until then, the algorithm runs 80% faster with VC++ code.
I have programs that have VC++ trouncing GCC and Clang. Others showing GCC and Clang in first. All in all, I find that Clang tends to run fastest. In the past, ICC outpaced them all, though it had some quirks and occasionally completely fell on its face (it was unreliable enough that i couldn't recommend it at the time.)
I was a big fan of Clang until earlier this year when I found both GCC and VC++ exceeding it with C++14/1z support and a serious bug we encountered in Clang. Again, all three varied in performance, depending on what was being tested and on what platform with none being the absolute best across the board.
|
|
|
|