Пики ЦП Nodejs, вызванные BytecodeHandler в v8
В настоящее время я работаю над проектом прокси-сервера, и я использую net
а также dgram
библиотеки для моих соединений TCP и UDP. После запуска моего сервера в течение 24 часов, я испытываю скачки процессора до 100%.
Я работал с узлом --perf_basic_prof
и я собрал следующие данные, это то, что делали процессоры до того, как я перезапустил приложение.
2de2e67675a0 30 Builtin:ThrowWasmTrapFuncSigMismatch
2de2e6767640 26 Builtin:NumberFormatPrototypeFormatToParts
2de2e67676e0 20 BytecodeHandler:Wide
2de2e6767760 20 BytecodeHandler:ExtraWide
2de2e67677e0 44 BytecodeHandler:LdaZero
2de2e67678a0 48 BytecodeHandler:LdaSmi
2de2e6767960 4c BytecodeHandler:LdaUndefined
2de2e6767a20 4c BytecodeHandler:LdaNull
2de2e6767ae0 4c BytecodeHandler:LdaTheHole
2de2e6767ba0 1c BytecodeHandler:LdaTrue
2de2e6767c20 1c BytecodeHandler:LdaFalse
2de2e6767ca0 4c BytecodeHandler:LdaConstant
2de2e6767d60 f34 BytecodeHandler:LdaGlobal
2de2e6768d00 e8c BytecodeHandler:LdaGlobalInsideTypeof
2de2e6769c00 ab BytecodeHandler:StaGlobalSloppy
2de2e6769d20 ab BytecodeHandler:StaGlobalStrict
2de2e6769e40 2c BytecodeHandler:PushContext
2de2e6769ee0 28 BytecodeHandler:PopContext
2de2e6769f80 80 BytecodeHandler:LdaContextSlot
2de2e6769f80 80 BytecodeHandler:LdaImmutableContextSlot
2de2e676a060 50 BytecodeHandler:LdaCurrentContextSlot
2de2e676a060 50 BytecodeHandler:LdaImmutableCurrentContextSlot
2de2e676a120 94 BytecodeHandler:StaContextSlot
2de2e676a220 64 BytecodeHandler:StaCurrentContextSlot
2de2e676a300 87 BytecodeHandler:LdaLookupSlot
2de2e676a400 f3 BytecodeHandler:LdaLookupContextSlot
2de2e676a560 f60 BytecodeHandler:LdaLookupGlobalSlot
2de2e676b520 87 BytecodeHandler:LdaLookupSlotInsideTypeof
2de2e676b620 f3 BytecodeHandler:LdaLookupContextSlotInsideTypeof
2de2e676b780 f20 BytecodeHandler:LdaLookupGlobalSlotInsideTypeof
2de2e676c700 fb BytecodeHandler:StaLookupSlot
2de2e676c860 24 BytecodeHandler:Ldar
2de2e676c900 24 BytecodeHandler:Star
2de2e676c9a0 30 BytecodeHandler:Mov
2de2e676ca40 c3f BytecodeHandler:LdaNamedProperty
2de2e676d6e0 bf BytecodeHandler:LdaKeyedProperty
2de2e676d800 80 BytecodeHandler:LdaModuleVariable
2de2e676d8e0 117 BytecodeHandler:StaModuleVariable
2de2e676da60 ab BytecodeHandler:StaNamedPropertySloppy
2de2e676db80 ab BytecodeHandler:StaNamedPropertyStrict
2de2e676dca0 ab BytecodeHandler:StaNamedOwnProperty
2de2e676ddc0 a7 BytecodeHandler:StaKeyedPropertySloppy
2de2e676dee0 a7 BytecodeHandler:StaKeyedPropertyStrict
2de2e676e000 c3 BytecodeHandler:StaDataPropertyInLiteral
2de2e676e140 9f BytecodeHandler:CollectTypeProfile
2de2e676e240 3a0 BytecodeHandler:Add
2de2e676e640 3fc BytecodeHandler:Sub
2de2e676eaa0 454 BytecodeHandler:Mul
2de2e676ef60 428 BytecodeHandler:Div
2de2e676f400 428 BytecodeHandler:Mod
2de2e676f8a0 308 BytecodeHandler:BitwiseOr
2de2e676fc20 308 BytecodeHandler:BitwiseXor
2de2e676ffa0 308 BytecodeHandler:BitwiseAnd
2de2e6770320 314 BytecodeHandler:ShiftLeft
2de2e67706a0 314 BytecodeHandler:ShiftRight
2de2e6770a20 3f8 BytecodeHandler:ShiftRightLogical
2de2e6770e80 2f0 BytecodeHandler:AddSmi
2de2e67711e0 340 BytecodeHandler:SubSmi
2de2e6771580 370 BytecodeHandler:MulSmi
2de2e6771960 398 BytecodeHandler:DivSmi
2de2e6771d60 354 BytecodeHandler:ModSmi
2de2e6772120 1c8 BytecodeHandler:BitwiseOrSmi
2de2e6772360 1c8 BytecodeHandler:BitwiseXorSmi
2de2e67725a0 1c8 BytecodeHandler:BitwiseAndSmi
2de2e67727e0 1cc BytecodeHandler:ShiftLeftSmi
2de2e6772a20 1cc BytecodeHandler:ShiftRightSmi
2de2e6772c60 2a4 BytecodeHandler:ShiftRightLogicalSmi
2de2e6772f80 264 BytecodeHandler:Inc
Помимо понимания того, что это встроенные функции обработчика байт-кода V8, я не имею ни малейшего понятия о том, как отлаживать причину скачков производительности моего процессора.
Буду признателен за любую помощь на всех