If you have access to the SQL Server ReportServer database, run the following query or the like in the ExecutionLog view:
select TimeStart, TimeEnd, TimeDataRetrieval, TimeProcessing, TimeRendering, Status, ReportID from the executable
This will provide you with a good breakdown of the rendering of the report (with various parameters). Pay particular attention to TimeRendering, TimeProcessing, and TimeDataRetrieval. Large or high values โโfor any of these columns illustrate where your bottleneck is.
One of the problems that I experienced in the past is when you return a fairly large dataset to the report (5000 rows are large enough for this scenario) and then you use the built-in ssrs filtering, the rendering is very slow and this will result in a very high TimeRendering value . All rendering should be done at the database level, grouping and filtering will not work well if large amounts of data will be performed in the ssrs report itself.
Alex h
source share