Finalmente encontrei a fonte do problema e uma solução (embora a solução definitivamente não seja perfeita).
O problema é causado pelo redirecionamento de entrada. Quando a entrada do teclado é substituída por / dev / null, algo dentro do wine ou do programa (eu não investiguei) aparentemente entra em um loop infinito de execução rápida que causa alta carga de CPU.
A solução que encontrei é adicionar "proprietário do console" à configuração do Upstart para que ele conecte o processo ao console. Depois disso eu fui capaz de redirecionar a saída corretamente:)
Como o programa está sendo executado em um servidor dedicado em um data center, essa configuração não parece causar nenhum problema.