Contact Optimization session takes a long time to run
Here are troubleshooting steps that you can follow if you believe your Contact Optimization session is taking too long to run.
Before you start
1.
Make sure that the session is not running with Optimize|Debug|ExtraVerbose enabled, as this setting causes slow run times. Check both the session-level advanced settings and the configuration properties.
2.
3.
4.
Set Optimize|Logging|loggingLevels to MEDIUM or LOW. Check both the session-level advanced settings and the configuration properties.
Run a session to generate a clean log for troubleshooting
If your Contact Optimization session takes a long time to run after you follow the steps in Before you start, you need to collect detailed information to analyze.
Run a session to generate a clean Contact Optimization server log with the HIGH or ALL setting on. While your session is running, do not access any Contact Optimization reports, as this action adds data to the log that can confuse things. This session might take a longer time to run because you are collecting detailed log data. Remember to reset Optimize|Logging|loggingLevels to MEDIUM or LOW after you collect the clean log.
When you have the generated log, you check for two things:
*
*
How to check that the amount of time spent accessing the database
Using the clean log you generated, follow these steps to find out how long Contact Optimization is taking to access the database to set up the data that is needed for the session.
1.
In the Contact Optimization server log, search for the string: LRE Starting chunk: 0
2.
If the value seems too high, look at the start and end timestamps for the queries that comprise the log section preceding LRE Starting chunk: 0 to identify which one is taking too long.
3.
How to check that the amount of time spent processing customer samples (chunks)
Using the clean log you generated, follow this procedure to find out how long Contact Optimization is taking to process customer samples.
In the Contact Optimization server log, subtract the time stamp from the line matching LRE Starting chunk: 0 from the time stamp of the line matching Run Thread terminated.
This log entry tells you the total time that is spent in the CPU-intensive optimization section. If this action is where the bulk of the time is being spent, you can get a better idea of what is going on by looking at the chunk iterations.
The optimal solution for each chunk is found by iterating through the following steps:
1.
2.
3.
Each time Contact Optimization applies a set of scores, it counts as one chunk iteration. The amount of time that is spent in the CPU-intensive section is roughly proportional to the average number of iterations per chunk.