From c67e2b85e3831d99fe5fa2a445c813c2ec7b8caf Mon Sep 17 00:00:00 2001 From: undefined Date: Sun, 15 Aug 2021 16:29:16 +0800 Subject: [PATCH] judge: add strictMemory setting --- packages/hydrojudge/package.json | 2 +- packages/hydrojudge/setting.yaml | 5 +++++ packages/hydrojudge/src/config.ts | 1 + packages/hydrojudge/src/sandbox.ts | 1 + 4 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/hydrojudge/package.json b/packages/hydrojudge/package.json index 347ae1255..1bb94e59c 100644 --- a/packages/hydrojudge/package.json +++ b/packages/hydrojudge/package.json @@ -1,7 +1,7 @@ { "name": "@hydrooj/hydrojudge", "bin": "bin/hydrojudge.js", - "version": "2.10.7", + "version": "2.10.8", "main": "package.json", "author": "undefined ", "repository": "https://github.com/hydro-dev/Hydro.git", diff --git a/packages/hydrojudge/setting.yaml b/packages/hydrojudge/setting.yaml index 450410b7b..636919017 100644 --- a/packages/hydrojudge/setting.yaml +++ b/packages/hydrojudge/setting.yaml @@ -57,6 +57,11 @@ disable: name: disable desc: Disable builtin judge default: false +strict_memory: + type: boolean + name: strict_memory + desc: Strict Memory Mode + default: false env: type: textarea name: env diff --git a/packages/hydrojudge/src/config.ts b/packages/hydrojudge/src/config.ts index 788f775e7..8bab652fd 100644 --- a/packages/hydrojudge/src/config.ts +++ b/packages/hydrojudge/src/config.ts @@ -14,6 +14,7 @@ let config = { tmpfs_size: '256m', stdio_size: '32m', memoryMax: '512m', + strict_memory: false, retry_delay_sec: 15, sandbox_host: 'http://localhost:5050', testcases_max: 100, diff --git a/packages/hydrojudge/src/sandbox.ts b/packages/hydrojudge/src/sandbox.ts index c0fb3834b..b99c86f84 100644 --- a/packages/hydrojudge/src/sandbox.ts +++ b/packages/hydrojudge/src/sandbox.ts @@ -46,6 +46,7 @@ function proc({ cpuLimit: time * 1000 * 1000 * rate, realCpuLimit: time * 3000 * 1000 * rate, memoryLimit: memory * 1024 * 1024, + strictMemoryLimit: getConfig('strict_memory'), // stackLimit: memory * 1024 * 1024, procLimit: process_limit, copyIn,