node.js运行js_Node.js运行时v8选项列表

node.js运行js

Node.js can be invoked with an incredibly various set of options.

可以使用各种不同的选项来调用Node.js。

Most of those options are used to configure the v8 engine behavior.

这些选项中的大多数用于配置v8引擎行为。

Some of the options here are disabled by default, as you can see in the Default column. You can enable them by running node and passing the flag, for example node --experimental-extras.

您可以在“ Default列中看到默认情况下禁用此处的某些选项。 您可以通过运行node并传递标志来启用它们,例如node --experimental-extras

If an option is enabled by default, you can disable it by prepending --no- to the flag name, for example node --no-harmony-shipping.

如果默认情况下启用了一个选项,则可以通过在标志名前--no-来禁用它,例如node --no-harmony-shipping

Some can be used to optimize performance, like --optimize-for-size, --max_old_space_size and --gc_interval, like Heroku suggests.

有些可以用来优化性能,例如--optimize-for-size ,-- --max_old_space_size--gc_interval ,例如Heroku建议的

Some others are used to enable or disable specific features. I use them often to try out new proposed JavaScript features that have been implemented in beta. Like --harmony-public-fields.

其他一些用于启用或禁用特定功能。 我经常使用它们来尝试在Beta中实现的新提议JavaScript功能。 像--harmony-public-fields

Note: options names allow words to be separated by both dashes (-) or underscores (_), or a mix of those. On tutorials you’ll find a mix of both, to it can be confusing. There is no difference.

注意:选项名称允许单词用破折号( - )或下划线( _ )或混合使用。 在教程中,您会发现两者混合使用,可能会造成混淆。 没有区别。

I got the following list by running the command node --v8-options, and it’s relative to Node.js 11.9.0, the latest Node.js version at the time of writing.

我通过运行命令node --v8-options得到以下列表,它与Node.js 11.9.0 (在撰写本文时是最新的Node.js版本)相对。

OptionDescriptionTypeDefault
--experimental-extrasenable code compiled in via v8_experimental_extra_library_filesboolfalse
--use-strictenforce strict modeboolfalse
--es-stagingenable test-worthy harmony featuresfor internal use onlybool
--harmonyenable all completed harmony featuresboolfalse
--harmony-shippingenable all shipped harmony featuresbooltrue
--harmony-do-expressionsenable “harmony do-expressions”in progressbool
--harmony-class-fieldsenable “harmony fields in class literals”in progressbool
--harmony-static-fieldsenable “harmony static fields in class literals”in progressbool
--harmony-await-optimizationenable “harmony await taking 1 tick”in progressbool
--harmony-localeenable “Intl.Locale”in progressbool
--harmony-intl-list-formatenable “Intl.ListFormat”in progressbool
--harmony-intl-relative-time-formatenable “Intl.RelativeTimeFormat”in progressbool
--harmony-public-fieldsenable “harmony public fields in class literals”boolfalse
--harmony-private-fieldsenable “harmony private fields in class literals”boolfalse
--harmony-numeric-separatorenable “harmony numeric separator between digits”boolfalse
--harmony-string-matchallenable “harmony String.prototype.matchAll”boolfalse
--harmony-globalenable “harmony global”boolfalse
--harmony-string-trimmingenable “harmony String.prototype.trim{Start,End}”booltrue
--harmony-sharedarraybufferenable “harmony sharedarraybuffer”booltrue
--harmony-function-tostringenable “harmony Function.prototype.toString”booltrue
--harmony-import-metaenable “harmony import.meta property”booltrue
--harmony-bigintenable “harmony arbitrary precision integers”booltrue
--harmony-dynamic-importenable “harmony dynamic import”booltrue
--harmony-array-prototype-valuesenable “harmony Array.prototype.values”booltrue
--harmony-array-flatenable “harmony Array.prototype.{flat,flatMap}”booltrue
--harmony-symbol-descriptionenable “harmony Symbol.prototype.description”booltrue
--icu-timezone-dataget information about timezones from ICUbooltrue
--futureImplies all staged features that we want to ship in the not-too-far futureboolfalse
--allocation-site-pretenuringpretenure with allocation sitesbooltrue
--page-promotionpromote pages based on utilizationbooltrue
--page-promotion-thresholdmin percentage of live bytes on a page to enable fast evacuationint70
--trace-pretenuringtrace pretenuring decisions of HAllocate instructionsboolfalse
--trace-pretenuring-statisticstrace allocation site pretenuring statisticsboolfalse
--track-fieldstrack fields with only smi valuesbooltrue
--track-double-fieldstrack fields with double valuesbooltrue
--track-heap-object-fieldstrack fields with heap valuesbooltrue
--track-computed-fieldstrack computed boilerplate fieldsbooltrue
--track-field-typestrack field typesbooltrue
--trace-block-coveragetrace collected block coverage informationboolfalse
--feedback-normalizationfeed back normalization to constructorsboolfalse
--optimize-for-sizeEnables optimizations which favor memory size over execution speedboolfalse
--enable-one-shot-optimizationEnable size optimizations for the code that will only be executed oncebooltrue
--unbox-double-arraysautomatically unbox arrays of doublesbooltrue
--interrupt-budgetinterrupt budget which should be used for the profiler counterint147456
--ignition-elide-noneffectful-bytecodeselide bytecodes which won’t have any external effectbooltrue
--ignition-reouse ignition register equivalence optimizerbooltrue
--ignition-filter-expression-positionsfilter expression positions before the bytecode pipelinebooltrue
--ignition-share-named-property-feedbackshare feedback slots when loading the same named property from the same objectbooltrue
--print-bytecodeprint bytecode generated by ignition interpreterboolfalse
--print-bytecode-filterfilter for selecting which functions to print bytecodestring*
--trace-ignition-codegentrace the codegen of ignition interpreter bytecode handlersboolfalse
--trace-ignition-dispatchestraces the dispatches to bytecode handlers by the ignition interpreterboolfalse
--trace-ignition-dispatches-output-filethe file to which the bytecode handler dispatch table is writtenby default, the table is not written to a filestring
--fast-mathfasterbut maybe less accurate math functionsbool
--trace-track-allocation-sitestrace the tracking of allocation sitesboolfalse
--trace-migrationtrace object migrationboolfalse
--trace-generalizationtrace map generalizationboolfalse
--concurrent-recompilationoptimizing hot functions asynchronously on a separate threadbooltrue
--trace-concurrent-recompilationtrack concurrent recompilationboolfalse
--concurrent-recompilation-queue-lengththe length of the concurrent compilation queueint8
--concurrent-recompilation-delayartificial compilation delay in msint0
--block-concurrent-recompilationblock queued jobs until releasedboolfalse
--concurrent-compiler-frontendrun optimizing compiler’s frontend phases on a separate threadboolfalse
--strict-heap-brokerfail on incomplete serializationboolfalse
--trace-heap-brokertrace the heap brokerboolfalse
--stress-runsnumber of stress runsint0
--deopt-every-n-timesdeoptimize every n times a deopt point is passedint0
--print-deopt-stressprint number of possible deopt pointsboolfalse
--turbo-sp-frame-accessuse stack pointer-relative access to frame wherever possibleboolfalse
--turbo-preprocess-rangesrun pre-register allocation heuristicsbooltrue
--turbo-filteroptimization filter for TurboFan compilerstring*
--trace-turbotrace generated TurboFan IRboolfalse
--trace-turbo-pathdirectory to dump generated TurboFan IR tostringnullptr
--trace-turbo-filterfilter for tracing turbofan compilationstring*
--trace-turbo-graphtrace generated TurboFan graphsboolfalse
--trace-turbo-scheduledtrace TurboFan IR with scheduleboolfalse
--trace-turbo-cfg-filetrace turbo cfg graphfor C1 visualizer to a given file namestring
--trace-turbo-typestrace TurboFan’s typesbooltrue
--trace-turbo-schedulertrace TurboFan’s schedulerboolfalse
--trace-turbo-reductiontrace TurboFan’s various reducersboolfalse
--trace-turbo-trimmingtrace TurboFan’s graph trimmerboolfalse
--trace-turbo-jttrace TurboFan’s jump threadingboolfalse
--trace-turbo-ceqtrace TurboFan’s control equivalenceboolfalse
--trace-turbo-looptrace TurboFan’s loop optimizationsboolfalse
--trace-alloctrace register allocatorboolfalse
--trace-all-usestrace all use positionsboolfalse
--trace-representationtrace representation typesboolfalse
--turbo-verifyverify TurboFan graphs at each phaseboolfalse
--turbo-verify-machine-graphverify TurboFan machine graph before instruction selectionstringnullptr
--trace-verify-csatrace code stubs verificationboolfalse
--csa-trap-on-nodetrigger break point when a node with given id is created in given stub. The format is: StubName,NodeIdstringnullptr
--turbo-statsprint TurboFan statisticsboolfalse
--turbo-stats-nvpprint TurboFan statistics in machine-readable formatboolfalse
--turbo-stats-wasmprint TurboFan statistics of wasm compilationsboolfalse
--turbo-splittingsplit nodes during scheduling in TurboFanbooltrue
--function-context-specializationenable function context specialization in TurboFanboolfalse
--turbo-inliningenable inlining in TurboFanbooltrue
--max-inlined-bytecode-sizemaximum size of bytecode for a single inliningint500
--max-inlined-bytecode-size-cumulativemaximum cumulative size of bytecode considered for inliningint1000
--max-inlined-bytecode-size-absolutemaximum cumulative size of bytecode considered for inliningint5000
--reserve-inline-budget-scale-factormaximum cumulative size of bytecode considered for inliningfloat1.2
--max-inlined-bytecode-size-smallmaximum size of bytecode considered for small function inliningint30
--min-inlining-frequencyminimum frequency for inliningfloat0.15
--polymorphic-inliningpolymorphic inliningbooltrue
--stress-inlineset high thresholds for inlining to inline as much as possibleboolfalse
--trace-turbo-inliningtrace TurboFan inliningboolfalse
--inline-accessorsinline JavaScript accessorsbooltrue
--inline-into-tryinline into try blocksbooltrue
--turbo-inline-array-builtinsinline array builtins in TurboFan codebooltrue
--use-osruse on-stack replacementbooltrue
--trace-osrtrace on-stack replacementboolfalse
--analyze-environment-livenessanalyze liveness of environment slots and zap dead valuesbooltrue
--trace-environment-livenesstrace liveness of local variable slotsboolfalse
--turbo-load-eliminationenable load elimination in TurboFanbooltrue
--trace-turbo-load-eliminationtrace TurboFan load eliminationboolfalse
--turbo-profilingenable profiling in TurboFanboolfalse
--turbo-verify-allocationverify register allocation in TurboFanboolfalse
--turbo-move-optimizationoptimize gap moves in TurboFanbooltrue
--turbo-jtenable jump threading in TurboFanbooltrue
--turbo-loop-peelingTurbofan loop peelingbooltrue
--turbo-loop-variableTurbofan loop variable optimizationbooltrue
--turbo-cf-optimizationoptimize control flow in TurboFanbooltrue
--turbo-escapeenable escape analysisbooltrue
--turbo-allocation-foldingTurbofan allocation foldingbooltrue
--turbo-instruction-schedulingenable instruction scheduling in TurboFanboolfalse
--turbo-stress-instruction-schedulingrandomly schedule instructions to stress dependency trackingboolfalse
--turbo-store-eliminationenable store-store elimination in TurboFanbooltrue
--trace-store-eliminationtrace store eliminationboolfalse
--turbo-rewrite-far-jumpsrewrite far to near jumpsia32,x64bool
--experimental-inline-promise-constructorinline the Promise constructor in TurboFanbooltrue
--untrusted-code-mitigationsEnable mitigations for executing untrusted codeboolfalse
--branch-load-poisoningMask loads with branch conditions.boolfalse
--minimalsimplifies execution model to make porting easiere.g. always use Ignition, never optimizebool
--expose-wasmexpose wasm interface to JavaScriptbooltrue
--assume-asmjs-originforce wasm decoder to assume input is internal asm-wasm formatboolfalse
--wasm-disable-structured-cloningdisable wasm structured cloningboolfalse
--wasm-num-compilation-tasksnumber of parallel compilation tasks for wasmint10
--wasm-write-protect-code-memorywrite protect code memory on the wasm native heapboolfalse
--wasm-trace-serializationtrace serialization/deserializationboolfalse
--wasm-async-compilationenable actual asynchronous compilation for WebAssembly.compilebooltrue
--wasm-test-streaminguse streaming compilation instead of async compilation for testsboolfalse
--wasm-max-mem-pagesmaximum number of 64KiB memory pages of a wasm instanceuint32767
--wasm-max-table-sizemaximum table size of a wasm instanceuint10000000
--wasm-tier-upenable wasm baseline compilation and tier up to the optimizing compilerbooltrue
--trace-wasm-ast-startstart function for wasm AST traceinclusiveint
--trace-wasm-ast-endend function for wasm AST traceexclusiveint
--liftoffenable Liftoff, the baseline compiler for WebAssemblybooltrue
--wasm-trace-memoryprint all memory updates performed in wasm codeboolfalse
--wasm-tier-mask-for-testingbitmask of functions to compile with TurboFan instead of Liftoffint0
--validate-asmvalidate asm.js modules before compilingbooltrue
--suppress-asm-messagesdon’t emit asm.js related messagesfor golden file testingbool
--trace-asm-timelog asm.js timing info to the consoleboolfalse
--trace-asm-scannerlog tokens encountered by asm.js scannerboolfalse
--trace-asm-parserverbose logging of asm.js parse failuresboolfalse
--stress-validate-asmtry to validate everything as asm.jsboolfalse
--dump-wasm-module-pathdirectory to dump wasm modules tostringnullptr
--experimental-wasm-mvenable prototype multi-value support for wasmboolfalse
--experimental-wasm-ehenable prototype exception handling opcodes for wasmboolfalse
--experimental-wasm-seenable prototype sign extension opcodes for wasmbooltrue
--experimental-wasm-sat-f2i-conversionsenable prototype saturating float conversion opcodes for wasmboolfalse
--experimental-wasm-threadsenable prototype thread opcodes for wasmboolfalse
--experimental-wasm-simdenable prototype SIMD opcodes for wasmboolfalse
--experimental-wasm-anyrefenable prototype anyref opcodes for wasmboolfalse
--experimental-wasm-mut-globalenable prototype import/export mutable global support for wasmbooltrue
--wasm-optenable wasm optimizationboolfalse
--wasm-no-bounds-checksdisable bounds checksperformance testing onlybool
--wasm-no-stack-checksdisable stack checksperformance testing onlybool
--wasm-shared-engineshares one wasm engine between all isolates within a processbooltrue
--wasm-shared-codeshares code underlying a wasm module when it is transferredbooltrue
--wasm-trap-handleruse signal handlers to catch out of bounds memory access in wasmcurrently Linux x86_64 onlybool
--wasm-trap-handler-fallbackUse bounds checks if guarded memory is not availableboolfalse
--wasm-fuzzer-gen-testGenerate a test case when running a wasm fuzzerboolfalse
--print-wasm-codePrint WebAssembly codeboolfalse
--wasm-interpret-allExecute all wasm code in the wasm interpreterboolfalse
--asm-wasm-lazy-compilationenable lazy compilation for asm-wasm modulesbooltrue
--wasm-lazy-compilationenable lazy compilation for all wasm modulesboolfalse
--frame-countnumber of stack frames inspected by the profilerint1
--type-info-thresholdpercentage of ICs that must have type info to allow optimizationint25
--stress-sampling-allocation-profilerEnables sampling allocation profiler with X as a sample intervalint0
--min-semi-space-sizemin size of a semi-spacein MBytes), the new space consists of two semi-spacessize_t
--max-semi-space-sizemax size of a semi-spacein MBytes), the new space consists of two semi-spacessize_t
--semi-space-growth-factorfactor by which to grow the new spaceint2
--experimental-new-space-growth-heuristicGrow the new space based on the percentage of survivors instead of their absolute value.boolfalse
--max-old-space-sizemax size of the old spacein Mbytessize_t
--initial-old-space-sizeinitial old space sizein Mbytessize_t
--gc-globalalways perform global GCsboolfalse
--random-gc-intervalCollect garbage after random(0, X allocations. It overrides gc_interval.int0
--gc-intervalgarbage collect after allocations int-1
--retain-maps-for-n-gckeeps maps alive for old space garbage collections int2
--trace-gcprint one trace line following each garbage collectionboolfalse
--trace-gc-nvpprint one detailed trace line in name=value format after each garbage collectionboolfalse
--trace-gc-ignore-scavengerdo not print trace line after scavenger collectionboolfalse
--trace-idle-notificationprint one trace line following each idle notificationboolfalse
--trace-idle-notification-verboseprints the heap state used by the idle notificationboolfalse
--trace-gc-verboseprint more details following each garbage collectionboolfalse
--trace-allocation-stack-intervalprint stack trace after free-list allocations int-1
--trace-duplicate-threshold-kbprint duplicate objects in the heap if their size is more than given thresholdint0
--trace-fragmentationreport fragmentation for old spaceboolfalse
--trace-fragmentation-verbosereport fragmentation for old spacedetailedbool
--trace-evacuationreport evacuation statisticsboolfalse
--trace-mutator-utilizationprint mutator utilization, allocation speed, gc speedboolfalse
--incremental-markinguse incremental markingbooltrue
--incremental-marking-wrappersuse incremental marking for marking wrappersbooltrue
--trace-unmapperTrace the unmappingboolfalse
--parallel-scavengeparallel scavengebooltrue
--trace-parallel-scavengetrace parallel scavengeboolfalse
--write-protect-code-memorywrite protect code memorybooltrue
--concurrent-markinguse concurrent markingbooltrue
--parallel-markinguse parallel marking in atomic pausebooltrue
--ephemeron-fixpoint-iterationsnumber of fixpoint iterations it takes to switch to linear ephemeron algorithmint10
--trace-concurrent-markingtrace concurrent markingboolfalse
--black-allocationuse black allocationbooltrue
--concurrent-store-bufferuse concurrent store buffer processingbooltrue
--concurrent-sweepinguse concurrent sweepingbooltrue
--parallel-compactionuse parallel compactionbooltrue
--parallel-pointer-updateuse parallel pointer update during compactionbooltrue
--detect-ineffective-gcs-near-heap-limittrigger out-of-memory failure to avoid GC storm near heap limitbooltrue
--trace-incremental-markingtrace progress of the incremental markingboolfalse
--trace-stress-markingtrace stress marking progressboolfalse
--trace-stress-scavengetrace stress scavenge progressboolfalse
--track-gc-object-statstrack object counts and memory usageboolfalse
--trace-gc-object-statstrace object counts and memory usageboolfalse
--trace-zone-statstrace zone memory usageboolfalse
--track-retaining-pathenable support for tracking retaining pathboolfalse
--concurrent-array-buffer-freeingfree array buffer allocations on a background threadbooltrue
--gc-statsUsed by tracing internally to enable gc statisticsint0
--track-detached-contextstrack native contexts that are expected to be garbage collectedbooltrue
--trace-detached-contextstrace native contexts that are expected to be garbage collectedboolfalse
--move-object-startenable moving of object startsbooltrue
--memory-reduceruse memory reducerbooltrue
--heap-growing-percentspecifies heap growing factor as1 + heap_growing_percent/100int
--v8-os-page-sizeoverride OS page sizein KBytesint
--always-compactPerform compaction on every full GCboolfalse
--never-compactNever perform compaction on full GC - testing onlyboolfalse
--compact-code-spaceCompact code space on full collectionsbooltrue
--use-marking-progress-barUse a progress bar to scan large objects in increments when incremental marking is active.booltrue
--force-marking-deque-overflowsforce overflows of marking deque by reducing it’s size to 64 wordsboolfalse
--stress-compactionstress the GC compactor to flush out bugsimplies –force_marking_deque_overflowsbool
--stress-compaction-randomStress GC compaction by selecting random percent of pages as evacuation candidates. It overrides stress_compaction.boolfalse
--stress-incremental-markingforce incremental marking for small heaps and run it more oftenboolfalse
--fuzzer-gc-analysisprints number of allocations and enables analysis mode for gc fuzz testing, e.g. –stress-marking, –stress-scavengeboolfalse
--stress-markingforce marking at random points between 0 and Xinclusive percent of the regular marking start limitint
--stress-scavengeforce scavenge at random points between 0 and Xinclusive percent of the new space capacityint
--disable-abortjsdisables AbortJS runtime functionboolfalse
--manual-evacuation-candidates-selectionTest mode only flag. It allows an unit test to select evacuation candidates pagesrequires –stress_compaction).bool
--fast-promotion-new-spacefast promote new space on high survival ratesboolfalse
--clear-free-memoryinitialize free memory with 0boolfalse
--young-generation-large-objectsallocates large objects by default in the young generation large object spaceboolfalse
--debug-codegenerate extra codeassertions for debuggingbool
--code-commentsemit comments in code disassembly; for more readable source positions you should add –no-concurrent_recompilationboolfalse
--enable-sse3enable use of SSE3 instructions if availablebooltrue
--enable-ssse3enable use of SSSE3 instructions if availablebooltrue
--enable-sse4-1enable use of SSE4.1 instructions if availablebooltrue
--enable-sahfenable use of SAHF instruction if availableX64 onlybool
--enable-avxenable use of AVX instructions if availablebooltrue
--enable-fma3enable use of FMA3 instructions if availablebooltrue
--enable-bmi1enable use of BMI1 instructions if availablebooltrue
--enable-bmi2enable use of BMI2 instructions if availablebooltrue
--enable-lzcntenable use of LZCNT instruction if availablebooltrue
--enable-popcntenable use of POPCNT instruction if availablebooltrue
--arm-archgenerate instructions for the selected ARM architecture if available: armv6, armv7, armv7+sudiv or armv8stringarmv8
--force-long-branchesforce all emitted branches to be in long modeMIPS/PPC onlybool
--mcpuenable optimization for specific cpustringauto
--partial-constant-poolenable use of partial constant poolsX64 onlybool
--enable-armv7deprecateduse –arm_arch insteadmaybe_bool
--enable-vfp3deprecateduse –arm_arch insteadmaybe_bool
--enable-32dregsdeprecateduse –arm_arch insteadmaybe_bool
--enable-neondeprecateduse –arm_arch insteadmaybe_bool
--enable-sudivdeprecateduse –arm_arch insteadmaybe_bool
--enable-armv8deprecateduse –arm_arch insteadmaybe_bool
--enable-regexp-unaligned-accessesenable unaligned accesses for the regexp enginebooltrue
--script-streamingenable parsing on backgroundbooltrue
--disable-old-api-accessorsDisable old-style API accessors whose setters trigger through the prototype chainboolfalse
--expose-natives-asexpose natives in global objectstringnullptr
--expose-free-bufferexpose freeBuffer extensionboolfalse
--expose-gcexpose gc extensionboolfalse
--expose-gc-asexpose gc extension under the specified namestringnullptr
--expose-externalize-stringexpose externalize string extensionboolfalse
--expose-trigger-failureexpose trigger-failure extensionboolfalse
--stack-trace-limitnumber of stack frames to captureint10
--builtins-in-stack-tracesshow built-in functions in stack tracesboolfalse
--enable-experimental-builtinsenable new csa-based experimental builtinsboolfalse
--disallow-code-generation-from-stringsdisallow eval and friendsboolfalse
--expose-async-hooksexpose async_hooks objectboolfalse
--allow-unsafe-function-constructorallow invoking the function constructor without security checksboolfalse
--force-slow-pathalways take the slow path for builtinsboolfalse
--inline-newuse fast inline allocationbooltrue
--tracetrace function callsboolfalse
--lazyuse lazy compilationbooltrue
--trace-opttrace lazy optimizationboolfalse
--trace-opt-verboseextra verbose compilation tracingboolfalse
--trace-opt-statstrace lazy optimization statisticsboolfalse
--trace-deopttrace optimize function deoptimizationboolfalse
--trace-file-namesinclude file names in trace-opt/trace-deopt outputboolfalse
--trace-interruptstrace interrupts when they are handledboolfalse
--optuse adaptive optimizationsbooltrue
--always-optalways try to optimize functionsboolfalse
--always-osralways try to OSR functionsboolfalse
--prepare-always-optprepare for turning on always optboolfalse
--trace-serializerprint code serializer traceboolfalse
--compilation-cacheenable compilation cachebooltrue
--cache-prototype-transitionscache prototype transitionsbooltrue
--compiler-dispatcherenable compiler dispatcherboolfalse
--trace-compiler-dispatchertrace compiler dispatcher activityboolfalse
--trace-compiler-dispatcher-jobstrace progress of individual jobs managed by the compiler dispatcherboolfalse
--cpu-profiler-sampling-intervalCPU profiler sampling interval in microsecondsint1000
--trace-js-array-abusetrace out-of-bounds accesses to JS arraysboolfalse
--trace-external-array-abusetrace out-of-bounds-accesses to external arraysboolfalse
--trace-array-abusetrace out-of-bounds accesses to all arraysboolfalse
--trace-side-effect-free-debug-evaluateprint debug messages for side-effect-free debug-evaluate for testingboolfalse
--hard-abortabort by crashingbooltrue
--expose-inspector-scriptsexpose injected-script-source.js for debuggingboolfalse
--stack-sizedefault size of stack region v8 is allowed to usein kBytesint
--max-stack-trace-source-lengthmaximum length of function source code printed in a stack trace.int300
--clear-exceptions-on-js-entryclear pending exceptions when entering JavaScriptboolfalse
--histogram-intervaltime interval in ms for aggregating memory histogramsint600000
--heap-profiler-trace-objectsDump heap object allocations/movements/size_updatesboolfalse
--heap-profiler-use-embedder-graphUse the new EmbedderGraph API to get embedder nodesbooltrue
--heap-snapshot-string-limittruncate strings to this length in the heap snapshotint1024
--sampling-heap-profiler-suppress-randomnessUse constant sample intervals to eliminate test flakinessboolfalse
--use-idle-notificationUse idle notification to reduce memory footprint.booltrue
--use-icuse inline cachingbooltrue
--trace-ictrace inline cache state transitions for tools/ic-processorboolfalse
--ic-statsinline cache state transitions statisticsint0
--native-code-countersgenerate extra code for manipulating stats countersboolfalse
--thin-stringsEnable ThinString supportbooltrue
--trace-prototype-usersTrace updates to prototype user trackingboolfalse
--use-verbose-printerallows verbose printingbooltrue
--trace-for-in-enumerateTrace for-in enumerate slow-pathsboolfalse
--trace-mapstrace map creationboolfalse
--trace-maps-detailsalso log map detailsbooltrue
--allow-natives-syntaxallow natives syntaxboolfalse
--lazy-inner-functionsenable lazy parsing inner functionsbooltrue
--aggressive-lazy-inner-functionseven lazier inner function parsingbooltrue
--preparser-scope-analysisperform scope analysis for preparsed inner functionsbooltrue
--trace-simTrace simulator executionboolfalse
--debug-simEnable debugging the simulatorboolfalse
--check-icacheCheck icache flushes in ARM and MIPS simulatorboolfalse
--stop-sim-atSimulator stop after x number of instructionsint0
--sim-stack-alignmentStack alingment in bytes in simulator4 or 8, 8 is defaultint
--sim-stack-sizeStack size of the ARM64, MIPS64 and PPC64 simulator in kBytesdefault is 2 MBint
--log-colourWhen logging, try to use coloured output.booltrue
--ignore-asm-unimplemented-breakDon’t break for ASM_UNIMPLEMENTED_BREAK macros.boolfalse
--trace-sim-messagesTrace simulator debug messages. Implied by –trace-sim.boolfalse
--stack-trace-on-illegalprint stack trace when an illegal exception is thrownboolfalse
--abort-on-uncaught-exceptionabort programdump core when an uncaught exception is thrownbool
--abort-on-stack-or-string-length-overflowAbort program when the stack overflows or a string exceeds maximum lengthas opposed to throwing RangeError). This is useful for fuzzing where the spec behaviour would introduce nondeterminism.bool
--randomize-hashesrandomize hashes to avoid predictable hash collisionswith snapshots this option cannot override the baked-in seedbool
--rehash-snapshotrehash strings from the snapshot to override the baked-in seedbooltrue
--hash-seedFixed seed to use to hash property keys0 means random)(with snapshots this option cannot override the baked-in seeduint64
--random-seedDefault seed for initializing random generator0, the default, means to use system random).int
--fuzzer-random-seedDefault seed for initializing fuzzer random generator0, the default, means to use v8’s random number generator seed).int
--trace-railtrace RAIL modeboolfalse
--print-all-exceptionsprint exception object and stack trace on each thrown exceptionboolfalse
--runtime-call-statsreport runtime call counts and timesboolfalse
--runtime-statsinternal usage only for controlling runtime statisticsint0
--print-embedded-builtin-candidatesPrints builtins that are not yet embedded but could be.boolfalse
--lazy-deserializationDeserialize code lazily from the snapshot.booltrue
--lazy-handler-deserializationDeserialize bytecode handlers lazily from the snapshot.booltrue
--trace-lazy-deserializationTrace lazy deserialization.boolfalse
--profile-deserializationPrint the time it takes to deserialize the snapshot.boolfalse
--serialization-statisticsCollect statistics on serialized objects.boolfalse
--serialization-chunk-sizeCustom size for serialization chunksuint4096
--regexp-optimizationgenerate optimized regexp codebooltrue
--regexp-mode-modifiersenable inline flags in regexp.boolfalse
--testing-bool-flagtesting_bool_flagbooltrue
--testing-maybe-bool-flagtesting_maybe_bool_flagmaybe_boolunset
--testing-int-flagtesting_int_flagint13
--testing-float-flagfloat-flagfloat2.5
--testing-string-flagstring-flagstringHello, world!
--testing-prng-seedSeed used for threading test randomnessint42
--embedded-srcPath for the generated embedded data file.mksnapshot onlystring
--embedded-variantLabel to disambiguate symbols in embedded data file.mksnapshot onlystring
--startup-srcWrite V8 startup as C++ src.mksnapshot onlystring
--startup-blobWrite V8 startup blob file.mksnapshot onlystring
--helpPrint usage message, including flags, on consolebooltrue
--dump-countersDump counters on exitboolfalse
--dump-counters-nvpDump counters as name-value pairs on exitboolfalse
--use-external-stringsUse external strings for source codeboolfalse
--map-countersMap counters to a filestring
--js-argumentsPass all remaining arguments to the script. Alias for “–”.arguments
--mock-arraybuffer-allocatorUse a mock ArrayBuffer allocator for testing.boolfalse
--logMinimal loggingno API, code, GC, suspect, or handles samples).bool
--log-allLog all events to the log file.boolfalse
--log-apiLog API events to the log file.boolfalse
--log-codeLog code events to the log file without profiling.boolfalse
--log-handlesLog global handle events.boolfalse
--log-suspectLog suspect operations.boolfalse
--log-source-codeLog source code.boolfalse
--log-function-eventsLog function eventsparse, compile, execute separately.bool
--profLog statistical profiling informationimplies –log-code).bool
--detailed-line-infoAlways generate detailed line information for CPU profiling.boolfalse
--prof-sampling-intervalInterval for –prof samplesin microseconds).int
--prof-cppLike –prof, but ignore generated code.boolfalse
--prof-browser-modeUsed with –prof, turns on browser-compatible mode for profiling.booltrue
--logfileSpecify the name of the log file.stringv8.log
--logfile-per-isolateSeparate log files for each isolate.booltrue
--ll-profEnable low-level linux profiler.boolfalse
--interpreted-frames-native-stackShow interpreted frames on the native stackuseful for external profilers).bool
--perf-basic-profEnable perf linux profilerbasic support).bool
--perf-basic-prof-only-functionsOnly report function code ranges to perfi.e. no stubs).bool
--perf-profEnable perf linux profilerexperimental annotate support).bool
--perf-prof-unwinding-infoEnable unwinding info for perf linux profilerexperimental).bool
--gc-fake-mmapSpecify the name of the file for fake gc mmap used in ll_profstring/tmp/v8_gc
--log-internal-timer-eventsTime internal events.boolfalse
--log-timer-eventsTime events including external callbacks.boolfalse
--log-instruction-statsLog AArch64 instruction statistics.boolfalse
--log-instruction-fileAArch64 instruction statistics log file.stringarm64_inst.csv
--log-instruction-periodAArch64 instruction statistics logging period.int4194304
--redirect-code-tracesoutput deopt information and disassembly into file code- - .asm boolfalse
--redirect-code-traces-tooutput deopt information and disassembly into the given filestringnullptr
--print-opt-sourceprint source code of optimized and inlined functionsboolfalse
--trace-elements-transitionstrace elements transitionsboolfalse
--trace-creation-allocation-sitestrace the creation of allocation sitesboolfalse
--print-code-stubsprint code stubsboolfalse
--test-secondary-stub-cachetest secondary stub cache by disabling the primary oneboolfalse
--test-primary-stub-cachetest primary stub cache by disabling the secondary oneboolfalse
--test-small-max-function-context-stub-sizeenable testing the function context size overflow path by making the maximum size smallerboolfalse
--print-codeprint generated codeboolfalse
--print-opt-codeprint optimized codeboolfalse
--print-opt-code-filterfilter for printing optimized codestring*
--print-code-verboseprint more information for codeboolfalse
--print-builtin-codeprint generated code for builtinsboolfalse
--print-builtin-code-filterfilter for printing builtin codestring*
--print-builtin-sizeprint code size for builtinsboolfalse
--sodiumprint generated code output suitable for use with the Sodium code viewerboolfalse
--print-all-codeenable all flags related to printing codeboolfalse
--predictableenable predictable modeboolfalse
--single-threadeddisable the use of background tasksboolfalse
--single-threaded-gcdisable the use of background gc tasksboolfalse
选项 描述 类型 默认
--experimental-extras 启用通过v8_experimental_extra_library_files编译的代码 布尔
--use-strict 强制严格模式 布尔
--es-staging 启用值得测试的和谐功能 仅限内部使用 布尔
--harmony 启用所有已完成的和声功能 布尔
--harmony-shipping 启用所有已发行的和声功能 布尔 真正
--harmony-do-expressions 启用“和谐表达” 进行中 布尔
--harmony-class-fields 启用“类文字中的和谐字段” 进行中 布尔
--harmony-static-fields 启用“类文字中的和谐静态字段” 进行中 布尔
--harmony-await-optimization 启用“和谐等待1分钟” 进行中 布尔
--harmony-locale 启用“国际语言环境” 进行中 布尔
--harmony-intl-list-format 启用“ Intl.ListFormat” 进行中 布尔
--harmony-intl-relative-time-format 启用“ Intl.RelativeTimeFormat” 进行中 布尔
--harmony-public-fields 启用“类文字中的和谐公共字段” 布尔
--harmony-private-fields 启用“类文字中的和谐私有字段” 布尔
--harmony-numeric-separator 启用“数字之间的和谐数字分隔符” 布尔
--harmony-string-matchall 启用“和谐String.prototype.matchAll” 布尔
--harmony-global 实现“和谐全球” 布尔
--harmony-string-trimming 启用“ harmony String.prototype.trim {Start,End}” 布尔 真正
--harmony-sharedarraybuffer 启用“ harmony sharedarraybuffer” 布尔 真正
--harmony-function-tostring 启用“和谐Function.prototype.toString” 布尔 真正
--harmony-import-meta 启用“ harmony import.meta属性” 布尔 真正
--harmony-bigint 启用“和谐任意精度整数” 布尔 真正
--harmony-dynamic-import 启用“和谐动态导入” 布尔 真正
--harmony-array-prototype-values 启用“ harmony Array.prototype.values” 布尔 真正
--harmony-array-flat 启用“ harmony Array.prototype。{flat,flatMap}” 布尔 真正
--harmony-symbol-description 启用“和谐Symbol.prototype.description” 布尔 真正
--icu-timezone-data 从ICU获取有关时区的信息 布尔 真正
--future 表示我们希望在不久的将来发布所有已发布的功能 布尔
--allocation-site-pretenuring 有分配地点的任期 布尔 真正
--page-promotion 根据利用率提升页面 布尔 真正
--page-promotion-threshold 页面上活动字节的最小百分比,以实现快速撤离 整型 70
--trace-pretenuring 追踪HAllocate指令的前期决定 布尔
--trace-pretenuring-statistics 跟踪分配站点持续性统计 布尔
--track-fields 仅使用smi值跟踪字段 布尔 真正
--track-double-fields 跟踪具有双值的字段 布尔 真正
--track-heap-object-fields 跟踪具有堆值的字段 布尔 真正
--track-computed-fields 跟踪计算的样板字段 布尔 真正
--track-field-types 田径场类型 布尔 真正
--trace-block-coverage 跟踪收集的块覆盖信息 布尔
--feedback-normalization 反馈规范化给构造函数 布尔
--optimize-for-size 启用优化,使内存大小超过执行速度 布尔
--enable-one-shot-optimization 为仅执行一次的代码启用大小优化 布尔 真正
--unbox-double-arrays 自动开箱双打数组 布尔 真正
--interrupt-budget 中断预算,应用于探查器计数器 整型 147456
--ignition-elide-noneffectful-bytecodes 消除不会产生任何外部影响的字节码 布尔 真正
--ignition-reo 使用点火套当量优化器 布尔 真正
--ignition-filter-expression-positions 在字节码管道之前过滤表达式位置 布尔 真正
--ignition-share-named-property-feedback 从相同对象加载相同命名属性时共享反馈槽 布尔 真正
--print-bytecode 打印由点火解释器生成的字节码 布尔
--print-bytecode-filter 用于选择要打印字节码的函数的过滤器 *
--trace-ignition-codegen 跟踪点火解释器字节码处理程序的代码生成 布尔
--trace-ignition-dispatches 通过点火解释器跟踪对字节码处理程序的调度 布尔
--trace-ignition-dispatches-output-file 字节码处理程序分发表写入的文件 默认情况下,表未写入文件
--fast-math 快点 但是数学函数可能不太准确 布尔
--trace-track-allocation-sites 跟踪分配站点的跟踪 布尔
--trace-migration 跟踪对象迁移 布尔
--trace-generalization 跟踪图综合 布尔
--concurrent-recompilation 在单独的线程上异步优化热功能 布尔 真正
--trace-concurrent-recompilation 跟踪并发重新编译 布尔
--concurrent-recompilation-queue-length 并发编译队列的长度 整型 8
--concurrent-recompilation-delay 人工编译延迟(毫秒) 整型 0
--block-concurrent-recompilation 阻止排队的作业,直到被释放 布尔
--concurrent-compiler-frontend 在单独的线程上运行优化编译器的前端阶段 布尔
--strict-heap-broker 序列化不完整失败 布尔
--trace-heap-broker 跟踪堆代理 布尔
--stress-runs 压力运行次数 整型 0
--deopt-every-n-times 每过n次通过优化点优化一次 整型 0
--print-deopt-stress 打印可能的取消点数 布尔
--turbo-sp-frame-access 尽可能使用堆栈指针相对访问框架 布尔
--turbo-preprocess-ranges 运行注册前分配启发法 布尔 真正
--turbo-filter TurboFan编译器的优化过滤器 *
--trace-turbo 跟踪生成的TurboFan IR 布尔
--trace-turbo-path 将生成的TurboFan IR转储到的目录 nullptr
--trace-turbo-filter 跟踪涡轮风扇编译的过滤器 *
--trace-turbo-graph 跟踪生成的TurboFan图 布尔
--trace-turbo-scheduled 跟踪TurboFan IR与时间表 布尔
--trace-turbo-cfg-file 跟踪Turbo CFG图 为C1可视化器指定文件名
--trace-turbo-types 追踪TurboFan的类型 布尔 真正
--trace-turbo-scheduler 跟踪TurboFan的调度程序 布尔
--trace-turbo-reduction 追踪TurboFan的各种减速器 布尔
--trace-turbo-trimming 跟踪TurboFan的图形修剪器 布尔
--trace-turbo-jt 跟踪TurboFan的跳转线程 布尔
--trace-turbo-ceq 跟踪TurboFan的控制等效项 布尔
--trace-turbo-loop 跟踪TurboFan的循环优化 布尔
--trace-alloc 跟踪寄存器分配器 布尔
--trace-all-uses 追踪所有使用位置 布尔
--trace-representation 跟踪表示类型 布尔
--turbo-verify 在每个阶段验证TurboFan图 布尔
--turbo-verify-machine-graph 在选择指令之前验证TurboFan机器图 nullptr
--trace-verify-csa 跟踪代码存根验证 布尔
--csa-trap-on-node 在给定的存根中创建具有给定ID的节点时触发断点。 格式为:StubName,NodeId nullptr
--turbo-stats 打印TurboFan统计信息 布尔
--turbo-stats-nvp 以机器可读格式打印TurboFan统计信息 布尔
--turbo-stats-wasm 打印wasm编译的TurboFan统计信息 布尔
--turbo-splitting 在TurboFan的调度过程中拆分节点 布尔 真正
--function-context-specialization 在TurboFan中启用功能上下文专门化 布尔
--turbo-inlining 在TurboFan中启用内联 布尔 真正
--max-inlined-bytecode-size 单个内联的最大字节码大小 整型 500
--max-inlined-bytecode-size-cumulative 用于内联的字节码的最大累积大小 整型 1000
--max-inlined-bytecode-size-absolute 用于内联的字节码的最大累积大小 整型 5000
--reserve-inline-budget-scale-factor 用于内联的字节码的最大累积大小 浮动 1.2
--max-inlined-bytecode-size-small 小函数内联考虑的最大字节码大小 整型 30
--min-inlining-frequency 内联的最小频率 浮动 0.15
--polymorphic-inlining 多态内联 布尔 真正
--stress-inline 设置较高的内联阈值以尽可能内联 布尔
--trace-turbo-inlining 跟踪TurboFan内联 布尔
--inline-accessors 内联JavaScript访问器 布尔 真正
--inline-into-try 内联到try块中 布尔 真正
--turbo-inline-array-builtins TurboFan代码中的内联数组内置函数 布尔 真正
--use-osr 使用堆叠更换 布尔 真正
--trace-osr 跟踪堆栈替换 布尔
--analyze-environment-liveness 分析环境槽的活动性并消除死值 布尔 真正
--trace-environment-liveness 跟踪局部变量槽的活动性 布尔
--turbo-load-elimination 在TurboFan中启用负载消除 布尔 真正
--trace-turbo-load-elimination 跟踪TurboFan负载消除 布尔
--turbo-profiling 在TurboFan中启用分析 布尔
--turbo-verify-allocation 验证TurboFan中的寄存器分配 布尔
--turbo-move-optimization 优化TurboFan中的差距移动 布尔 真正
--turbo-jt 在TurboFan中启用跳转线程 布尔 真正
--turbo-loop-peeling 涡轮风扇环剥皮 布尔 真正
--turbo-loop-variable Turbofan循环变量优化 布尔 真正
--turbo-cf-optimization 优化TurboFan中的控制流程 布尔 真正
--turbo-escape 启用转义分析 布尔 真正
--turbo-allocation-folding 涡轮风扇分配折叠 布尔 真正
--turbo-instruction-scheduling 在TurboFan中启用指令调度 布尔
--turbo-stress-instruction-scheduling 随机安排指令以强调依赖性跟踪 布尔
--turbo-store-elimination 在TurboFan中启用商店-商店消除 布尔 真正
--trace-store-elimination 消除跟踪存储 布尔
--turbo-rewrite-far-jumps 重写远近跳跃 ia32,x64 布尔
--experimental-inline-promise-constructor 在TurboFan中内联Promise构造函数 布尔 真正
--untrusted-code-mitigations 启用缓解措施以执行不受信任的代码 布尔
--branch-load-poisoning 使用分支条件屏蔽载荷。 布尔
--minimal 简化执行模型以简化移植 例如,始终使用点火,从不优化 布尔
--expose-wasm 将wasm接口暴露给JavaScript 布尔 真正
--assume-asmjs-origin 强制wasm解码器假定输入为内部asm-wasm格式 布尔
--wasm-disable-structured-cloning 禁用wasm结构化克隆 布尔
--wasm-num-compilation-tasks wasm的并行编译任务数 整型 10
--wasm-write-protect-code-memory 在wasm本机堆上写保护代码内存 布尔
--wasm-trace-serialization 跟踪序列化/反序列化 布尔
--wasm-async-compilation 为WebAssembly.compile启用实际的异步编译 布尔 真正
--wasm-test-streaming 使用流式编译而不是异步编译进行测试 布尔
--wasm-max-mem-pages wasm实例的最大64KiB内存页数 int 32767
--wasm-max-table-size wasm实例的最大表大小 int 10000000
--wasm-tier-up 启用wasm基准编译并分层至优化编译器 布尔 真正
--trace-wasm-ast-start wasm AST跟踪的启动功能 包括的 整型
--trace-wasm-ast-end wasm AST跟踪的最终功能 独家 整型
--liftoff 启用Liftoff,WebAssembly的基准编译器 布尔 真正
--wasm-trace-memory 打印以wasm代码执行的所有内存更新 布尔
--wasm-tier-mask-for-testing 使用TurboFan而不是Liftoff编译的函数的位掩码 整型 0
--validate-asm 在编译之前验证asm.js模块 布尔 真正
--suppress-asm-messages 不发出与asm.js相关的消息 用于黄金文件测试 布尔
--trace-asm-time 将asm.js计时信息记录到控制台 布尔
--trace-asm-scanner 记录asm.js扫描程序遇到的令牌 布尔
--trace-asm-parser asm.js的详细日志记录解析失败 布尔
--stress-validate-asm 尝试将所有内容验证为asm.js 布尔
--dump-wasm-module-path 将wasm模块转储到的目录 nullptr
--experimental-wasm-mv 为wasm启用原型多值支持 布尔
--experimental-wasm-eh 为wasm启用原型异常处理操作码 布尔
--experimental-wasm-se 为wasm启用原型符号扩展操作码 布尔 真正
--experimental-wasm-sat-f2i-conversions 为wasm启用原型饱和浮点转换操作码 布尔
--experimental-wasm-threads 为wasm启用原型线程操作码 布尔
--experimental-wasm-simd 为wasm启用原型SIMD操作码 布尔
--experimental-wasm-anyref 为wasm启用原型anyref操作码 布尔
--experimental-wasm-mut-global 支持原型导入/导出对wasm的可变全局支持 布尔 真正
--wasm-opt 启用wasm优化 布尔
--wasm-no-bounds-checks 禁用边界检查 仅性能测试 布尔
--wasm-no-stack-checks 禁用堆栈检查 仅性能测试 布尔
--wasm-shared-engine 在流程中的所有隔离项之间共享一个wasm引擎 布尔 真正
--wasm-shared-code 传输时共享wasm模块基础的代码 布尔 真正
--wasm-trap-handler 使用信号处理程序来超越wasm中的内存访问 当前仅Linux x86_64 布尔
--wasm-trap-handler-fallback 使用边界检查是否没有受保护的内存 布尔
--wasm-fuzzer-gen-test 运行wasm模糊器时生成测试用例 布尔
--print-wasm-code 打印WebAssembly代码 布尔
--wasm-interpret-all 在wasm解释器中执行所有wasm代码 布尔
--asm-wasm-lazy-compilation 为asm-wasm模块启用延迟编译 布尔 真正
--wasm-lazy-compilation 为所有wasm模块启用延迟编译 布尔
--frame-count 探查器检查的堆栈帧数 整型 1个
--type-info-threshold 必须具有类型信息才能进行优化的IC的百分比 整型 25
--stress-sampling-allocation-profiler 启用以X作为采样间隔的采样分配探查器 整型 0
--min-semi-space-size 半空间的最小大小 (以MB为单位),新空间由两个半空间组成 size_t
--max-semi-space-size 半空间的最大大小 (以MB为单位),新空间由两个半空间组成 size_t
--semi-space-growth-factor 发展新空间的因素 整型 2
--experimental-new-space-growth-heuristic 根据幸存者的百分比而不是他们的绝对价值来扩大新的空间。 布尔
--max-old-space-size 旧空间的最大大小 以兆字节为单位 size_t
--initial-old-space-size 初始旧空间大小 以兆字节为单位 size_t
--gc-global 始终执行全局GC 布尔
--random-gc-interval 在random(0,X分配之后,收集垃圾。它将覆盖gc_interval。 整型 0
--gc-interval 垃圾收集后 分配 整型 -1
--retain-maps-for-n-gc 使地图保持活动状态 旧空间垃圾收集 整型 2
--trace-gc 在每个垃圾收集之后打印一条跟踪行 布尔
--trace-gc-nvp 每次垃圾回收后,以name = value格式打印一条详细的跟踪行 布尔
--trace-gc-ignore-scavenger 清道夫收集后不打印跟踪线 布尔
--trace-idle-notification 在每个空闲通知之后打印一条跟踪行 布尔
--trace-idle-notification-verbose 打印空闲通知使用的堆状态 布尔
--trace-gc-verbose 在每个垃圾收集之后打印更多详细信息 布尔
--trace-allocation-stack-interval 之后打印堆栈跟踪 自由清单分配 整型 -1
--trace-duplicate-threshold-kb 如果堆对象的大小大于给定的阈值,则打印堆中的重复对象 整型 0
--trace-fragmentation 报告旧空间碎片 布尔
--trace-fragmentation-verbose 报告旧空间碎片 详细 布尔
--trace-evacuation 报告疏散统计 布尔
--trace-mutator-utilization 打印更改器利用率,分配速度,GC速度 布尔
--incremental-marking 使用增量标记 布尔 真正
--incremental-marking-wrappers 使用增量式打标包装纸 布尔 真正
--trace-unmapper 追踪解映射 布尔
--parallel-scavenge 并行清除 布尔 真正
--trace-parallel-scavenge 跟踪并行清理 布尔
--write-protect-code-memory 写保护代码存储器 布尔 真正
--concurrent-marking 使用并发标记 布尔 真正
--parallel-marking 在原子暂停中使用并行标记 布尔 真正
--ephemeron-fixpoint-iterations 切换到线性星历算法所需的定点迭代次数 整型 10
--trace-concurrent-marking 跟踪并发标记 布尔
--black-allocation 使用黑色分配 布尔 真正
--concurrent-store-buffer 使用并发存储缓冲区处理 布尔 真正
--concurrent-sweeping 使用并发扫描 布尔 真正
--parallel-compaction 使用并行压缩 布尔 真正
--parallel-pointer-update 在压缩期间使用并行指针更新 布尔 真正
--detect-ineffective-gcs-near-heap-limit 触发内存不足故障,以避免GC风暴接近堆限制 布尔 真正
--trace-incremental-marking 跟踪增量标记的进度 布尔
--trace-stress-marking 跟踪应力标记进度 布尔
--trace-stress-scavenge 微量应力清除进度 布尔
--track-gc-object-stats 跟踪对象计数和内存使用情况 布尔
--trace-gc-object-stats 跟踪对象计数和内存使用情况 布尔
--trace-zone-stats 跟踪区域内存使用情况 布尔
--track-retaining-path 支持跟踪保留路径 布尔
--concurrent-array-buffer-freeing 在后台线程上的免费数组缓冲区分配 布尔 真正
--gc-stats 用于内部跟踪以启用gc统计信息 整型 0
--track-detached-contexts 跟踪预期被垃圾收集的本机上下文 布尔 真正
--trace-detached-contexts 跟踪预期被垃圾收集的本机上下文 布尔
--move-object-start 启用对象开始移动 布尔 真正
--memory-reducer 使用内存减少器 布尔 真正
--heap-growing-percent 指定堆增长因子为 1 + heap_growing_percent / 100 整型
--v8-os-page-size 覆盖操作系统页面大小 以千字节为单位 整型
--always-compact 在每个完整的GC上执行压缩 布尔
--never-compact 切勿在完整GC上执行压缩-仅测试 布尔
--compact-code-space 完整集合上的紧凑代码空间 布尔 真正
--use-marking-progress-bar 增量标记处于活动状态时,使用进度条以增量方式扫描大型对象。 布尔 真正
--force-marking-deque-overflows 通过将其大小减小到64个单词来强制标记双端队列溢出 布尔
--stress-compaction 强调GC压缩器清除错误 暗示–force_marking_deque_overflows 布尔
--stress-compaction-random 通过选择随机百分比的页面作为疏散候选者,提高GC压缩的压力。 它会覆盖Stress_compaction。 布尔
--stress-incremental-marking 强制对小堆进行增量标记并更频繁地运行 布尔
--fuzzer-gc-analysis 打印分配数量并启用分析模式以进行gc模糊测试,例如–stress-marking,-stress-scavenge 布尔
--stress-marking 在0到X之间的随机点上强制标记 常规标记开始限制的包含百分比 整型
--stress-scavenge 强制清除0到X之间的随机点 新空间容量的包含百分比 整型
--disable-abortjs 禁用AbortJS运行时功能 布尔
--manual-evacuation-candidates-selection 仅测试模式标志。 它允许单元测试选择疏散候选页面 需要–stress_compaction)。 布尔
--fast-promotion-new-space 快速提高生存率,开拓新空间 布尔
--clear-free-memory 用0初始化可用内存 布尔
--young-generation-large-objects 默认情况下在年轻一代大对象空间中分配大对象 布尔
--debug-code 产生额外的代码 调试断言 布尔
--code-comments 在代码反汇编中发出注释; 对于更具可读性的源位置,您应该添加–no-concurrent_recompilation 布尔
--enable-sse3 如果可用,启用SSE3指令的使用 布尔 真正
--enable-ssse3 如果可用,启用SSSE3指令的使用 布尔 真正
--enable-sse4-1 如果可用,启用SSE4.1指令的使用 布尔 真正
--enable-sahf 启用S​​AHF指令(如果可用) 仅X64 布尔
--enable-avx 如果可用,启用AVX指令的使用 布尔 真正
--enable-fma3 启用使用FMA3指令(如果有) 布尔 真正
--enable-bmi1 如果可用,启用BMI1指令的使用 布尔 真正
--enable-bmi2 启用使用BMI2指令(如果有) 布尔 真正
--enable-lzcnt 启用使用LZCNT指令(如果可用) 布尔 真正
--enable-popcnt 如果可用,启用POPCNT指令的使用 布尔 真正
--arm-arch 如果可用,生成针对所选ARM体系结构的指令:armv6,armv7,armv7 + sudiv或armv8 armv8
--force-long-branches 强制所有发出的分支处于长模式 仅MIPS / PPC 布尔
--mcpu 启用针对特定CPU的优化 汽车
--partial-constant-pool 启用使用部分常量池 仅X64 布尔
--enable-armv7 不推荐使用 使用–arm_arch代替 也许_布尔
--enable-vfp3 不推荐使用 使用–arm_arch代替 也许_布尔
--enable-32dregs 不推荐使用 使用–arm_arch代替 也许_布尔
--enable-neon 不推荐使用 使用–arm_arch代替 也许_布尔
--enable-sudiv 不推荐使用 使用–arm_arch代替 也许_布尔
--enable-armv8 不推荐使用 使用–arm_arch代替 也许_布尔
--enable-regexp-unaligned-accesses 为正则表达式引擎启用未对齐的访问 布尔 真正
--script-streaming 在后台启用解析 布尔 真正
--disable-old-api-accessors 禁用其setter通过原型链触发的旧式API访问器 布尔
--expose-natives-as 将本地对象暴露在全局对象中 nullptr
--expose-free-buffer 公开freeBuffer扩展 布尔
--expose-gc 公开gc扩展 布尔
--expose-gc-as 以指定名称公开gc扩展名 nullptr
--expose-externalize-string 公开外部化字符串扩展 布尔
--expose-trigger-failure 暴露触发失败扩展 布尔
--stack-trace-limit 要捕获的堆栈帧数 整型 10
--builtins-in-stack-traces 在堆栈跟踪中显示内置函数 布尔
--enable-experimental-builtins 启用新的基于csa的实验内置程序 布尔
--disallow-code-generation-from-strings 禁止评估和朋友 布尔
--expose-async-hooks 暴露async_hooks对象 布尔
--allow-unsafe-function-constructor 允许在不进行安全检查的情况下调用函数构造函数 布尔
--force-slow-path 始终采取缓慢的内建方式 布尔
--inline-new 使用快速内联分配 布尔 真正
--trace 跟踪函数调用 布尔
--lazy 使用延迟编译 布尔 真正
--trace-opt 跟踪惰性优化 布尔
--trace-opt-verbose 额外的详细编译跟踪 布尔
--trace-opt-stats 跟踪惰性优化统计 布尔
--trace-deopt 跟踪优化功能去优化 布尔
--trace-file-names 在trace-opt / trace-deopt输出中包含文件名 布尔
--trace-interrupts 处理中断时跟踪中断 布尔
--opt 使用自适应优化 布尔 真正
--always-opt 总是尝试优化功能 布尔
--always-osr 总是尝试OSR功能 布尔
--prepare-always-opt 准备开启始终选择 布尔
--trace-serializer 打印代码序列化器跟踪 布尔
--compilation-cache 启用编译缓存 布尔 真正
--cache-prototype-transitions 缓存原型过渡 布尔 真正
--compiler-dispatcher 启用编译器调度程序 布尔
--trace-compiler-dispatcher 跟踪编译器调度程序活动 布尔
--trace-compiler-dispatcher-jobs 跟踪由编译器调度程序管理的单个作业的进度 布尔
--cpu-profiler-sampling-interval CPU Profiler采样间隔(以微秒为单位) 整型 1000
--trace-js-array-abuse 跟踪对JS数组的越界访问 布尔
--trace-external-array-abuse 跟踪对外部阵列的越界访问 布尔
--trace-array-abuse 跟踪对所有阵列的越界访问 布尔
--trace-side-effect-free-debug-evaluate 打印调试消息以进行无副作用的调试评估以进行测试 布尔
--hard-abort 通过崩溃中止 布尔 真正
--expose-inspector-scripts 公开Injection-script-source.js进行调试 布尔
--stack-size 允许使用堆栈区域v8的默认大小 以千字节为单位 整型
--max-stack-trace-source-length 堆栈跟踪中打印的功能源代码的最大长度。 整型 300
--clear-exceptions-on-js-entry 输入JavaScript时清除待处理的异常 布尔
--histogram-interval 以毫秒为单位的时间间隔,用于汇总内存直方图 整型 600000
--heap-profiler-trace-objects 转储堆对象分配/移动/ size_updates 布尔
--heap-profiler-use-embedder-graph 使用新的EmbedderGraph API获取嵌入节点 布尔 真正
--heap-snapshot-string-limit 在堆快照中将字符串截断到该长度 整型 1024
--sampling-heap-profiler-suppress-randomness 使用恒定的采样间隔以消除测试片状感 布尔
--use-idle-notification 使用空闲通知以减少内存占用。 布尔 真正
--use-ic 使用内联缓存 布尔 真正
--trace-ic 跟踪工具/ ic处理器的内联高速缓存状态转换 布尔
--ic-stats 内联缓存状态转换统计 整型 0
--native-code-counters 生成用于处理统计计数器的额外代码 布尔
--thin-strings 启用ThinString支持 布尔 真正
--trace-prototype-users 跟踪更新以跟踪原型用户 布尔
--use-verbose-printer 允许详细打印 布尔 真正
--trace-for-in-enumerate 跟踪for-inumerate慢路径 布尔
--trace-maps 跟踪图创建 布尔
--trace-maps-details 还记录地图详细信息 布尔 真正
--allow-natives-syntax 允许本机语法 布尔
--lazy-inner-functions 启用延迟解析内部函数 布尔 真正
--aggressive-lazy-inner-functions 甚至懒惰的内部函数解析 布尔 真正
--preparser-scope-analysis 对准备好的内部功能进行范围分析 布尔 真正
--trace-sim 跟踪模拟器执行 布尔
--debug-sim 启用调试模拟器 布尔
--check-icache 在ARM和MIPS模拟器中检查icache刷新 布尔
--stop-sim-at x指令数后模拟器停止 整型 0
--sim-stack-alignment 模拟器中以字节为单位的堆栈堆栈 4或8,默认为8 整型
--sim-stack-size ARM64,MIPS64和PPC64仿真器的堆栈大小(以KB为单位) 默认为2 MB 整型
--log-colour 记录时,请尝试使用彩色输出。 布尔 真正
--ignore-asm-unimplemented-break 不要破坏ASM_UNIMPLEMENTED_BREAK宏。 布尔
--trace-sim-messages 跟踪模拟器调试消息。 由–trace-sim隐含。 布尔
--stack-trace-on-illegal 抛出非法异常时打印堆栈跟踪 布尔
--abort-on-uncaught-exception 中止程序 引发未捕获的异常时转储核心 布尔
--abort-on-stack-or-string-length-overflow 当堆栈溢出或字符串超过最大长度时中止程序 而不是抛出RangeError)。 这对于zzing where the spec behaviour would introduce nondeterminism.很有用zzing where the spec behaviour would introduce nondeterminism. 布尔
--randomize-hashes 随机化哈希以避免可预测的哈希冲突 对于快照,此选项不能覆盖已烘焙的种子 布尔
--rehash-snapshot 从快照重新哈希字符串以覆盖烘焙的种子 布尔 真正
--hash-seed 修复了用于哈希属性键的种子 0表示随机)(使用快照时,此选项无法覆盖烘焙的种子 uint64
--random-seed 用于初始化随机生成器的默认种子 0(默认值)表示使用系统随机数)。 整型
--fuzzer-random-seed 用于初始化模糊器随机生成器的默认种子 0(默认值)表示使用v8的随机数生成器种子)。 整型
--trace-rail 跟踪RAIL模式 布尔
--print-all-exceptions 在每个抛出的异常上打印异常对象和堆栈跟踪 布尔
--runtime-call-stats 报告运行时调用计数和时间 布尔
--runtime-stats 内部使用,仅用于控制运行时统计信息 整型 0
--print-embedded-builtin-candidates 打印尚未嵌入但可以嵌入的内置文件。 布尔
--lazy-deserialization 从快照延迟反序列化代码。 布尔 真正
--lazy-handler-deserialization 从快照延迟反序列化字节码处理程序。 布尔 真正
--trace-lazy-deserialization 跟踪懒惰的反序列化。 布尔
--profile-deserialization 打印反序列化快照所需的时间。 布尔
--serialization-statistics 收集有关序列化对象的统计信息。 布尔
--serialization-chunk-size 序列化块的自定义大小 int 4096
--regexp-optimization 生成优化的正则表达式代码 布尔 真正
--regexp-mode-modifiers 在正则表达式中启用内联标志。 布尔
--testing-bool-flag testing_bool_flag 布尔 真正
--testing-maybe-bool-flag testing_maybe_bool_flag 也许_布尔 未设定
--testing-int-flag testing_int_flag 整型 13
--testing-float-flag 浮旗 浮动 2.5
--testing-string-flag 字符串标志 你好,世界!
--testing-prng-seed 用于穿线测试随机性的种子 整型 42
--embedded-src 生成的嵌入式数据文件的路径。 仅mksnapshot
--embedded-variant 标签用于消除嵌入式数据文件中的符号的歧义。 仅mksnapshot
--startup-src 将V8启动写为C ++ src。 仅mksnapshot
--startup-blob 编写V8启动Blob文件。 仅mksnapshot
--help 在控制台上打印使用情况消息,包括标志 布尔 真正
--dump-counters 出口处的转储柜台 布尔
--dump-counters-nvp 在出口时将计数器作为名称/值对转储 布尔
--use-external-strings 使用外部字符串作为源代码 布尔
--map-counters 将计数器映射到文件
--js-arguments 将所有剩余的参数传递给脚本。 “ –”的别名。 论点
--mock-arraybuffer-allocator 使用模拟的ArrayBuffer分配器进行测试。 布尔
--log 最少的日志记录 没有API,代码,GC,可疑或可处理的示例)。 布尔
--log-all 将所有事件记录到日志文件中。 布尔
--log-api 将API事件记录到日志文件中。 布尔
--log-code 将代码事件记录到日志文件中,而无需进行概要分析。 布尔
--log-handles 记录全局句柄事件。 布尔
--log-suspect 记录可疑操作。 布尔
--log-source-code 日志源代码。 布尔
--log-function-events 记录功能事件 分别解析,编译和执行。 布尔
--prof 记录统计分析信息 暗示–log-code)。 布尔
--detailed-line-info 始终为CPU分析生成详细的行信息。 布尔
--prof-sampling-interval –prof样本的间隔 (以微秒为单位)。 整型
--prof-cpp 与–prof类似,但是忽略生成的代码。 布尔
--prof-browser-mode 与–prof一起使用,打开浏览器兼容模式以进行分析。 布尔 真正
--logfile 指定日志文件的名称。 v8.log
--logfile-per-isolate 每个隔离的单独日志文件。 布尔 真正
--ll-prof 启用低级Linux分析器。 布尔
--interpreted-frames-native-stack 在本机堆栈上显示解释的帧 对外部分析器有用)。 布尔
--perf-basic-prof 启用Perf Linux Profiler 基本支持)。 布尔
--perf-basic-prof-only-functions 仅报告功能代码范围到性能 即没有存根)。 布尔
--perf-prof 启用Perf Linux Profiler 实验性注释支持)。 布尔
--perf-prof-unwinding-info 启用Perf Linux Profiler的展开信息 实验性)。 布尔
--gc-fake-mmap 指定用于ll_prof的假gc mmap的文件名 / tmp / v8_gc
--log-internal-timer-events 时间内部事件。 布尔
--log-timer-events 时间事件,包括外部回调。 布尔
--log-instruction-stats 记录AArch64指令统计信息。 布尔
--log-instruction-file AArch64指令统计信息日志文件。 arm64_inst.csv
--log-instruction-period AArch64指令统计记录周期。 整型 4194304
--redirect-code-traces 输出停用信息并反汇编成文件代码- -- .asm 布尔
--redirect-code-traces-to 输出停用信息并反汇编到给定文件中 nullptr
--print-opt-source 打印优化和内联函数的源代码 布尔
--trace-elements-transitions 微量元素过渡 布尔
--trace-creation-allocation-sites 跟踪分配站点的创建 布尔
--print-code-stubs 打印代码存根 布尔
--test-secondary-stub-cache 通过禁用主存根缓存来测试辅助存根缓存 布尔
--test-primary-stub-cache 通过禁用辅助存根缓存来测试主存根缓存 布尔
--test-small-max-function-context-stub-size 通过减小最大尺寸来测试功能上下文尺寸溢出路径 布尔
--print-code 打印生成的代码 布尔
--print-opt-code 打印优化代码 布尔
--print-opt-code-filter 用于打印优化代码的过滤器 *
--print-code-verbose 打印更多信息以获得代码 布尔
--print-builtin-code 打印生成的内置代码 布尔
--print-builtin-code-filter 用于打印内置代码的过滤器 *
--print-builtin-size 打印内置代码的大小 布尔
--sodium 打印适用于Sodium代码查看器的生成代码输出 布尔
--print-all-code 启用与打印代码有关的所有标志 布尔
--predictable 启用可预测模式 布尔
--single-threaded 禁用后台任务 布尔
--single-threaded-gc 禁用后台gc任务 布尔

翻译自: https://flaviocopes.com/node-runtime-v8-options/

node.js运行js

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值