Eu faço desenvolvimento de aplicativos de baixa latência e uso isocpu e defino afinidade de thread para reduzir ( eliminar ?) a alternância de contexto durante meus threads críticos. No entanto, não tenho certeza de que outros tipos de interrupção meus threads críticos ainda estão sujeitos?
Embora eu entenda bem a arquitetura da CPU x86, eu não sei muito sobre interrupções / mudanças de contexto, os vários tipos etc. Quando usar getrusage
, ela mostra voluntária e involuntária switches de contexto?
O bypass do kernel também é usado, de modo que a placa de rede grava dados diretamente em um buffer no nível do usuário - o que pode excluir algumas respostas possíveis para essa pergunta.