On a technical level, a Business Object's 'run mode' that determine whether or not they can run in parallel with other objects on the same runtime resource. A process's 'run mode' is the most restrictive run mode used by all of the Business Objects it uses. The answer to how many can run at once is '1 Exclusive process' or '1 foreground process and unlimited Background processes'. Note that there's a solid risk of interference and by default, Business Objects are 'exclusive' but if your Object doesn't interact with any User Interfaces (i.e an object that only makes API calls or Regex parsing), then it's likely safe to set to 'background'.
On a licensing level, I've found that BP licenses restrict the number of processes you can run concurrently, rather than the number of 'bots' you have. For the implementations I've done, 5 background processes on one Runtime Resource counted the same as running a normal process on 5 Runtime resources.
There's no way that I've found to 'parallelize' subprocesses or Action calls from within a main process without delving into a Code stage or kicking off external scripts.
Note that on a Terminal Server with multiple simultaneous Windows logons, automate.exe started as a runtime resource using different ports will let you register each logon session as a separate runtime resource.