elle —
Since the beginning of Handmade Hero, I've been modifying my platform code little by little to ac…
You are right:
1
2
3
4
5
6
7
8
9
10
11
12
13#include <stdint.h>
#include <stdl…
Pseudonym, I do not think you are hallucinating here - I think it's just that GetSystemInfo() ret…
rathersleepy It is true that pre-C++11 on the Visual Studio compiler, volatile provided both atom…
Here are the relevant sections of the C++11 standard, page 145:
[ Note: volatile is a hint to t…
Hi Casey,
It is true that pre-C++11 on the Visual Studio compiler, volatile provided both atomic…
I was able to set up CLion to debug an external executable without much trouble. I've written abo…
The truth is not actually somewhere in between. The people who think "volatile" has something to…
Volatile appears to still has the same role as I've always thought it has, to tell the compiler "…
[note - I went a little overboard citing sources but I had fun researching this so I left them in…
@Kladdehelvete - You clearly don't understand hyperthreading. Hyperthreading is about using under…
Another approach would be to simply split a string of SIMD operations into two approximately-same…
I don't think there's anything that surprising about the results - you're just bound by available…
mmozeiko Kladdehelvete, did you read all the text I posted or just the first sentence?
MMozeiko:…
Allan Bowhill It totally makes sense that if Hyperthreads were used this way, they would have to …
mmozeiko 4096 on Windows 8.1 64-bit (16GB total memory, if that changes anything).
And also 4096 …
OK, I see now. You're talking about the underlying contention for hardware resources between hard…
Pseudonym73 Can someone call GetSystemInfo() and check please?
4096 on Windows 8.1 64-bit (16GB …
My suspicion is that choice of 4k/64k/2mb (Windows also allows 2mb pages nowadays) as a page size…
Yes, to be more specific, I am talking about "free" access to thread local storage. Every platfo…
Allan Bowhill Also, what is IACA?
https://software.intel.com/en-us/.../intel-architecture-code-an…
The problem is not the register file, it's the work units. For example, the CPU that we're using…
I was under the impression there was more than 1 SIMD register set you could work with. If you co…
mmozeiko You have working TLS also on Linux, OSX, Android and iOS by using pthread_key_t.
You mig…
mmozeiko VirtualAlloc will return memory that begins on page boundary (typically 4KB).
I don't ha…
Decrementing semaphore happens only on WaitForsingleObject function call. If InterlockedCompareEx…
elle —
Yes, I understand, but if a thread fails to get an entry, now, it will also decrement the semapho…
Hey guys, I figured it out. For those who got the same bug. On the GameOutputSound function, I wa…
But as far as I understand, that means that when multiple threads start the same entry simultane…
[quote=elle]Right now in the doNextWorkQueueEntry function, we first check if nextEntry < entr…