I am seeing some pretty rocky shapes around here:
You might wanna convert those to func_detail. I am guessing VIS is the phase that takes the most time? In which case, yeah, you should definitely use func_detail.
Whenever you have a non-entity brush, you should be aware that it essentially subdivides the space around it. So if you have an 8-sided cylinder in a room, it'll subdivide that room's space into 8 separate "rooms", which makes sense to the compilers, even though the player (and the mapper) perceives it as a single room. This causes the compilation to take a looot longer than really necessary.
I'll provide some illustrations soon.
Edit:
Here's one map with func_detail and func_wall:
And here it is without them:
Another example:
The map compiles pretty fast on my i5-8400, maybe all within 5 minutes.
Anything that shouldn't contribute to visibility calculations (i.e. details) should be func_detail or func_wall, depending on certain things. But generally it's func_detail.