ABAO77 commited on
Commit
e7c0eb0
·
verified ·
1 Parent(s): 072178c

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +17 -16
app.py CHANGED
@@ -114,32 +114,32 @@ if [ "$AVAILABLE_MEM" -lt 20 ]; then
114
  exit 1
115
  fi
116
 
117
- # Calculate heap size (20% of available, min 4MB, max 8MB)
118
- HEAP_SIZE=$((AVAILABLE_MEM * 20 / 100))
119
- if [ "$HEAP_SIZE" -lt 4 ]; then
120
- HEAP_SIZE=4
121
- elif [ "$HEAP_SIZE" -gt 8 ]; then
122
  HEAP_SIZE=8
 
 
123
  fi
124
 
125
- # Calculate code cache (much smaller)
126
- CODE_CACHE_SIZE=$((HEAP_SIZE / 2))
127
- if [ "$CODE_CACHE_SIZE" -lt 2 ]; then
128
- CODE_CACHE_SIZE=2
129
  fi
130
 
131
  echo "Using ${HEAP_SIZE}MB heap, ${CODE_CACHE_SIZE}MB code cache (${AVAILABLE_MEM}MB available)" >&2
132
 
133
- # Execute Java with all memory limits
134
  exec java \\
135
- -Xms1m \\
136
  -Xmx${HEAP_SIZE}m \\
137
  -XX:ReservedCodeCacheSize=${CODE_CACHE_SIZE}m \\
138
  -XX:InitialCodeCacheSize=1m \\
139
  -XX:+UseSerialGC \\
140
- -XX:MaxMetaspaceSize=8m \\
141
- -XX:CompressedClassSpaceSize=4m \\
142
- -Xss128k \\
143
  -XX:-TieredCompilation \\
144
  -Djava.awt.headless=true \\
145
  "$@"
@@ -605,8 +605,9 @@ exec java \\
605
  # Try wrapper first, then fallback to minimal direct execution
606
  approaches = [
607
  ("wrapper", None),
608
- ("minimal", ["-Xms1m", "-Xmx8m", "-Djava.awt.headless=true"]),
609
- ("ultra_minimal", ["-Xms1m", "-Xmx4m", "-Djava.awt.headless=true"]),
 
610
  ("no_limits", ["-Djava.awt.headless=true"])
611
  ]
612
 
 
114
  exit 1
115
  fi
116
 
117
+ # Calculate heap size (15% of available, min 8MB, max 16MB)
118
+ HEAP_SIZE=$((AVAILABLE_MEM * 15 / 100))
119
+ if [ "$HEAP_SIZE" -lt 8 ]; then
 
 
120
  HEAP_SIZE=8
121
+ elif [ "$HEAP_SIZE" -gt 16 ]; then
122
+ HEAP_SIZE=16
123
  fi
124
 
125
+ # Calculate code cache (smaller)
126
+ CODE_CACHE_SIZE=$((HEAP_SIZE / 4))
127
+ if [ "$CODE_CACHE_SIZE" -lt 4 ]; then
128
+ CODE_CACHE_SIZE=4
129
  fi
130
 
131
  echo "Using ${HEAP_SIZE}MB heap, ${CODE_CACHE_SIZE}MB code cache (${AVAILABLE_MEM}MB available)" >&2
132
 
133
+ # Execute Java with proper stack size and memory limits
134
  exec java \\
135
+ -Xms2m \\
136
  -Xmx${HEAP_SIZE}m \\
137
  -XX:ReservedCodeCacheSize=${CODE_CACHE_SIZE}m \\
138
  -XX:InitialCodeCacheSize=1m \\
139
  -XX:+UseSerialGC \\
140
+ -XX:MaxMetaspaceSize=16m \\
141
+ -XX:CompressedClassSpaceSize=8m \\
142
+ -Xss256k \\
143
  -XX:-TieredCompilation \\
144
  -Djava.awt.headless=true \\
145
  "$@"
 
605
  # Try wrapper first, then fallback to minimal direct execution
606
  approaches = [
607
  ("wrapper", None),
608
+ ("minimal", ["-Xms2m", "-Xmx16m", "-Xss256k", "-Djava.awt.headless=true"]),
609
+ ("basic", ["-Xms2m", "-Xmx12m", "-Djava.awt.headless=true"]),
610
+ ("simple", ["-Xmx8m", "-Djava.awt.headless=true"]),
611
  ("no_limits", ["-Djava.awt.headless=true"])
612
  ]
613