-
Notifications
You must be signed in to change notification settings - Fork 7
/
sd21-trn1-serve-deploy.yaml
91 lines (91 loc) · 2.49 KB
/
sd21-trn1-serve-deploy.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: sd21-trn1-serve
name: sd21-trn1-serve
spec:
selector:
matchLabels:
app: sd21-trn1-serve
template:
metadata:
labels:
app: sd21-trn1-serve
spec:
nodeSelector:
karpenter.sh/nodepool: amd-neuron-trn1
serviceAccountName: appsimulator
schedulerName: my-scheduler
volumes:
- name: dshm
emptyDir:
medium: Memory
#initContainers:
#- name: pull-model-tar
# image: 891377065549.dkr.ecr.us-west-2.amazonaws.com/stablediffusion:amd64-neuron-assets
# imagePullPolicy: Always
# volumeMounts:
# - name: workdir
# mountPath: /model
# command:
# - /bin/bash
# - "-exc"
# - |
# set -x
# #aws s3 cp s3://sdinfer1/stable-diffusion-2-1-base.tar.gz /model/model.tar.gz
# aws s3 cp s3://sdinfer1/stable-diffusion-2-1_xla_bsize_1.tar.gz /model/model.tar.gz
# cd /model
# tar -xzf /model/model.tar.gz
# ls -l
containers:
- name: app
image: 891377065549.dkr.ecr.us-west-2.amazonaws.com/stablediffusion:amd64-neuron
imagePullPolicy: Always
volumeMounts:
- mountPath: /dev/shm
name: dshm
# - mountPath: /app
# name: workdir
command: ["/start.sh"]
args: ["run"]
resources:
requests:
aws.amazon.com/neuron: 1
limits:
aws.amazon.com/neuron: 1
#lifecycle:
# postStart:
# exec:
# command: ["/create_node_port_svc.sh"]
# preStop:
# exec:
# command: ["/bin/sh","-c","kubectl delete svc `kubectl get svc|grep $POD_NAME | awk '{print $1}'`"]
env:
- name: DEVICE
value: "xla"
- name: MODEL_ID
value: "stabilityai/stable-diffusion-2-1-base"
- name: COMPILED_MODEL_ID
value: "yahavb/optimum-neuron-sd21"
- name: NUM_OF_RUNS_INF
value: "3"
- name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
ports:
- containerPort: 8000
protocol: TCP
readinessProbe:
httpGet:
path: /readiness
port: 8000
initialDelaySeconds: 60
periodSeconds: 10
volumes:
#- name: workdir
# emptyDir: {}
- name: dshm
emptyDir:
medium: Memory