```{index} single: set_autopthread_targ (PDL) ``` ```{index} single: PDL::set_autopthread_targ ``` # set_autopthread_targ `set_autopthread_targ($n)` - the number of threads an operation is split across, at most; 0 turns the splitting off. Returns `$n`. An operation is split along one of its broadcast dimensions, the one that divides most evenly, when its largest ndarray has at least `get_autopthread_size` Mi elements. The threads are pperl's own pool, so `--no-parallel` keeps every operation on one thread whatever this says. `PDL_AUTOPTHREAD_TARG` in the environment sets it when PDL loads; the default is `online_cpus`.