Compartilhamento Falso e Variáveis Atômicas
Quando variáveis diferentes estão dentro da mesma linha de cache, você pode experimentarPartilha Falsa, o que significa que, mesmo que dois threads diferentes (rodando em núcleos diferentes) acessem duas variáveis diferentes, se essas duas variáveis residirem na mesma linha de cache, você terá um desempenho atingido, pois cada coerência do cache de tempo será acionada.
Agora, digamos que essas variáveis são variáveis atômicas (por atômica quero dizer variáveis que introduzem uma cerca de memória, como oatomic<t>
de C ++), o compartilhamento falso importa, ou não importa se as variáveis atômicas estão na mesma linha de cache ou não, já que supostamente elas introduzirão a coerência de cache de qualquer maneira. Em outras palavras, colocar variáveis atômicas na mesma linha de cache torna o aplicativo mais lento do que não colocá-las na mesma linha de cache?