Skip to main content
Windward

Why does my Report take so long to Output?

Overview

Have you read through our Performance Documentation, but still feel concerned that your report is taking too long to generate? There are many reasons your report could be taking longer than expected. Here are some possibilities to consider.

 

Timing Out

  • Our reports don't time out; Autotag and the Engines will either give you an error as to why the report cannot output, or the report will just take its time to process.
  • If you actually get a Timeout message, that message is likely coming from another program you're using in conjunction with Windward. 

 

Logging

  • If you have your Windward logging set to "DEBUG" this captures every sing action -- which is very useful if you're having trouble, or if we need to see why you're getting an error. DEBUG writes a LOT of content to the log file and may be contributing to the slow runtime and increased memory usage.  It should not be turned on for the production system except for analysis of an error.
  • Change your logging to "WARN" and see if your generation time improves.

 

Windward and your data source

The usual culprit is the size of your data source, and how much data you are trying to include in your final report. We usually recommend that you use a pared down version of your datasource if you are frustrated with the time it takes to output your report. 

 

  • Our Performance Test uses a template that is 2 pages long and the report it generates is 17 pages. We find that our test times are pretty linear, so that more data will increase the time it takes for a report to run.
  • If you are using a large data source, and your final report contains thousands of bits of data, your report could take a longer time to Output.
    • For example, a report in Excel which contains 35,000 rows of data, with multiple Out Tags per row, may take 20-30 minutes to write when you Output.
      • Make use of Filters in your ForEach Loops to make your output report smaller. See the specific Select Statement Wizard for your data source. 
  • If you have a large data source, consider filtering your data source by creating and using data sets, or by creating mini versions of your data source that contain only the relevant information. 
  • Some data sources contribute to faster or slower run times. For Example, SQL templates are faster than XML templates when it comes to using multithreaded prgrams (think 16 threads or more). However, XML templates are usually much faster!

 

Your Environment

Your speed also may be limited by:

  • 32 bit versus 64 bit Windows (the 32 bit version limits you to 2GB of memory)
  • The Windward Engine you are using, and how many threads you have in use.
  • The type of data source you're using (see above)
  • There are many other factors about your environment that can contribute to slower or faster run times.