In my experience, num_workers has unpredictable behavior for many threads. Having 16 logical threads I can usually only run around 8 as a stable configuration and only get a memory error once in a blue moon.
If anyone else is having problems I would suggest running 4-6 num_workers. More is often not needed.