Neil
There are probably a number of options that can improve the performance of the report, but it will probably require a lot more Q&A to understand your reporting environment.
If you think the performance problems is because of a lot of custom calcs, I can think of a couple of options:
1) you can try to move some of the calculation work into the database by building pre-calculated tables or views, thus moving some of the workload to the database.
2) you can use Impromptu on a bigger machine. (Some of the complex report I build are done on a server-class machine that I remote into.)
If you think it's taking long b/c of extremely large result sets, you can go with option 2 above. Also make sure "Retrieve only the required rows" is set in the "Access" tab of Query Data.
Finally, if you notice a change in performance from one version of Impromptu to another, I agree with CP. The reason could be that you have optimized ini files for your old version of impromptu that need to used for your new version. Additionally, make sure to check the SQL that you have from when it was running faster. Compare that to the SQL that you are getting now with the slower version. My bet is that it would not be the same.