Improvements for @perfile

Parameter MULTIPLE=
Default "0" would mean a number of logical CPUs.
This would cause to run simultaneously a given number of instances of affected function and start next instance only when one of previous is completed.

Fractional value like 0.5 would run a number of instances equal to a (number of logical CPUs * value). For value 0.5 and 4 logical CPUs 2 instances, for value 0.5 and 8 logical CPUs 4 instances.
That would make a sense if affected function uses 2 worker treads. And it would not need adjusting to specific computer.

This could solve problem described in that post:

You might take a look at the thread referenced below. It shows a way to launch commands in a controlled number of threads.