O Team Viewer é um popular aplicativo de controle remoto universal. Ele é executado no IOS, Linux, Android, Windows e Mac, etc. É ótimo que este software esteja disponível para Linux, mas também observei alta carga de CPU quando se trata de sessões ativas do Team Viewer. A carga da CPU desaparece quando você se desconecta. Parte da explicação para isso pode ser que a CPU é usada para toda a renderização e não para a placa gráfica, o que pode ser o motivo pelo qual ela tem um uso menor da CPU no Windows e no Mac. Infelizmente, não consegui encontrar uma alternativa que seja perfeita.
Todas as sugestões que sugerem que de alguma forma o VNC ou seus derivados são de alguma forma um substituto, são sugestões mal pesquisadas. Embora você possa controlar remotamente uma sessão da área de trabalho usando o VNC, ela não é tão eficiente quanto o TeamViewer. O NX e seus derivados estão em igualdade de condições quando se trata de desempenho, e existem até mesmo implementações de código aberto que usam o RDP com sucesso. No entanto, nenhuma outra solução permite que você atravesse firewalls e NAT com absolutamente nenhuma configuração. O Team Viewer funciona da mesma maneira que o Skype, no sentido de que ele simplesmente descobre como acessar a Internet e entrar, e então localiza todos os associados em sua conta (computadores no caso do Team Viewer). Essa é a principal característica do Team Viewer e a principal razão pela qual se tornou tão popular; e fico triste ao ver que não existe uma contraparte de software livre para o Team Viewer. Uma implementação open source do Team Viewer seria uma ferramenta seriamente útil em combinação com o Ubuntu One ou algo semelhante.
Para atenuar os efeitos do alto uso da CPU, você pode tentar definir uma prioridade mais baixa para os processos teamviewerd e TeamViewer GUI. Você também pode comprar uma licença e depois abrir um bug ou caso em relação à carga da CPU e ver se eles resolvem o problema. Caso contrário, acho que você está sem sorte.