I try to avoid using them if possible. It really depends on why you are using them which will vary from report to report. I see use of them as ways to avoid 'duplicating' data which can often be handled in other ways.
Can you accomplish the same thing in a stored procedure?
Can you attend to the content by grouping? Can you make the sub reports run time reports that only execute when selected?
Also are you using "page N of M" in Crystal that will also slow down run/rendering time?