The Maximum CPU time exceeded error occurs when the actual CPU time has taken longer than the limit built in to the task description.
In the message log:
Aborting task E000027_234A_00035p00o_1: exceeded CPU time limit 298094.146307 Computation for task E000027_234A_00035p00o_1 finished
Note: The time limit is quoted in CPU seconds.
In the result log:
<message> Maximum CPU time exceeded </message>
This limit is set by the project and is dynamically generated based on recent results returned from the same work batch. World Community Grid policy is to set this limit to 10 times the estimated runtime for the task (8 for Human Proteome Folding - Phase 2). There are several causes for the error:
- A major problem with the task may prevent it from finishing.
- The task may not be representative of the previous tasks, resulting in a bad estimation.
- The computer benchmark may be faulty. In this case, the CPU time limit will seem unusually low.
After the error has occurred, nothing can be done other than reporting the error to World Community Grid using the forums. If the problem can be foreseen, the limit can be adjusted manually.
Predicting the problem
Open client_state.xml in a text editor (this file is located in your BOINC data directory). Look in <host_info> for <p_fpops>. This is the floating point value your computer got while running the BOINC benchmark.
Next look for the field <rsc_fpops_bound> within the <workunit> tag for one of these long running tasks.
The client will stop running the task after rsc_fpops_bound / p_fpops CPU seconds go by.
Adjusting the limit
- Stop BOINC (exit BOINC Manager, and if necessary, stop the BOINC service).
- Open client_state.xml and modify the value for rsc_fpops_bound. Increasing it by an order of magnitude is generally suficient.
- Restart BOINC.
Fixing the benchmark
- Run the benchmarks manually, using the command in the Advanced menu of the advanced view.
- Stop and restart BOINC so the correct benchmark is used for the active tasks.