Hey so I have a low priority auxtask that occasionally runs to do FFTs on a bunch of audio files and some other stuff that can take some time.

I just saw that at one point where I had a lot of audio files to process, the program exited and printed:

Xenomai/cobalt: watchdog triggered
CPU time limit exceeded

As a quick solution I figured I could add usleep(5000); in the for loop that iterates over the audio files, so that the auxtask suspends between each processed file.

I assume suspending the task like this resets a CPU time limit counter and thus lowers the chance of triggering the watchdog. Do you think I am correct in my assumption? Is there something else I might look into?

Yes that is good enough; even usleep(0); (or pthread_yield()) should work.

However, as it seems that your threads do not actually have real-time requirements, then maybe you should reconsider whether running them in a Bela AuxiliaryTask (i.e.: a Xenomai thread) is the best approach. You may run it in a std::thread instead and let the linux scheduler do its job.