Add basic default multi-threading
dav1d should get a (basic) default multi-threading configuration. Implementers shouldn't have to worry about thread configurations if they don't need to. Both the --framethreads
and tilethreads
options could use auto
, -1
or, if it isn't used already, 0
as a parameter.
With the behavior I observed, this configuration is near-optimal, at least on x86.
-
--framethreads auto
should use the number of logical processors. -
--tilethreads auto
should use the number of tiles the video contains, with a minimum of 2 and maximum of the number of logical processors.