diff options
author | Bjørn Christian Seime <bjorncs@yahooinc.com> | 2023-09-21 09:31:09 +0200 |
---|---|---|
committer | Bjørn Christian Seime <bjorncs@yahooinc.com> | 2023-09-22 15:25:57 +0200 |
commit | 0d8c6fc3b5b9735918e20e0518ad680dc6cc82b4 (patch) | |
tree | 0a1b5ab25daa66cd3812140fe4fa76d195b599e7 /config-model-api/src/main/java/com/yahoo/config/model/api/OnnxModelCost.java | |
parent | b0e3c533424a95b2086bd7db1ca3e0a7a591e64f (diff) |
Add calculator for adjusting JVM heap size based on model size
Diffstat (limited to 'config-model-api/src/main/java/com/yahoo/config/model/api/OnnxModelCost.java')
-rw-r--r-- | config-model-api/src/main/java/com/yahoo/config/model/api/OnnxModelCost.java | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/config-model-api/src/main/java/com/yahoo/config/model/api/OnnxModelCost.java b/config-model-api/src/main/java/com/yahoo/config/model/api/OnnxModelCost.java new file mode 100644 index 00000000000..8c7f0db3bec --- /dev/null +++ b/config-model-api/src/main/java/com/yahoo/config/model/api/OnnxModelCost.java @@ -0,0 +1,30 @@ +// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. + +package com.yahoo.config.model.api; + +import com.yahoo.config.ModelReference; +import com.yahoo.config.application.api.ApplicationFile; +import com.yahoo.config.application.api.DeployLogger; +import com.yahoo.config.provision.ApplicationId; + +/** + * @author bjorncs + */ +public interface OnnxModelCost { + + Calculator newCalculator(DeployLogger logger); + + interface Calculator { + long aggregatedModelCostInBytes(); + void registerModel(ApplicationFile path); + void registerModel(ModelReference ref); + } + + static OnnxModelCost testInstance() { + return (__) -> new Calculator() { + @Override public long aggregatedModelCostInBytes() { return 0; } + @Override public void registerModel(ApplicationFile path) {} + @Override public void registerModel(ModelReference ref) {} + }; + } +} |