... | ... |
@@ -170,11 +170,10 @@ class BaseRunner(metaclass=abc.ABCMeta): |
170 | 170 |
return self.log is not None |
171 | 171 |
|
172 | 172 |
def _ask(self, n): |
173 |
- pids = [ |
|
174 |
- pid |
|
175 |
- for pid in self._to_retry.keys() |
|
176 |
- if pid not in self._pending_points.values() |
|
177 |
- ][:n] |
|
173 |
+ pending_ids = self._pending_points.values() |
|
174 |
+ pids_gen = (pid for pid in self._to_retry.keys() if pid not in pending_ids) |
|
175 |
+ pids = list(itertools.islice(pids_gen, n)) |
|
176 |
+ |
|
178 | 177 |
loss_improvements = len(pids) * [float("inf")] |
179 | 178 |
|
180 | 179 |
if len(pids) < n: |