Um sistema multiprocessado foi criado adicionando mais processadores a uma máquina. Esse aumento de processadores melhora o tempo de resposta, a vazão ou ambos? Justifique.

Passo 1

O enunciado pergunta se, ao criar um sistema multiprocessado adicionando mais processadores a uma máquina, esse aumento melhora o tempo de resposta, a vazão ou ambos.
Informações dadas (diretas e implícitas):
  • Foi adicionada capacidade de processamento (mais processadores) à mesma máquina.
  • Não foi especificado o tipo de carga de trabalho (um único programa paralelo, muitos pedidos independentes, etc.).
    Perguntas que preciso responder:
  • O que é exatamente “tempo de resposta”?
  • O que é “vazão”?
  • Em quais situações aumentar processadores melhora cada um desses indicadores?
  • Quais limitações e efeitos colaterais (conteúdos como overhead, contenção) podem impedir melhorias?

Passo 2

Definições fundamentais (explico com calma para você aplicar na prova):
  • Tempo de resposta: é o tempo que um pedido/alguma tarefa leva desde que é feita até que recebe uma resposta final. Denoto por W (média do tempo de resposta). É também chamado de latência.
  • Vazão: é a taxa de trabalho completado por unidade de tempo, denoto por \lambda ou X (p. ex. tarefas por segundo). É a “quantidade entregue” por segundo.
    Intuição: vazão fala “quantos por segundo”, tempo de resposta fala “quanto tempo cada um demora”. Eles estão relacionados: se em média existem L pedidos no sistema e a vazão é \lambda, a Lei de Little diz
L = \lambda W,
onde W é o tempo médio que um pedido passa no sistema. Essa relação será útil para ver efeitos de fila.

Passo 3

Caso 1 — muitos pedidos independentes (workload com tarefas paralelizáveis e independentes): modelo simples e ideal.
  • Suponha que cada processador, sozinho, serve à taxa \mu (tarefas por segundo). Com N processadores independentes, a vazão ideal é
X(N) \approx N\mu,
enquanto a vazão com N=1 era X(1)=\mu. Ou seja, idealmente a vazão cresce aproximadamente linear com N.
  • E quanto ao tempo de resposta médio W? Se a chegada de pedidos \lambda for fixa e a capacidade total N\mu aumentar, a utilização por servidor diminui e o tempo médio de fila cai (menos espera), então W tende a diminuir. Em termos simples: mais servidores → mais capacidade → menos fila → menor tempo de resposta, desde que a carga de entrada \lambda seja menor que a nova capacidade N\mu.
    Exemplo numérico rápido: um processador atende uma tarefa em 10 s, então \mu = 1/10 = 0,1 tarefa/s. Com N=4, capacidade ideal X(4)=4\cdot 0,1 = 0,4 tarefa/s. Se a chegada é \lambda=0,3 tarefa/s, com 1 processador o sistema estaria saturado (pois 0,3>0,1), com 4 processadores fica estável e o tempo de fila cai, reduzindo W.

Passo 4

Caso 2 — um único trabalho paralelo (um programa que tenta usar vários processadores): Amdahl e o efeito de porção serial.
  • Seja p a fração do trabalho que é perfeitamente paralelizável (por exemplo, p=0,7 significa 70\% paralelizável) e 1-p a fração serial que não pode ser paralelizada. A velocidade (speedup) máxima ao usar N processadores é dada pela Lei de Amdahl:
S(N) = \frac{1}{(1-p) + \dfrac{p}{N}}.
  • O tempo de execução desse trabalho com N processadores é
T(N) = \frac{T(1)}{S(N)},
onde T(1) é o tempo com um processador. Observação: mesmo com N\to\infty existe um limite
\lim_{N\to\infty} S(N) = \frac{1}{1-p},
ou seja, o ganho é limitado pela fração serial.
Exemplo concreto: se p=0,7 e T(1)=100 s, então com N=4
S(4)=\frac{1}{0,3+\dfrac{0,7}{4}}=\frac{1}{0,3+0,175}=\frac{1}{0,475}\approx 2,105,
logo
T(4)\approx \frac{100}{2,105}\approx 47,5\\ \text{s}.
Mas T(\infty)=100/(1/(1-0,7))=100\cdot(1-0,7)=30\\ \text{s}. Ou seja, reduz a latência do trabalho, mas com retornos decrescentes e um limite imposto pela parte serial.

Passo 5

Relação entre os dois casos e interpretação prática:
  • Se a sua métrica na prova é vazão de sistema (quantos pedidos por segundo), adicionar processadores quase sempre aumenta a vazão até que outro recurso se torne gargalo (barramento de memória, I/O, locks). Em termos ideais, vazão cresce quase linearmente com N.
  • Se a métrica for tempo de resposta de um pedido/tarefa:
    • Para workloads com muitos pedidos independentes: tempo de resposta médio cai porque as filas diminuem (mais servidores disponíveis). Use a Lei de Little L=\lambda W para ver essa conexão.
    • Para um único trabalho paralelo: tempo de resposta melhora até o limite imposto por Amdahl; pode ficar limitado pela parte serial e pelo overhead de coordenação.
    • Para tarefas majoritariamente seriais (pequeno p): aumentar N traz pouco ou nenhum ganho no tempo de resposta.

Passo 6

Efeitos colaterais que podem impedir melhoria (coisas que o professor adora cobrar):
  • Overhead de paralelismo: criar threads, sincronizar e juntar resultados consome tempo; isso reduz o ganho efetivo. No cálculo, o overhead reduz p efetivo ou adiciona uma componente que cresce com N.
  • Contenção por recursos compartilhados: memória, barramento, locks, cache-coherency. Se todos os processadores disputam o mesmo recurso, a vazão pode parar de crescer e o tempo de resposta pode até aumentar.
  • Aceleração não linear e pontos de saturação: além de certo N os ganhos são marginais ou negativos. Em provas é bom justificar com Amdahl e mencionar gargalos práticos.

Passo 7

Resumo prático e receita para usar na prova (curto, direto e contundente):
  • Regra curta: aumentar processadores tende a melhorar a vazão; já o efeito sobre o tempo de resposta depende do tipo de carga:
    • muitos pedidos independentes → vazão aumenta e tempo de resposta médio diminui (menos fila);
    • um único trabalho paralelizável → tempo de resposta diminui até o limite de Amdahl (retornos decrescentes);
    • trabalho serial ou muita contenção → pouco ou nenhum efeito no tempo de resposta; pode até piorar por overhead.
  • Sempre mencione (na prova) a Lei de Amdahl para programas paralelos e a Lei de Little para sistemas com filas — isso mostra que você entende a relação entre vazão e tempo de resposta.

Passo 8

Mensagem de incentivo rápida: você já tem as fórmulas e a intuição — na prova, descreva o cenário (tipo de carga), cite Amdahl/Little e conclua com uma frase do tipo “vazão aumenta, tempo de resposta depende”. Vai dar certo!

Resposta

Aumentar o número de processadores geralmente melhora a vazão (mais capacidade = mais tarefas por unidade de tempo). O tempo de resposta pode melhorar, permanecer quase igual ou até piorar dependendo do caso: melhora quando o trabalho é paralelizável ou quando reduz filas (Lei de Little); melhora com limites e retornos decrescentes no caso de um job paralelo (Lei de Amdahl); é pouco afetado ou pode piorar se a aplicação for majoritariamente serial ou houver overhead/contenção.

Exercícios relacionados