I have an instance cap of 3 set. If I have no instances currently running and I queue up 8 jobs that are tied to one AMI, more than three instances will be started. I believe this is because the instance cap is checked against the number of instances currently running from EC2 and then launches the instance. I'd think that, rather than just checking against the EC2 running instance count, we should be also including the number of instances we've started launching. That said, I'm not entirely sure how we'd go about doing that.