WTF Bites
-
The big downside of LTO is that it tends to bloat the code, and that can lead to L1 ICache busting, which is a big cause of the non-obvious result that adding more optimisation can actually slow things down more. It's the exact same problem as with making virtually everything inline.
I profiled in multiple instances
-Os
would make a faster code. It is perhaps related to cache miss. I wonder why this is not taken into account in say-O3
it should be faster, and in-lining does not always mean faster. Damn compiler writers.
-
in-lining does not always mean faster
Inlining generally makes your code faster iff the resulting code is smaller than the function call would be.
-
https://h30686.www3.hp.com/
Can someone explain to me what is up with HP's subdomains?They thought it made more sense than https://support.microsoft.com/en-us/help/894199/ ?
-
@Tsaukpaetra at least in that case I can tell the difference between a support article and a forum.
-
@Tsaukpaetra at least in that case I can tell the difference between a support article and a forum.
Sure that's not the support forum, english section, help category, topic 894199?
-
@ben_lubar said in WTF Bites:
in-lining does not always mean faster
Inlining generally makes your code faster iff the resulting code is smaller than the function call would be.
A call instruction is only a few bytes (even long jumps), your inlined function can hardly be any smaller. Unless optimization can eliminate much of the inlined code, which may happen with more context.
-
@ben_lubar said in WTF Bites:
in-lining does not always mean faster
Inlining generally makes your code faster iff the resulting code is smaller than the function call would be.
A call instruction is only a few bytes (even long jumps), your inlined function can hardly be any smaller. Unless optimization can eliminate much of the inlined code, which may happen with more context.
You've still got to put things on the stack or move them to different registers if the function takes any arguments, and move whatever its result is back to where you want it. The call instruction isn't the only part of the function call.
-
@ben_lubar Even so. I have never seen inlining to generate smaller code! Plus inlining a function may still need you to create things on the stack, you still have a scope for your function.
-
@ben_lubar Even so. I have never seen inlining to generate smaller code! Plus inlining a function may still need you to create things on the stack, you still have a scope for your function.
If an overridable function is empty or only one simple line of code, LTO can inline it for quite a bit of savings if it knows it won't be overridden in that context.
-
@ben_lubar said in WTF Bites:
If an overridable function is empty or only one simple line of code, LTO can inline it for quite a bit of savings if it knows it won't be overridden in that context.
Most of the time, what matters is not whether the overall code is smaller, but whether the hot path through the code is smaller and whether the branch predictor does a good enough job.
-
I have never seen inlining to generate smaller code!
It can happen if the inlining means that the compiler can figure out how to chop out lots of code. It's more likely to occur with generated code, as that often includes a whole bunch of checked preconditions by default (as people writing code generators tend to be a paranoid bunch) and the compiler can often prove whether the preconditions hold or not.
It's less common with user code, as that's often actually lacking in information about preconditions…
-
It's less common with user code, as that's often actually lacking in information about preconditions…
And parameter validation. And input validation. And proper error handling. And comments.
-
@Tsaukpaetra said in WTF Bites:
@Tsaukpaetra at least in that case I can tell the difference between a support article and a forum.
Sure that's not the support forum, english section, help category, topic 894199?
Today or tomorrow? MS links are immutable like a hurricane.
-
@boomzilla said in WTF Bites:
@Tsaukpaetra said in WTF Bites:
@Tsaukpaetra at least in that case I can tell the difference between a support article and a forum.
Sure that's not the support forum, english section, help category, topic 894199?
Today or tomorrow? MS links are immutable like a hurricane.
Yesterday, obs. It's probably gone already.
-
'Date Public Property CancellationDate() As String Get Return _CancellationDate End Get Set(ByVal value As String) _CancellationDate = value End Set End Property
What's strong typing?
-
-
-
@dkf I thought it was when you typed like this**strong text
-
Oh, yeah, it's optional, we swear... you just can't uncheck the option!
-
Oh, yeah, it's optional, we swear... you just can't uncheck the option!
It probably only lets you change it if you back up and select "custom" installation.
-
@anotherusername there is no "back", that is literally the first thing that pops up.
-
@anotherusername there is no "back", that is literally the first thing that pops up.
Or it's one of those "yeah I'm not really disabled. I just look that way" things...
-
@dcon tried clicking, nope... dunno, might be something else I installed, or it's just broken, whatever, I can always remove it once I'm done with what I have to do.
-
-
Technically correct, I guess.
-
Sure, I had enough adjustments to my gross income for the table to spill over onto a second page of the W-2. But the second page was posted in a second envelope.
-
@anonymous234 Wooden table, they mean?
-
-
@coldandtired said in WTF Bites:
I am the founder of this new aquarium, and I was wondering what is a fish?
-
@coldandtired Some dotcoms had less of a business plan than that, I suppose...
-
@ben_lubar
Hey, I mean, if it worked when @wood started Discourse, it can work for his new gaming development company too?
-
@ben_lubar
Hey, I mean, if it worked when @wood started Discourse, it can work for his new gaming development company too?King Jeff would have asked on StackOverflow and the question would have been closed for not adhering to one of the three trillion stupid rules.
-
-
-
-
In the 'I-wrote-it-why-should-I-read-it-as-well?' category
-
@izzion They decided to create the game engine for the next decade, ended up writing it ruby and now they can't make the progress bar on the loading screen animate fast enough to have CPU or IO time over to load the actual game assets? (Of which multiple GB are stored in text, and parsed with some regex abomination, that occasionally replaces some of the textures with long hexstrings that very much resemble md5sums.)
-
I just moved the bluetooth adapter from one USB port to another one and Windows told me I had to reboot for the hardware changes to take effect
-
-
-
@anonymous234 said in WTF Bites:
boob
Where? Give me!
If you eat a lot and get fat, you can have two!
-
@Luhmann In the corner of the preview window, a red one
-
-
-
According to the homepage of spacemacs, this is how you install it:
git clone https://github.com/syl20bnr/spacemacs ~/.emacs.d
-
@dramforever said in WTF Bites:
spacemacs
The version of Emacs where holding the spacebar causes the CPU to overheat?
-
Ok, so, Avast... I appreciate the effort, I really do.
However: Why in the holy fuck is me clicking
I trust this file
only result in:by default? Why in the holy fuck would I go through the trouble of clicking
More
, then clickingI trust this file
if I don't think it's fine to run it? Just accidentally? Like two clicks on relatively small targets in completely different parts of the screen, that just happens?And no, I'm definitely not waiting your estimated 206 minutes while it's analyzed, fuck you. Especially because your explanation of why it's dangerous is "I never seen this before!". Well, if other Avast users don't use SMPlayer, it ain't my problem!
-
Google Photos integration with Google Drive is stupidly confusing. Google Photos is kind of backed up in the drive (can see that in drive.google.com), but does not take up space (in photos.google.com !!!), but has no folder there that is not in sync, but can move things to the drive and all the while you won't know if it is copied or just moved or what.
Also, Google Hangout takes hours to upload a small 5MB video if you send it to someone, but at the same time it is also being uploaded to the Google Photos I guess consuming double the bandwidth! Oh BTW, Google Hangout's video upload suckzzzzzzzzz
-
@dse yeah, thankfully you can turn off photos and drive integration independently on both sides, but with integration on it is confusing. I've never tested what happens if I mess with the directory structure of the 'special' google photos folder...
-
A CSV file where the header is repeated every
50005001 rows