8000 downsize memory · open-lambda/open-lambda@11e642c · GitHub
[go: up one dir, main page]

Skip to content

Commit 11e642c

Browse files
committed
downsize memory
1 parent 68a15b1 commit 11e642c

File tree

4 files changed

+16
-13
lines changed

4 files changed

+16
-13
lines changed

src/boss/cloudvm/azure_worker.go

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,10 @@ func (worker *Worker) start(firstTime bool) error {
130130
panic(err)
131131
}
132132

133+
pid_namespace := "echo 500000 | sudo tee /proc/sys/user/max_pid_namespaces"
134+
ipc_namespace := "echo 500000 | sudo tee /proc/sys/user/max_ipc_namespaces"
135+
uts_namespace := "echo 500000 | sudo tee /proc/sys/user/max_uts_namespaces"
136+
133137
python_path := test_path
134138

135139
workerNum := len(worker.pool.workers[RUNNING]) + len(worker.pool.workers[STARTING])
@@ -138,12 +142,15 @@ func (worker *Worker) start(firstTime bool) error {
138142
run_one_time := "sudo python3 run_worker.py"
139143

140144
var run_worker_up string
141-
run_worker_up = fmt.Sprintf("sudo ./ol worker up -i ol-min -d -o import_cache_tree=%s,worker_url=0.0.0.0,features.warmup=false,limits.mem_mb=600", tree_path)
145+
run_worker_up = fmt.Sprintf("sudo ./ol worker up -i ol-min -d -o import_cache_tree=%s,worker_url=0.0.0.0,features.warmup=false,limits.mem_mb=600,mem_pool_mb=10000,trace.evictor=true", tree_path)
142146

143147
var cmd string
144148
if firstTime {
145-
cmd = fmt.Sprintf("%s; cd %s; %s; cd %s; %s; %s; cd %s; %s",
149+
cmd = fmt.Sprintf("%s; %s; %s; %s; cd %s; %s; cd %s; %s; %s; cd %s; %s",
146150
"sudo mount -o rw,remount /sys/fs/cgroup",
151+
pid_namespace,
152+
ipc_namespace,
153+
uts_namespace,
147154
cwd,
148155
"sudo ./ol worker init -i ol-min",
149156
python_path,
@@ -153,13 +160,9 @@ func (worker *Worker) start(firstTime bool) error {
153160
run_worker_up,
154161
)
155162
} else {
156-
cmd = fmt.Sprintf("%s; cd %s; %s; cd %s; %s; cd %s; %s",
163+
cmd = fmt.Sprintf("%s; cd %s; %s",
157 8000 164
"sudo mount -o rw,remount /sys/fs/cgroup",
158165
cwd,
159-
"sudo ./ol worker init -i ol-min",
160-
python_path,
161-
run_deploy_funcs,
162-
cwd,
163166
run_worker_up,
164167
)
165168
}

src/boss/cloudvm/worker.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -600,7 +600,7 @@ func (pool *WorkerPool) RunLambda(w http.ResponseWriter, r *http.Request) {
600600
smallWorker = curWorker
601601
}
602602
}
603-
if smallWorkerTask < (worker.numTask - 32) {
603+
if smallWorkerTask < (worker.numTask - 40) {
604604
worker = smallWorker
605605
}
606606

@@ -632,12 +632,12 @@ func (pool *WorkerPool) RunLambda(w http.ResponseWriter, r *http.Request) {
632632

633633
// pool.Lock()
634634
if loadbalancer.Lb.LbType == loadbalancer.Random {
635-
worker.funcLog.Printf("{\"workernum\": %d, \"task\": \"%s\", \"start\": \"%s\", \"end\": \"%s\", \"time\": %d, \"assignTime\": %d, \"assign\": \"Random\", \"assigned\": \"Random\"}\n", len(pool.workers[RUNNING]), thisTask, startFormat, endFormat, latency, assignTime)
635+
worker.funcLog.Printf("{\"workernum\": %d, \"policy\": %d, \"task\": \"%s\", \"start\": \"%s\", \"end\": \"%s\", \"time\": %d, \"assignTime\": %d, \"assign\": \"Random\", \"assigned\": \"Random\"}\n", len(pool.workers[RUNNING]), loadbalancer.Lb.LbType, thisTask, startFormat, endFormat, latency, assignTime)
636636
} else {
637637
if assignSuccess {
638-
worker.funcLog.Printf("{\"workernum\": %d, \"task\": \"%s\", \"start\": \"%s\", \"end\": \"%s\", \"time\": %d, \"assignTime\": %d, \"assign\": \"Success\", \"assigned\": \"%s\"}\n", len(pool.workers[RUNNING]), thisTask, startFormat, endFormat, latency, assignTime, assigned)
638+
worker.funcLog.Printf("{\"workernum\": %d, \"policy\": %d, \"task\": \"%s\", \"start\": \"%s\", \"end\": \"%s\", \"time\": %d, \"assignTime\": %d, \"assign\": \"Success\", \"assigned\": \"%s\", \"assignedIP\": \"%s\"}\n", len(pool.workers[RUNNING]), loadbalancer.Lb.LbType, thisTask, startFormat, endFormat, latency, assignTime, assigned, worker.workerIp)
639639
} else {
640-
worker.funcLog.Printf("{\"workernum\": %d, \"task\": \"%s\", \"start\": \"%s\", \"end\": \"%s\", \"time\": %d, \"assignTime\": %d, \"assign\": \"Unsuccess\", \"assigned\": \"%s\"}\n", len(pool.workers[RUNNING]), thisTask, startFormat, endFormat, latency, assignTime, assigned)
640+
worker.funcLog.Printf("{\"workernum\": %d, \"policy\": %d, \"task\": \"%s\", \"start\": \"%s\", \"end\": \"%s\", \"time\": %d, \"assignTime\": %d, \"assign\": \"Unsuccess\", \"assigned\": \"%s\", \"assignedIP\": \"%s\"}\n", len(pool.workers[RUNNING]), loadbalancer.Lb.LbType, thisTask, startFormat, endFormat, latency, assignTime, assigned, worker.workerIp)
641641
}
642642
}
643643
// pool.Unlock()

src/common/config.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ func LoadDefaults(olPath string) error {
148148
}
149149
// totalMb := uint64(in.Totalram) * uint64(in.Unit) / 1024 / 1024
150150
// memPoolMb := Max(int(totalMb-500), 500)
151-
memPoolMb := 23000
151+
memPoolMb := 30000
152152

153153
Conf = &Config{
154154
Worker_dir: workerDir,

src/worker/sandbox/evictors.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -239,7 +239,7 @@ func (evictor *SOCKEvictor) doEvictions() {
239239
if freeSandboxes <= 0 && evictor.evicting.Len() == 0 {
240240
evictor.printf("WARNING! Critically low on memory, so evicting an active Sandbox")
241241
if evictor.prioQueues[1].Len() > 0 {
242-
evictor.evictFront(evictor.prioQueues[1], true)
242+
// evictor.evictFront(evictor.prioQueues[1], true)
243243
}
244244
}
245245

0 commit comments

Comments
 (0)
0