In my approach, DMN decision models are never evaluated by themselves, only as steps in a BPMN process. This keeps the models fairly simple, and they typically evaluate in 0.001 second.
The BPMN processes typically perform well. I've used them to automate realtime auction activities, for example, typically returning in under a second.
Where BPMN starts to drag in my experience is in iterative processes with heavy data loads. Here, I've had to bail out to native, compiled (Java, C#, etc) processes.
I hope this is helpful.