V3 Documentation
Search

Max Number Of Processing Threads

Global-level NCrunch configuration setting Default Value: Equal to the logical CPU core count assigned to NCrunch (also controlled by the configuration wizard)

Purpose

This setting controls the maximum number of tasks that NCrunch is permitted to execute in the background at any one time.

For more information on NCrunch tasks that are being executed and what type of tasks exist, refer to the processing queue.

Recommendations

Typically this setting should be set equal to the number of logical CPU cores that have been assigned to NCrunch.

When working with solutions that contain long running tests that are not CPU intensive, it may be useful to push this setting higher to support better parallel execution.

You can use this setting as a way to throttle the amount of work that NCrunch is able to do, if you are experiencing problems with the background processing consuming too many system resources. Because NCrunch creates a new background process for each task being executed, its memory consumption will be significantly higher when the Max number of processing threads is set to a higher value.

Ensure you set the Fast lane threads value in proportion to this configuration setting, as this will improve engine response times.

Setting the value for this configuration setting to 1 will create a global configuration that will prevent parallel execution for any solutions processed by NCrunch, regardless of the Allow parallel test execution setting.