Resultados da pesquisa a pedido "memory-fences"
Qual é a diferença entre usar cercas explícitas e std :: atomic?
Supondo que as cargas de ponteiro e os armazenamentos alinhados sejam naturalmente atômicos na plataforma de destino, qual é a diferença entre isso:
Custo do uso dos campos finais
Sabemos que tornar os campos finais geralmente é uma boa ideia, à medida que obtemos segurança e imutabilidade do encadeamento, o que facilita o raciocínio do código. Estou curioso para saber se há um custo de desempenho associado. O Java Memory ...
pthreads v. ordenação de memória fraca SSE
As funções glibc pthread do Linux no x86_64 agem como cercas para acessos de memória com ordem fraca? (pthread_mutex_lock / unlock são as funções exatas em que estou interessado). O SSE2 fornece algumas instruções com ordenação de memória fraca ...
As barreiras de memória garantem uma nova leitura em C #?
Se tivermos o seguinte código em C #: int a = 0; int b = 0; void A() // runs in thread A { a = 1; Thread.MemoryBarrier(); Console.WriteLine(b); } void B() // runs in thread B { b = 1; Thread.MemoryBarrier(); Console.WriteLine(a); ...
Cercas de memória - Precisa de ajuda para entender
Estou lendo Barreiras à Memória, de Paul E. McKenney http://www.rdrop.com/users/paulmck/scalability/paper/whymb.2010.07.23a.pdf [http://www.rdrop.com/users/paulmck/scalability/paper/whymb.2010.07.23a.pdf]tudo é explicado em grandes detalhes e, ...
Existe uma barreira de memória implícita com o relacionamento sincronizado com no thread :: join?
Eu tenho um código no trabalho que inicia vários threads que realizam algumas operações e, se algum deles falhar, eles definem a variável compartilhada comofalso. O thread principal une todos os threads de trabalho. A simulação disso é mais ...
Uma barreira à memória é uma instrução que a CPU executa ou é apenas um marcador?
Estou tentando entender exatamente o que é uma barreira de memória. Com base no que sei até agora, uma barreira de memória (por exemplo:mfence) é usado para impedir o reordenamento das instruções de antes para depois e de depois para antes da ...
Tornar os armazenamentos de memória anteriores visíveis para as cargas de memória subsequentes
Quero armazenar dados em uma grande variedade com_mm256_stream_si256() chamado em um loop. Pelo que entendi, é necessária uma cerca de memória para tornar essas alterações visíveis para outros threads. A descrição de_mm_sfence() diz Execute uma ...
Página 1 do 2