Subgroups are optional, so you can disable having to use them if desired.  Where subgroups come in handy is if you want to combine racers so they run in a larger group, but you still want to separate out the standings.

Example:

"Group A" has only a few racers
"Group B" has only a few racers
Combine both of these into a larger "Group AB" and create subgroups of "Subgroup A" and "Subgroup B"

A and B racers will compete together in "Group AB", but once racing is done you can look at the standings for "Subgroup A" and the standings for "Subgroup B".

Note: This only works when scoring by Times.  If scoring by Points, finish order matters, so you do NOT want to use subgroups. With times scoring, racers are really racing the clock, not the racers in the next lane.