- Faça mais tópicos sempre significam melhor desempenho?
- Como os threads afetam o desempenho?
- Por que você precisa ter cuidado quando tem mais de um tópico?
- O que acontece quando há muitos tópicos?
Faça mais tópicos sempre significam melhor desempenho?
Não necessariamente. Conseguir um melhor desempenho em software multithread é um exercício em gargalos. Quantos núcleos estão disponíveis é um gargalo em potencial. Se houver mais tópicos capazes de executar do que núcleos disponíveis para executá -los, mais threads não ajudarão o desempenho e, eventualmente, se tornará uma sobrecarga.
Como os threads afetam o desempenho?
Cada encadeamento de software requer memória virtual para sua pilha e estruturas de dados privadas. Como nos caches, o fatiamento do tempo faz com que os fios lutem entre si por memória real e, portanto, prejudica o desempenho. Em casos extremos, pode haver tantos tópicos que o programa fica sem memória virtual.
Por que você precisa ter cuidado quando tem mais de um tópico?
Em suma, a multi-threading mais provável de desacelerar um programa do que acelerar, a menos que algum pensamento seja colocado nele. Duas CPUs podem ser duas vezes mais rápidas, na melhor das hipóteses, mas podem ser facilmente mais lentas se você não tomar cuidado.
O que acontece quando há muitos tópicos?
Segundo, executar um número excessivo de threads resulta em sobrecarga devido à maneira como eles competem por recursos limitados de hardware. É fundamental distinguir entre threads de hardware e software. Os programas criam threads, que são chamados de “threads de software.Os threads no hardware são recursos físicos reais.