Commit 02169c61 authored by Kevin Di Lallo's avatar Kevin Di Lallo
Browse files

added gpu support in virt engine & default templates

parent 732112a9
Loading
Loading
Loading
Loading
+4 −6
Original line number Diff line number Diff line
@@ -47,12 +47,10 @@ spec:
              value: {{$val | quote}}
          {{- end}}
        {{- end}}
        {{- if .resources}}
          resources:
{{toYaml .resources | indent 12}}
      {{- end}}
      {{- end}}
      {{- end}}

      nodeSelector:
{{toYaml .Values.deployment.nodeSelector | indent 8}}
+11 −1
Original line number Diff line number Diff line
@@ -42,11 +42,21 @@ deployment:
      {{.}}
    {{- end}}

  resources: {}
  resources:
    requests: {}
    limits:
    {{- if .Deployment.GpuEnabled}}
    {{- if eq .Deployment.GpuType "nvidia" }}
      nvidia.com/gpu: {{.Deployment.GpuCount}}
    {{- end}}
    {{- end}}

  nodeSelector: {}
  tolerations: []
  affinity: {}



service:
  enabled: {{.Service.Enabled}}
  name: {{.Service.Name}}
+11 −2
Original line number Diff line number Diff line
@@ -43,8 +43,9 @@ type DeploymentTemplate struct {
	ContainerCommandEnabled  string
	ContainerCommand         []string
	ContainerCommandArg      []string
	ContainerPort            string
	ContainerProtocol        string
	GpuEnabled               string
	GpuType                  string
	GpuCount                 string
}

type ServiceTemplate struct {
@@ -241,6 +242,13 @@ func populateScenarioTemplate(scenario model.Scenario) ([]helm.Chart, error) {
								}
							}

							// Enable GPU template if present
							if proc.GpuConfig != nil {
								deploymentTemplate.GpuEnabled = "true"
								deploymentTemplate.GpuType = proc.GpuConfig.Type_
								deploymentTemplate.GpuCount = strconv.Itoa(int(proc.GpuConfig.Count))
							}

							// Enable External template if set
							if proc.IsExternal {
								externalTemplate.Enabled = "true"
@@ -330,6 +338,7 @@ func setDeploymentDefaults(deploymentTemplate *DeploymentTemplate) {
	deploymentTemplate.ApiVersion = "v1"
	deploymentTemplate.ContainerEnvEnabled = "false"
	deploymentTemplate.ContainerCommandEnabled = "false"
	deploymentTemplate.GpuEnabled = "false"
}

func setServiceDefaults(serviceTemplate *ServiceTemplate) {