Skip to content

Commit fb05a6f

Browse files
Frédéric Branchaud-Charronfchollet
authored andcommitted
Revert "[Performance] Add a manager to share the sequence" (#7274)
* Revert "Explicitly mention dimension order (#7266)" This reverts commit 2942328. * Revert "Fix test style" This reverts commit 4392d12. * Revert "Fix for cntk issue 1994 (Keras/CNTK: BatchNormalization layer causes predict() values to be incorrect) (#7258)" This reverts commit 1dc67f3. * Revert "[Performance] Add a manager to share the sequence (#7256)" This reverts commit cad3d1e.
1 parent 2942328 commit fb05a6f

File tree

1 file changed

+2
-32
lines changed

1 file changed

+2
-32
lines changed

keras/utils/data_utils.py

Lines changed: 2 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44

55
import hashlib
66
import multiprocessing
7-
import multiprocessing.managers
87
import os
98
import random
109
import shutil
@@ -353,37 +352,11 @@ def __len__(self):
353352
raise NotImplementedError
354353

355354

356-
class HolderManager(multiprocessing.managers.BaseManager):
357-
"""Custom manager to share a Holder object."""
358-
pass
359-
360-
361-
class Holder(object):
362-
"""Object to encapsulate a Sequence.
363-
364-
This allows the Sequence to be shared across multiple workers.
365-
366-
# Arguments
367-
seq: Sequence object to be shared.
368-
"""
369-
def __init__(self, seq):
370-
self.seq = seq
371-
372-
def __getitem__(self, idx):
373-
return self.seq[idx]
374-
375-
def __len__(self):
376-
return len(self.seq)
377-
378-
# Register the Holder class using the ListProxy (allows __len__ and __getitem__)
379-
HolderManager.register('Holder', Holder, multiprocessing.managers.ListProxy)
380-
381-
382355
def get_index(ds, i):
383356
"""Quick fix for Python2, otherwise, it cannot be pickled.
384357
385358
# Arguments
386-
ds: a Holder or Sequence object
359+
ds: a Sequence object
387360
i: index
388361
389362
# Returns
@@ -467,9 +440,7 @@ class OrderedEnqueuer(SequenceEnqueuer):
467440
def __init__(self, sequence,
468441
use_multiprocessing=False,
469442
scheduling='sequential'):
470-
self.manager = HolderManager()
471-
self.manager.start()
472-
self.sequence = self.manager.Holder(sequence)
443+
self.sequence = sequence
473444
self.use_multiprocessing = use_multiprocessing
474445
self.scheduling = scheduling
475446
self.workers = 0
@@ -546,7 +517,6 @@ def stop(self, timeout=None):
546517
self.executor.close()
547518
self.executor.join()
548519
self.run_thread.join(timeout)
549-
self.manager.shutdown()
550520

551521

552522
class GeneratorEnqueuer(SequenceEnqueuer):

0 commit comments

Comments
 (0)