|
12 | 12 | import ai.djl.ndarray.NDArray; |
13 | 13 | import ai.djl.ndarray.NDList; |
14 | 14 | import ai.djl.ndarray.NDManager; |
15 | | -import ai.djl.ndarray.types.Shape; |
16 | 15 | import ai.djl.repository.zoo.Criteria; |
17 | 16 | import ai.djl.repository.zoo.ModelNotFoundException; |
18 | 17 | import ai.djl.repository.zoo.ZooModel; |
|
22 | 21 | import ai.djl.translate.TranslatorContext; |
23 | 22 | import java.io.IOException; |
24 | 23 | import java.nio.file.Paths; |
25 | | -import java.util.concurrent.ArrayBlockingQueue; |
26 | | -import java.util.concurrent.BlockingQueue; |
27 | 24 | import java.util.logging.Level; |
28 | 25 | import java.util.logging.Logger; |
29 | 26 | import org.jlab.clas.reco.ReconstructionEngine; |
@@ -57,27 +54,8 @@ public class DCClsComboEngine extends ReconstructionEngine { |
57 | 54 |
|
58 | 55 | final static int SUPERLAYERS = 6; |
59 | 56 |
|
60 | | - // -------- Predictor Pool -------- |
61 | | - public static class PredictorPool { |
62 | | - final BlockingQueue<Predictor<float[][], float[]>> pool; |
63 | | - public PredictorPool(int size, ZooModel<float[][], float[]> model) { |
64 | | - pool = new ArrayBlockingQueue<>(size); |
65 | | - for (int i=0; i<size; i++) { |
66 | | - try { |
67 | | - pool.add(model.newPredictor()); |
68 | | - } catch (Exception e) { |
69 | | - Logger.getLogger(PredictorPool.class.getName()).log(Level.WARNING, "Failed to create predictor", e); |
70 | | - } |
71 | | - } |
72 | | - } |
73 | | - public Predictor<float[][], float[]> take() throws InterruptedException { return pool.take(); } |
74 | | - public void put(Predictor<float[][], float[]> p) throws InterruptedException { if (p!=null) pool.put(p); } |
75 | | - public void shutdownAll() { for (Predictor p: pool) { try { p.close(); } catch (Exception ignored) {} } } |
76 | | - } |
77 | | - |
78 | 57 | public DCClsComboEngine() { |
79 | 58 | super("DCClsComboEngine","tongtong","1.0"); |
80 | | - |
81 | 59 | } |
82 | 60 |
|
83 | 61 | @Override |
|
0 commit comments