Um servidor multiprocessado executa aplicações intensivas em...

Próximas questões
Com base no mesmo assunto
Q4234701 Arquitetura de Computadores
Um servidor multiprocessado executa aplicações intensivas em memória e possui múltiplos sockets, cada um com acesso preferencial a um subconjunto da memória principal. Após aumento da carga e redistribuição de threads, observou-se variação de latência no acesso à memória, especialmente quando threads acessam dados fora de seu domínio preferencial. Esse comportamento é explicado por 
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: C

Fundamento decisivo: A pista decisiva é a menção a múltiplos sockets com acesso preferencial à memória e ao aumento de latência quando a thread acessa dados fora desse domínio.

Tema central: latência em NUMA
Análise das alternativas
A
Errada
Incorreta. O fenômeno descrito não é paginação em disco nem troca entre memória principal e armazenamento secundário. O problema está na localidade da memória entre sockets, isto é, acesso remoto versus local dentro da própria memória principal.
B
Errada
Incorreta. O enunciado não aponta redistribuição automática entre níveis de cache como causa central. A pista decisiva é a existência de subconjuntos da memória principal associados a cada socket, o que remete à diferença de latência da memória local e remota, não a balanceamento de cache.
C
Certa
A alternativa C está correta porque descreve o comportamento de arquiteturas NUMA, em que a memória local do socket é acessada com menor latência do que a memória remota. O enunciado aponta exatamente essa diferença ao falar em subconjuntos da memória principal associados a cada socket e em variação de latência quando threads passam a acessar dados fora de seu domínio preferencial.
D
Errada
Incorreta. A alternativa introduz dispositivos de armazenamento de baixa latência e acesso ao cache interno do processador, mas o cenário não envolve armazenamento persistente nem relaciona a variação observada ao cache interno. A causa descrita é a topologia de memória por socket.
E
Errada
Incorreta. Gargalos de barramento ou interconexão podem afetar desempenho de forma genérica, mas aqui a explicação exigida é específica: a latência muda quando a thread acessa memória fora do seu domínio preferencial. Isso é critério de memória local versus remota por socket, não uma limitação geral entre caches e memória principal.
Pegadinha da questão
A confusão real era desviar a leitura para swap, cache ou barramento apenas porque a questão fala em memória e latência, quando a pista decisiva estava em “acesso preferencial a um subconjunto da memória principal” por socket.
Dica para questões semelhantes
  • Se o enunciado mencionar múltiplos sockets com afinidade a partes da memória, procure a ideia de memória local versus remota.
  • Se a latência aumenta após migração ou redistribuição de threads, verifique se elas passaram a acessar dados fora do domínio de memória do socket.
  • Não confunda variação de latência por topologia de memória com paginação em disco, a menos que o enunciado traga swap, memória virtual ou armazenamento secundário.
  • Quando a pista central estiver na memória principal associada a sockets, elimine alternativas que deslocam a causa para cache ou armazenamento.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Gabarito C

O cenário descreve perfeitamente uma arquitetura NUMA (Non-Uniform Memory Access):

  • Estrutura: O sistema possui múltiplos sockets de processadores, e a memória física é dividida e atribuída diretamente a cada um deles (memória local).
  • Comportamento: Quando uma thread executando no Socket A precisa acessar dados alocados na memória física associada ao Socket B (memória remota), os dados precisam trafegar através dos barramentos de interconexão entre os sockets (como Intel UPI ou AMD Infinity Fabric).
  • Impacto: Esse acesso à memória remota gera uma penalidade de latência sensivelmente maior do que o acesso à memória local associada ao próprio socket.

Retroceder Nunca Render-se Jamais !

Força e Fé !

Fortuna Audaces Sequitur ! 

A) Errada: O texto menciona que o problema ocorre quando as threads acessam dados "fora de seu domínio preferencial" (ou seja, na memória de outro socket). A paginação em disco (uso de swap) ocorre quando a memória RAM total do sistema se esgota, o que não foi mencionado no enunciado. O problema aqui é a distância física até o dado dentro da própria memória RAM, não a falta de espaço nela.

B) Errada: A memória cache (L1, L2, L3) lida com a replicação e coerência de dados muito próximos ao núcleo do processador. O enunciado foca explicitamente na memória principal (RAM) e na divisão dela por sockets. A redistribuição de dados nas caches não altera o fato de que a RAM física está dividida geograficamente entre os sockets.

C) Correta

D) Errada: "Dispositivos aplicados ao armazenamento de baixa latência" refere-se a tecnologias de armazenamento secundário (como SSDs NVMe de altíssimo desempenho). O problema descrito ocorre puramente entre os processadores e a memória RAM principal, sem nenhuma relação com o sistema de arquivos ou discos de armazenamento.

E) Errada: Embora o barramento de comunicação seja muito exigido em sistemas multithread, a alternativa falha por ser genérica. Ela culpa uma "limitação geral do barramento" em vez de apontar o fator crucial do cenário: a não-uniformidade (assimetria) do acesso, onde o acesso local é rápido e o acesso ao socket vizinho (remoto) é lento.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo