Good video.
I liked the "juggling razorblades" analogy.
Yep, it makes sense and I agree it's the better option. I was initially thinking the implementati…
To clarify on the anti-aliasing:
Since we are always drawing from bitmaps which have alpha-blend…
There's really no such thing as non-32-bit-aligned 32-bit value on the stack unless you really go…
What other platforms are you talking about? You have working TLS also on Linux, OSX, Android and …
The point of the queue here is not to maximize the amount of sleeping, but rather minimize the am…
We haven't really gotten to the point where we need to start caring about thread_context. It's r…
I was wondering what the purpose of thread_context is now that multi-threading has added to HH. D…
Such approach is fine. It will work. Just don't forget to increase max count. Semaphore value has…
If I was to implement something like this I'd probably go the route of the WaitForSingleObjectEx …
Oh, you're right. Value will be 0 if no other jobs are being added. I don't know what I was think…
Ok, well I grabbed the source code and looking through it properly I can see there's no bug. I do…
Why do you think semaphore is at 0 at 4th step? Semaphore decreases only when WaitForSingleObject…
Apologies if I'm mistaken, but I just watched episode 126 and spotted what might be a possible ra…
then there is _aligned_malloc which will take care of alignment to arbitrary boundaries for you:
…
_mm_mul_epu32 only multiplies 2 32-bit integers and stores result as 2 64-bit integers. So you wo…
elle —
After debugging my vectorized version for a long time, I thought of a few minor things that might…
Yes, for variables allocated on stack compiler aligns them automatically.
It gets tricky with st…
MSDN states that parameters for InterlockedCompareExchange and InterlockedIncrement functions mus…
Link to the interview.
Not much that hasn't already been discussed in these forums or on the str…
Yes, I got VLIW somehow confused with SIMD, not sure why.
SIMD executes one instruction on sever…
Just to be clear, it was SIMD stuff we did (Single Instruction Multiple Data), not VLIW (Very Lon…
Awesome catch! Yes I think that is a bug. This probably serves me write for violating my own ru…
cmuratori Obviously, the degree of speedup you get depends entirely on a) how underutilized the w…
Unfortunately no. Clang does same thing that GCC does for these vector types: https://gcc.gnu.org…
elle —
I noticed that LLVM is less strict about the vector types than MSVC by default. For example, it d…
Nick —
Ah I see. Thank you both for the explanation.
It's hard to ignore 8 processors. After all, they're just sitting there, unused. I'm pretty sure …
robert —
Hello All,
I was watching episode 124 and i think i ahve spotted a possible bug in the threading…
There's more stuff about MESI on ryg blog: https://fgiesen.wordpress.com/2014/08/18/atomics-and-c…