@@ -35,6 +35,14 @@ import (
35
35
const (
36
36
ENV_DEFAULT_EXECUTOR_SERVER_PORT = "EXECUTOR_SERVER_PORT"
37
37
ENV_DEFAULT_EXECUTOR_SERVER_GRPC_PORT = "EXECUTOR_SERVER_GRPC_PORT"
38
+ ENV_DEFAULT_EXECUTOR_CPU_REQUEST = "EXECUTOR_DEFAULT_CPU_REQUEST"
39
+ ENV_DEFAULT_EXECUTOR_MEMORY_REQUEST = "EXECUTOR_DEFAULT_MEMORY_REQUEST"
40
+ ENV_DEFAULT_EXECUTOR_CPU_LIMIT = "EXECUTOR_DEFAULT_CPU_LIMIT"
41
+ ENV_DEFAULT_EXECUTOR_MEMORY_LIMIT = "EXECUTOR_DEFAULT_MEMORY_LIMIT"
42
+ ENV_DEFAULT_ENGINE_CPU_REQUEST = "ENGINE_DEFAULT_CPU_REQUEST"
43
+ ENV_DEFAULT_ENGINE_MEMORY_REQUEST = "ENGINE_DEFAULT_MEMORY_REQUEST"
44
+ ENV_DEFAULT_ENGINE_CPU_LIMIT = "ENGINE_DEFAULT_CPU_LIMIT"
45
+ ENV_DEFAULT_ENGINE_MEMORY_LIMIT = "ENGINE_DEFAULT_MEMORY_LIMIT"
38
46
ENV_EXECUTOR_METRICS_PORT_NAME = "EXECUTOR_SERVER_METRICS_PORT_NAME"
39
47
ENV_EXECUTOR_PROMETHEUS_PATH = "EXECUTOR_PROMETHEUS_PATH"
40
48
ENV_ENGINE_PROMETHEUS_PATH = "ENGINE_PROMETHEUS_PATH"
62
70
envUseExecutor = os .Getenv (ENV_USE_EXECUTOR )
63
71
64
72
executorMetricsPortName = utils .GetEnv (ENV_EXECUTOR_METRICS_PORT_NAME , constants .DefaultMetricsPortName )
73
+
74
+ executorDefaultCpuRequest = utils .GetEnv (ENV_DEFAULT_EXECUTOR_CPU_REQUEST , constants .DefaultExecutorCpuRequest )
75
+ executorDefaultCpuLimit = utils .GetEnv (ENV_DEFAULT_EXECUTOR_CPU_LIMIT , constants .DefaultExecutorCpuLimit )
76
+ executorDefaultMemoryRequest = utils .GetEnv (ENV_DEFAULT_EXECUTOR_MEMORY_REQUEST , constants .DefaultExecutorMemoryRequest )
77
+ executorDefaultMemoryLimit = utils .GetEnv (ENV_DEFAULT_EXECUTOR_MEMORY_LIMIT , constants .DefaultExecutorMemoryLimit )
78
+
79
+ engineDefaultCpuRequest = utils .GetEnv (ENV_DEFAULT_ENGINE_CPU_REQUEST , constants .DefaultEngineCpuRequest )
80
+ engineDefaultCpuLimit = utils .GetEnv (ENV_DEFAULT_ENGINE_CPU_LIMIT , constants .DefaultEngineCpuLimit )
81
+ engineDefaultMemoryRequest = utils .GetEnv (ENV_DEFAULT_ENGINE_MEMORY_REQUEST , constants .DefaultEngineMemoryRequest )
82
+ engineDefaultMemoryLimit = utils .GetEnv (ENV_DEFAULT_ENGINE_MEMORY_LIMIT , constants .DefaultEngineMemoryLimit )
65
83
)
66
84
67
85
func addEngineToDeployment (mlDep * machinelearningv1.SeldonDeployment , p * machinelearningv1.PredictorSpec , engine_http_port int , engine_grpc_port int , pSvcName string , deploy * appsv1.Deployment ) error {
@@ -367,12 +385,31 @@ func createEngineContainer(mlDep *machinelearningv1.SeldonDeployment, p *machine
367
385
}
368
386
369
387
//Engine resources
370
- engineResources : = p .SvcOrchSpec .Resources
388
+ var engineResources * corev1. ResourceRequirements = p .SvcOrchSpec .Resources
371
389
if engineResources == nil {
372
- cpuQuantity , _ := resource .ParseQuantity ("0.1" )
390
+ var cpu_request resource.Quantity
391
+ var cpu_limit resource.Quantity
392
+ var memory_request resource.Quantity
393
+ var memory_limit resource.Quantity
394
+ if isExecutorEnabled (mlDep ) {
395
+ cpu_request = resource .MustParse (executorDefaultCpuRequest )
396
+ cpu_limit = resource .MustParse (executorDefaultCpuLimit )
397
+ memory_request = resource .MustParse (executorDefaultMemoryRequest )
398
+ memory_limit = resource .MustParse (executorDefaultMemoryLimit )
399
+ } else {
400
+ cpu_request = resource .MustParse (engineDefaultCpuRequest )
401
+ cpu_limit = resource .MustParse (engineDefaultCpuLimit )
402
+ memory_request = resource .MustParse (engineDefaultMemoryRequest )
403
+ memory_limit = resource .MustParse (engineDefaultMemoryLimit )
404
+ }
373
405
engineResources = & corev1.ResourceRequirements {
374
406
Requests : map [corev1.ResourceName ]resource.Quantity {
375
- corev1 .ResourceCPU : cpuQuantity ,
407
+ corev1 .ResourceCPU : cpu_request ,
408
+ corev1 .ResourceMemory : memory_request ,
409
+ },
410
+ Limits : map [corev1.ResourceName ]resource.Quantity {
411
+ corev1 .ResourceCPU : cpu_limit ,
412
+ corev1 .ResourceMemory : memory_limit ,
376
413
},
377
414
}
378
415
}
0 commit comments