It suddenly struck me that you should be able to calculate WHEN you should pull over depending on the speed and number of people following. If you are trying to maximize the trip for everyone, then it's simply when the cost of pulling over is less than the loss of time by everyone behind.
First, the cost of pulling over. I'd guess that 30 seconds would be a reasonable figure. That gives 10 seconds lost while braking, 10 seconds to let the traffic past, and 10 seconds to get back up to speed. I reckon I could get under way and get up to speed with a car 6 seconds away, so 10 should be comfortable.
Second, the cost of the people behind. If the person in front was doing 90km/h and the people behind were travelling at 100km/h, the difference is 10km/h of lost 'time'. The ratio of current speed to desired speed difference is therefore 90km/h : 10km/h , or 9:1. So a 30 second loss in 'time' through difference in speeds therefore translates to 4 & 1/2 minutes of driving time by the lead driver. At 90km/h that would translate to almost 7kms of road.
That seems reasonable. ~5minutes following someone over 7kms would have at least a couple of opportunities to pass. If someone was stuck behind me for that long I'd consider looking for ways to let them pass.
Now lets look at someone doing 80km/h with 4 cars behind them wanting to go 100km/h.
80km/h : 20km/h * 5~20 seconds before you are inconveniencing the people behind you more than the 30 second effort to get off the road. In other words, you're an inconsiderate driver if you don't pull over at the next opportunity.
8 : 10
24secs : 30secs
Keep in mind this has nothing to do with the amount of passing lanes, the amount of pull-in spots, whether you're going 80 and the guy behind only wants to do 90, it's purely about maximizing the journey of all participants. It's about being considerate of all travellers, not just yourself.