|
@@ -48,28 +48,33 @@ public class DemoModel implements Model {
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public boolean loadFromStream(InputStream in) throws Exception {
|
|
public boolean loadFromStream(InputStream in) throws Exception {
|
|
- String modelDir = PropertiesUtil.getString("model.dir") + "/demo";
|
|
|
|
- CompressUtil.decompressGzFile(in, modelDir);
|
|
|
|
-
|
|
|
|
- String modelFile = "inference.pdmodel";
|
|
|
|
- String paramFile = "inference.pdiparams";
|
|
|
|
-
|
|
|
|
- log.info("start init Config");
|
|
|
|
- Config config = new Config();
|
|
|
|
- config.setCppModel(modelDir + "/" + modelFile, modelDir + "/" + paramFile);
|
|
|
|
- config.enableMemoryOptim(true);
|
|
|
|
- config.enableProfile();
|
|
|
|
- config.enableMKLDNN();
|
|
|
|
- config.getCpuMathLibraryNumThreads();
|
|
|
|
- config.getFractionOfGpuMemoryForPool();
|
|
|
|
- config.switchIrDebug(false);
|
|
|
|
-
|
|
|
|
- log.info("start init Predictor");
|
|
|
|
- Predictor predictor = Predictor.createPaddlePredictor(config);
|
|
|
|
- Predictor temp = predictor;
|
|
|
|
- this.sourcePredictor = predictor;
|
|
|
|
- temp.destroyNativePredictor();
|
|
|
|
- return true;
|
|
|
|
|
|
+ try {
|
|
|
|
+ String modelDir = PropertiesUtil.getString("model.dir") + "/demo";
|
|
|
|
+ CompressUtil.decompressGzFile(in, modelDir);
|
|
|
|
+
|
|
|
|
+ String modelFile = modelDir + "/inference.pdmodel";
|
|
|
|
+ String paramFile = modelDir + "/inference.pdiparams";
|
|
|
|
+
|
|
|
|
+ log.info("start init Config");
|
|
|
|
+ Config config = new Config();
|
|
|
|
+ config.setCppModel(modelFile, paramFile);
|
|
|
|
+ config.enableMemoryOptim(true);
|
|
|
|
+ config.enableProfile();
|
|
|
|
+ config.enableMKLDNN();
|
|
|
|
+ config.getCpuMathLibraryNumThreads();
|
|
|
|
+ config.getFractionOfGpuMemoryForPool();
|
|
|
|
+ config.switchIrDebug(false);
|
|
|
|
+
|
|
|
|
+ log.info("start init Predictor");
|
|
|
|
+ Predictor predictor = Predictor.createPaddlePredictor(config);
|
|
|
|
+ Predictor temp = predictor;
|
|
|
|
+ this.sourcePredictor = predictor;
|
|
|
|
+ temp.destroyNativePredictor();
|
|
|
|
+ return true;
|
|
|
|
+ } finally {
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ return false;
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|