So I asked earlier about why timidity was running on my system and got a good explanation that related to systemd.Now I am wondering why it is hogging one of my cores (my processor is an AMD Athlon(tm) II X4 640 Processor so it has 4 cores).If I run strace on the process I get the following (ran it for a few seconds, seems to be repeating so I stopped after that):ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0poll([{fd=6, events=POLLIN}], 1, 0)     = 0 (Timeout)ioctl(6, SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS, 0x16c83e0) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x7fff43107780) = 0ioctl(4, SNDRV_PCM_IOCTL_HWSYNC, 0x3cd407d5) = 0The files that are open by that process are, according to information in /proc/$PID/fd:/dev/null/dev/snd/timer/dev/snd/pcmC0D0p/dev/snd/controlC0/dev/snd/seqThe Linux distribution is Debian stable (Jessie). Version of timidity is 2.13.2-40.2.
Why is Timidity taking up all processing power of one core
debian;timidity