Changeset 7655d92f for general/genlib
- Timestamp:
- 09/26/2023 08:55:19 AM (8 months ago)
- Branches:
- 12.1, ken/TL2024, ken/tuningfonts, lazarus, plabs/newcss, python3.11, rahul/power-profiles-daemon, renodr/vulkan-addition, trunk, xry111/llvm18
- Children:
- 67c8341
- Parents:
- 14136bd
- git-author:
- Xi Ruoyao <xry111@…> (09/26/2023 08:54:56 AM)
- git-committer:
- Xi Ruoyao <xry111@…> (09/26/2023 08:55:19 AM)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
general/genlib/spidermonkey.xml
r14136bd r7655d92f 188 188 Because we are building with system ICU, 8 tests 189 189 (out of a total of more than 50,000) are known to fail. 190 </para> 191 <para> 192 The JIT test suite can use a large amount of system memory. 193 Running the JIT test suite without enough memory may invoke 194 the kernel OOM killer and causes stability issues. To run the JIT test 195 suite, ensure the amount of available system memory is at least 16 GB, 196 <!-- When I run it within a cgroup with 8 GB memory assigned, the test 197 is OOM killed. Increasing the assigned memory to 16 GB makes 198 all tests pass. --> 199 then issue: <command>make -C js/src check-jit-test 200 JITTEST_EXTRA_ARGS="--timeout 300"</command>. 190 The test suite is executed with all CPU cores available: even in a 191 cgroup with less cores assigned, it still attempts to spawn as many 192 testing jobs as the number of <emphasis>all</emphasis> cores in the 193 system; fortunately the kernel still won't run these jobs on cores 194 not assigned to the cgroup so the CPU usage is still controlled. 195 </para> 196 <para> 197 To run the JIT test suite, issue: <command>make -C js/src 198 check-jit-test JITTEST_EXTRA_ARGS="--timeout 300"</command>. 199 Like the SpiderMonkey test suite, the number of test jobs is same as 200 the number of all CPU cores in the system even if a cgroup is used. To 201 make things worse, there are six tests each of them will use 3 GB 202 of system memory, so the peak memory usage may be up to 18 GB if the 203 number of cores is six or more. Running the JIT test suite without 204 enough memory may invoke the kernel OOM killer and cause stability 205 issues. If you don't have enough system memory available, append 206 <option>-jN</option> after <option>--timeout 300</option> with N 207 replaced by the number of parallel test jobs you want to start. For 208 example, if you have 16 GB system memory available and 8 CPU cores, 209 issue <command>make -C js/src check-jit-test 210 JITTEST_EXTRA_ARGS="--timeout=300 -j5"</command> to run the test with 211 5 parallel jobs so the memory usage won't exceed 15 GB. 212 <!-- TL;DR: DO NOT REMOVE MEMORY USAGE NOTE W/O MY CONFIRMATION! 213 214 "six tests": bug1782468-ptrdiff-veclen.js, it's ran with 6 215 different configurations. 216 217 "may": this is stochasitic (like all parallelization issue), 218 don't remove the note about memory usage simply because "I cannot 219 reproduce it". 220 221 "peak": the time period using so much memory is very short, so 222 don't just watch the output of "top" or "free" with eyesight. 223 Run the test in a cgroup and read the "memory.peak" psuedo file 224 for a proper measurement. 225 226 Q: Why not just document some test failures? 227 A: This *really* can cause stability issue because the kernel 228 may OOM kill another process if the test is not ran in a 229 cgroup with memory.max set. Even if running it in a cgroup, 230 the kernel may still OOM kill the "main" process controlling 231 the test process instead of a single test job, causing a 232 incomplete test. 233 234 - xry111 235 --> 201 236 </para> 202 237
Note:
See TracChangeset
for help on using the changeset viewer.