Announcement
Collapse
No announcement yet.
A Quick Benchmark Of Mozilla Firefox With WebRender Beta vs. Chrome
Collapse
X
-
Originally posted by Weasel View Post"Best practise C++" is what I called incompetent++, only for incompetent morons who need "runtime safety checks" because they're too incompetent so they make everyone's CPUs (users) process more crap and waste more energy globally.
Originally posted by Weasel View PostAnd no, most best practices of C++ these days are far from zero overhead. Bounds checks is just one of them. Some also tell you to use signed int everywhere, which generates pathetic code when trying to divide by constants compared to unsigned (even when you divide by power of 2!), unless compiler can prove that the number is strictly positive. Tell me more about "zero overhead" dreamland.Last edited by LinAGKar; 29 October 2018, 04:51 AM.
Comment
-
Originally posted by LinAGKar View PostI'm pretty sure this idea that competent people never makes any mistakes leads to a lot of bugs.
If your software is truly critical (e.g. security library) then get proper audits.
xkcd is always relevant.
Yes, on average software devs are much more incompetent than any other industry -- and that is because they are sheltered by idiots who bring up "best practices" and don't do proper audits and so on. People learn from mistakes. Shelter them with stupid failsafe automatic language checks, and they'll never learn.
Originally posted by LinAGKar View PostBecause people don't use signed integers in C.
Comment
-
-
I used the four performance benchmarks at browserbench.org to compare Firefox 57 (their big speed boost release) with whatever version of Chrome was out at the time, and Firefox did really well. It was within 20% of Chrome on two of the benchmarks, lost badly in a third, and won big in the fourth. Unfortunately I didn't record the numbers anywhere permanent and I'm too lazy to load up Chrome 63 (or whatever it was) and Firefox 57 to measure again.
Between then and now I think there have been performance regressions in Firefox and improvements in Chrome, because on the same hardware Chrome 70 demolishes Firefox 65, with or without WebRender enabled. Firefox 65 is within 10% of Chrome 70 in the Speedometer benchmark - which admittedly is probably the closest to a real usage speed test. In the MotionMark test it's 40% slower, which is disappointing because Firefox 57 beat Chrome in that one. In the others Firefox loses terribly.
Originally posted by Weasel View PostYes, on average software devs are much more incompetent than any other industry -- and that is because they are sheltered by idiots who bring up "best practices" and don't do proper audits and so on. People learn from mistakes. Shelter them with stupid failsafe automatic language checks, and they'll never learn.
Right?
Every argument you can apply for C++ over Java or Rust or anything with more builtin safety features will apply to assembly over C++.
- Likes 2
Comment
-
In the six TechEmpower web server benchmarks, Rust beats C++ in JSON serialization, multiple queries, and plain text and is at 67% of the best C++ offering in single-query, is at 57.8% of the best C++ offering in fortunes, is at 94.9% of the best C++ offering in updates. Not too shabby.
Oh, and don't tell the C++ fanboys but Java beats C++ (and Rust too) in four of the six benchmarks.
- Likes 2
Comment
-
Originally posted by Michael_S View PostBetween then and now I think there have been performance regressions in Firefox and improvements in Chrome, because on the same hardware Chrome 70 demolishes Firefox 65, with or without WebRender enabled. Firefox 65 is within 10% of Chrome 70 in the Speedometer benchmark - which admittedly is probably the closest to a real usage speed test. In the MotionMark test it's 40% slower, which is disappointing because Firefox 57 beat Chrome in that one. In the others Firefox loses terribly.
Originally posted by Michael_S View PostOh, and don't tell the C++ fanboys but Java beats C++ (and Rust too) in four of the six benchmarks.
- Likes 2
Comment
-
Originally posted by Michael_S View PostThen why not write everything in assembly? Who needs all that C and C++ nonsense overhead. Just work raw, all those those stupid failsafe automatic language checks in C++ are a waste.
Originally posted by Michael_S View PostRight?
Nobody cares about compilation times (compile-time checks) but you.
Originally posted by Michael_S View PostEvery argument you can apply for C++ over Java or Rust or anything with more builtin safety features will apply to assembly over C++.
Static typing doesn't affect it in the least. You can do 1 million static casts and they won't generate even a single instruction. (sometimes casting DOES generate an extra instruction but in that case it performs an operation, a sign extension, or float<->int conversion, whatever -- if you wrote it in assembly, you'd have to do it also, it's not EXTRA POINTLESS OVERHEAD)
C++ might have bound checks but those are in the standard library, not part of the language itself. The things that C++ adds bloat with is in stuff like dynamic_cast, since those are part of the language instead of a library.
Nobody forces you to use the standard library. The C library is even more sane, I mean it's like a normal library with normal APIs. Nothing tied to the language.
Comment
-
Originally posted by Michael_S View PostFor more real-world, compare Rust to C++ here: https://www.techempower.com/benchmar...=json&l=h79f5q
In the six TechEmpower web server benchmarks, Rust beats C++ in JSON serialization, multiple queries, and plain text and is at 67% of the best C++ offering in single-query, is at 57.8% of the best C++ offering in fortunes, is at 94.9% of the best C++ offering in updates. Not too shabby.
Oh, and don't tell the C++ fanboys but Java beats C++ (and Rust too) in four of the six benchmarks.
I can write a bubble sort in Rust and it will perform much worse than Python using quicksort. That must be proof that Rust is slower than Python.
- Likes 1
Comment
-
Originally posted by Weasel View PostNobody gives a shit about the crappy web frameworks they picked or who wrote them.
I can write a bubble sort in Rust and it will perform much worse than Python using quicksort. That must be proof that Rust is slower than Python.
Now justify why the fortunes benchmark where C++ wins is the 'realistic' option and all of the ones where Java or Rust leads are not.
- Likes 1
Comment
Comment