Best Strategy to assign executors to gitlab groups

  1. for each gitlab group should i have a runner
  2. number of groups is fixed but we can have new more group created
  3. i can create as much vm runner as want ( on premises )

how much vm should i need and how much exectors should i have in each runner ?