onnxruntime-web
Version:
A Javascript library for running ONNX models on browsers
1 lines • 1.23 MB
Source Map (JSON)
{"version":3,"sources":["../../common/lib/backend-impl.ts","../../common/lib/backend.ts","../../common/lib/version.ts","../../common/lib/env-impl.ts","../../common/lib/env.ts","../../common/lib/tensor-conversion-impl.ts","../../common/lib/tensor-factory-impl.ts","../../common/lib/tensor-impl-type-mapping.ts","../../common/lib/tensor-utils-impl.ts","../../common/lib/tensor-impl.ts","../../common/lib/tensor.ts","../../common/lib/trace.ts","../../common/lib/inference-session-impl.ts","../../common/lib/inference-session.ts","../../common/lib/tensor-conversion.ts","../../common/lib/tensor-factory.ts","../../common/lib/onnx-model.ts","../../common/lib/onnx-value.ts","../../common/lib/training-session-impl.ts","../../common/lib/training-session.ts","../../common/lib/index.ts","../lib/wasm/wasm-utils-env.ts","../lib/wasm/proxy-worker/main.ts","../lib/wasm/wasm-utils-import.ts","../lib/wasm/wasm-factory.ts","../lib/wasm/wasm-utils.ts","../lib/wasm/run-options.ts","../lib/wasm/session-options.ts","../lib/wasm/wasm-common.ts","../lib/wasm/wasm-utils-load-file.ts","../lib/wasm/jsep/log.ts","../lib/wasm/jsep/tensor-view.ts","../lib/wasm/jsep/webgpu/types.ts","../lib/wasm/jsep/webgpu/gpu-data-manager.ts","../lib/wasm/jsep/webgpu/attribute-with-cache-key.ts","../lib/wasm/jsep/util.ts","../lib/wasm/jsep/webgpu/ops/common.ts","../lib/wasm/jsep/webgpu/ops/transpose.ts","../lib/wasm/jsep/webgpu/ops/reduce-shared.ts","../lib/wasm/jsep/webgpu/ops/reduce.ts","../lib/wasm/jsep/webgpu/ops/argminmax.ts","../lib/wasm/jsep/webgpu/ops/attention.ts","../lib/wasm/jsep/webgpu/ops/batch-norm.ts","../lib/wasm/jsep/webgpu/ops/bias-add.ts","../lib/wasm/jsep/webgpu/ops/unary-op.ts","../lib/wasm/jsep/webgpu/ops/bias-split-gelu.ts","../lib/wasm/jsep/webgpu/ops/binary-op.ts","../lib/wasm/jsep/webgpu/ops/concat.ts","../lib/wasm/jsep/webgpu/ops/fuse-utils.ts","../lib/wasm/jsep/webgpu/ops/3rd-party/activation_util.ts","../lib/wasm/jsep/webgpu/ops/3rd-party/conv_util.ts","../lib/wasm/jsep/webgpu/ops/3rd-party/matmul_packed_webgpu.ts","../lib/wasm/jsep/webgpu/ops/3rd-party/conv2d_mm_webgpu.ts","../lib/wasm/jsep/webgpu/ops/3rd-party/conv3d_naive_webgpu.ts","../lib/wasm/jsep/webgpu/ops/conv-grouped.ts","../lib/wasm/jsep/webgpu/ops/matmul.ts","../lib/wasm/jsep/webgpu/ops/conv.ts","../lib/wasm/jsep/webgpu/ops/3rd-party/conv_backprop_mm_webgpu.ts","../lib/wasm/jsep/webgpu/ops/3rd-party/conv_backprop_webgpu.ts","../lib/wasm/jsep/webgpu/ops/conv-transpose.ts","../lib/wasm/jsep/webgpu/ops/cumsum.ts","../lib/wasm/jsep/webgpu/ops/depth-to-space.ts","../lib/wasm/jsep/webgpu/ops/einsum.ts","../lib/wasm/jsep/webgpu/ops/expand.ts","../lib/wasm/jsep/webgpu/ops/fast-gelu.ts","../lib/wasm/jsep/webgpu/ops/gather.ts","../lib/wasm/jsep/webgpu/ops/gather-block-quantized.ts","../lib/wasm/jsep/webgpu/ops/gather-elements.ts","../lib/wasm/jsep/webgpu/ops/gemm.ts","../lib/wasm/jsep/webgpu/ops/multihead-attention.ts","../lib/wasm/jsep/webgpu/ops/tile.ts","../lib/wasm/jsep/webgpu/ops/group-query-attention.ts","../lib/wasm/jsep/webgpu/ops/instance-norm.ts","../lib/wasm/jsep/webgpu/ops/layer-norm.ts","../lib/wasm/jsep/webgpu/ops/matmulnbits.ts","../lib/wasm/jsep/webgpu/ops/pad.ts","../lib/wasm/jsep/webgpu/ops/pool.ts","../lib/wasm/jsep/webgpu/ops/quantize-linear.ts","../lib/wasm/jsep/webgpu/ops/range.ts","../lib/wasm/jsep/webgpu/ops/resize.ts","../lib/wasm/jsep/webgpu/ops/rotary-embedding.ts","../lib/wasm/jsep/webgpu/ops/skip-layer-norm.ts","../lib/wasm/jsep/webgpu/ops/slice.ts","../lib/wasm/jsep/webgpu/ops/softmax.ts","../lib/wasm/jsep/webgpu/ops/split.ts","../lib/wasm/jsep/webgpu/ops/where.ts","../lib/wasm/jsep/webgpu/op-resolve-rules.ts","../lib/wasm/jsep/webgpu/program-manager.ts","../lib/wasm/jsep/backend-webgpu.ts","../lib/wasm/jsep/init.ts","../lib/wasm/wasm-core-impl.ts","../lib/wasm/proxy-wrapper.ts","../lib/wasm/session-handler-inference.ts","../lib/backend-wasm.ts","../lib/index.ts","../lib/version.ts"],"names":["backends","backendsSortedByPriority","registerBackend","tryResolveAndInitializeBackend","resolveBackendAndExecutionProviders","init_backend_impl","__esmMin","name","backend","priority","currentBackend","i","backendName","backendInfo","isInitializing","e","options","eps","backendHints","backendNames","errors","availableBackendNames","resolveResult","err","filteredEps","target","prop","init_backend","version","init_version","logLevelValue","env","init_env_impl","value","init_env","tensorToDataURL","tensorToImageData","init_tensor_conversion_impl","tensor","canvas","pixels2DContext","width","height","inputformat","norm","normMean","normBias","stride","rTensorPointer","gTensorPointer","bTensorPointer","aTensorPointer","j","R","G","B","A","image","channels","step","rImagePointer","gImagePointer","bImagePointer","aImagePointer","bufferToTensor","tensorFromImage","tensorFromTexture","tensorFromGpuBuffer","tensorFromPinnedBuffer","init_tensor_factory_impl","init_tensor_impl","buffer","outputformat","float32Data","Tensor","isHTMLImageEle","isImageDataEle","isImageBitmap","isString","data","bufferToTensorOptions","createCanvas","createCanvasContext","tempCanvas","resolve","reject","context","newImage","img","texture","download","dispose","dims","gpuBuffer","dataType","type","NUMERIC_TENSOR_TYPE_TO_TYPEDARRAY_MAP","NUMERIC_TENSOR_TYPEDARRAY_TO_TYPE_MAP","isTypedArrayChecked","checkTypedArray","init_tensor_impl_type_mapping","isBigInt64ArrayAvailable","isBigUint64ArrayAvailable","isFloat16ArrayAvailable","calculateSize","tensorReshape","init_tensor_utils_impl","size","dim","arg0","arg1","arg2","expectedTypedArrayConstructor","maybeDims","typedArrayConstructor","firstElementType","mappedType","releaseData","init_tensor","TRACE","TRACE_FUNC","TRACE_FUNC_BEGIN","TRACE_FUNC_END","init_trace","deviceType","label","msg","extraMsg","stack","hasTraceFunc","InferenceSession","init_inference_session_impl","_InferenceSession","handler","feeds","fetches","isFetchesEmpty","isFetches","arg1Keys","v","results","returnValue","key","result","arg3","filePathOrUint8Array","byteOffset","byteLength","optionsWithValidatedEPs","init_inference_session","init_tensor_conversion","init_tensor_factory","init_onnx_model","init_onnx_value","noBackendErrMsg","TrainingSession","init_training_session_impl","_TrainingSession","hasOptimizerModel","hasEvalModel","trainingOptions","sessionOptions","evalModel","optimizerModel","inputNames","outputNames","trainableOnly","array","paramsSize","init_training_session","esm_exports","__export","init_esm","init_wasm_utils_env","main_exports","main_default","WORKER_NAME","isProxyWorker","init_main","init_wasm_core_impl","init_wasm_factory","init_wasm_utils_import","ev","message","initializeWebAssembly","initRuntime","epName","initEp","bufferData","copyFromExternalBuffer","model","createSession","sessionMetadata","releaseSession","sessionId","inputIndices","inputs","outputIndices","run","outputs","o","extractTransferableBuffers","endProfiling","urlOverride","scriptSrc","origin","isSameOrigin","normalizeUrl","fallbackUrl","preload","dynamicImportDefault","createProxyWorker","importProxyWorker","importWasmModule","filename","prefixOverride","baseUrl","absoluteUrl","blob","url","isMultiThreaded","wasmModuleFilename","wasmModuleUrl","needPreload","wasm","initialized","initializing","aborted","isMultiThreadSupported","isSimdSupported","getInstance","flags","timeout","numThreads","multiThreadSupported","wasmPaths","wasmPrefixOverride","mjsPathOverrideFlag","mjsPathOverride","wasmPathOverrideFlag","wasmPathOverride","wasmBinaryOverride","objectUrl","ortWasmFactory","isTimeout","tasks","config","fileName","scriptDirectory","module","what","allocWasmString","iterateExtraOptions","checkLastError","init_wasm_utils","allocs","dataLength","dataOffset","prefix","seen","paramsOffset","errorCode","errorMessagePointer","errorMessage","setRunOptions","init_run_options","runOptionsHandle","runOptions","tagDataOffset","keyDataOffset","valueDataOffset","alloc","getGraphOptimzationLevel","getExecutionMode","appendDefaultOptions","setExecutionProviders","setSessionOptions","init_session_options","graphOptimizationLevel","executionMode","session","ep","sessionOptionsHandle","executionProviders","webgpuOptions","epNameDataOffset","logIdDataOffset","logSeverityLevel","logVerbosityLevel","optimizedModelFilePathOffset","nameOffset","tensorDataTypeStringToEnum","tensorDataTypeEnumToString","calculateTensorSizeInBytes","tensorTypeToTypedArrayConstructor","logLevelStringToEnum","isGpuBufferSupportedType","dataLocationStringToEnum","init_wasm_common","typeProto","dateType","dimsOrSize","elementSize","a","b","logLevel","location","loadFile","init_wasm_utils_load_file","file","readFile","createReadStream","stream","chunks","chunk","response","contentLengthHeader","fileSize","reader","pages","offset","done","chunkSize","logLevelPrefix","doLog","configLogLevel","debug","configureLogger","LOG","LOG_DEBUG","init_log","level","$configLogLevel","$debug","messageLevel","configLevel","args","createView","init_tensor_view","dataBuffer","init_types","bucketFreelist","bucketArr","calcNormalizedBufferSize","calcBucketBufferSize","guid","createNewGpuDataId","downloadGpuData","GpuDataManagerImpl","createGpuDataManager","init_gpu_data_manager","idx","sizeForBucket","originalSize","getTargetBuffer","bufferSize","gpuReadBuffer","commandEncoder","arrayBuffer","targetBuffer","id","srcArrayBuffer","srcOffset","srcLength","gpuDataCache","gpuBufferForUploading","sourceId","destinationId","sourceGpuDataCache","destinationGpuDataCache","previousBuffer","usage","isStorage","isUniform","buffers","gpuData","cachedData","maxInFreeList","freelist","capturedBuffers","storage","pendingBuffers","AttributeWithCacheKeyImpl","createAttributeWithCacheKey","init_attribute_with_cache_key","attribute","MatMulUtil","BroadcastUtil","ShapeUtil","PoolConvUtil","GemmUtil","MIN_CLIP","MAX_CLIP","init_util","adims","bdims","isMatMul","arank","brank","crank","cdims","cShapeMatMul","aLen","bLen","max","shape","finalShape","inputRank","finalRank","_ShapeUtil","rank","newDims","axis","start","end","strides","tensorRank","axes","x","perm","pad","shape1","shape2","_PoolConvUtil","isGlobalOperator","inputDims","kernelShape","dilations","pads","isChannelLast","autoPad","outputDims","filterDims","inSize","dilation","kernel","padHeadIndex","padTailIndex","dkernel","padNeeded","leftShape","transLeft","rightShape","transRight","biasShape","M","K","N","kDim","WORKGROUP_SIZE","getWgslMappedType","tensorTypeToWsglStorageType","tensorTypeToWsglValueType","createTensorShapeVariables","getMaxComponents","fillVector","castToF32","sumVector","getElementAt","createIndicesHelper","inputVariable","outputVariable","internalVariable","ShaderHelperImpl","createShaderHelper","getBroadcastDims","init_common","components","programUniforms","index","length","tensorType","shapeOrRank","useUniform","rankIdentity","indicesType","valueType","storageType","normalizeDim","implementationUsed","uniformPrefix","o2iSnippet","offsetToIndicesImplementation","offsetToIndices","varOffset","offsets","indicesToOffsetImplementation","indicesToOffset","varIndices","indices","init","indicesGet","indicesSet","broadcastedIndicesToOffsetImplementation","broadcastedIndicesToOffset","output","implKey","setByOffset","getByOffset","getByIndicesImplementation","getImplementation","functionParams","dimsParams","get","normalizedIndices","getByIndices","setByIndicesImplementation","setImplementation","impls","needShapeStrides","impl","indicesAndValue","normalizedDispatchGroup","limits","workgroupSize","workgroupSizeX","workgroupSizeY","workgroupSizeZ","is1DimensionDispatch","paramList","globalIdxDefinition","variable","bindingIndex","access","variables","additionalUniforms","uniformSnippets","typeTemp","uniformWgslTypeToDataType","u","dispatchGroup","inShape","outShape","inRank","validateInputs","getAdjustedPerm","getOutputShape","permFunctionBody","squeezeShape","createTransposeProgramInfo","transpose","parseTransposeAttributes","init_transpose","inputShape","input","reverseFunc","adjustedPerm","newShape","newPerm","inputTensor","permAttr","inputDataType","outputShape","channelsLast","channelsFirst","useShared","newInputShape","newOutputShape","tileSize","getShaderSource","shaderHelper","outputSize","attributes","reduceOps","reduceSharedOps","reduceInitValues","reduceOutputValues","getInnerMostAxes","computeOutAndReduceShapes","expandShapeToKeepDim","areAxesInnerMostDims","getAxesPermutation","createReduceSharedProgramInfo","reduceCommon","reduceMeanShared","reduceL1Shared","reduceL2Shared","reduceLogSumExpShared","reduceMaxShared","reduceMinShared","reduceProdShared","reduceSumShared","reduceSumSquareShared","reduceLogSumShared","init_reduce_shared","init_reduce","numInnerAxes","res","reduceShape","expandShape","shapeIdx","shaderCache","reduceType","outputDataType","reduceSize","sharedMemorySnippet","updatedAttributes","createReduceAttributesFromInputs","updatedAxes","_dim","normalizeAxes","permutedAxes","finalOutputShape","noOp","createReduceProgramInfo","runReduceProgram","reduceLogSumNaive","reduceL1Naive","reduceL2Naive","reduceLogSumExpNaive","reduceMaxNaive","reduceMeanNaive","reduceMinNaive","reduceProdNaive","reduceSumNaive","reduceSumSquareNaive","useNaiveReduceMethod","reduceMean","reduceL1","reduceL2","reduceLogSumExp","reduceMax","reduceMin","reduceProd","reduceSum","reduceSumSquare","reduceLogSum","reduceOp","axesInput","keepDims","noopWithEmptyAxes","reduceOnAllAxes","d","outputRank","idxCopy","ops","k","l","_output","idxZero","argMin","argMax","parseArgMinMaxAttributes","init_argminmax","argMinMaxOp","validateAttentionInputs","createInPlaceSoftmaxProgramInfo","createAttentionProbsProgramInfo","createVxAttentionScoreProgramInfo","applyAttention","prepare","attention","init_attention","weights","bias","maskIndex","past","attentionBias","batchSize","sequenceLength","inputHiddenSize","qHiddenSize","kHiddenSize","vHiddenSize","sz","kvSequenceLength","pastSequenceLength","totalSequenceLength","maxSequenceLength","maskType","n","WG","dComp","elementsPerThread","f32Type","inputDependencies","inputHelper","elemValueType","uniforms","outputCount","q","pastKey","parameters","probsShape","presentKey","presentKeyShape","alpha","vectorizedHeadSize","TILE_SIZE","dispatch","feedPastKey","qInput","kInput","inputVars","pastKeyInput","outputVars","probs","pastValue","params","nReps","repeatedVHiddenSize","presentValue","presentValueShape","feedPastValue","probsHelper","vHelper","_maskIndex","_past","attentionBiasInput","inputsK","inputsV","outputQ","outputK","outputV","weight","createBatchNormInferenceProgramInfo","parseBatchNormAttributes","batchNorm","init_batch_norm","checkShapeEqual","actual","expected","r","epsilon","spatial","format","yShape","cComponents","useShapesUniforms","scale","inputMean","inputVar","y","calcCOffset","cOffset","getInferenceModeShaderSource","helper","createBiasAddProgramInfo","biasAdd","init_bias_add","residual","createElementwiseProgramShader","createElementwiseProgramInfo","abs","acos","acosh","asin","asinh","atan","atanh","parseCastAttributes","cast","generateClipAttributesFromInputs","clip","ceil","cos","cosh","parseAlphaAttributes","elu","erfImpl","erf","exp","floor","gelu","leakyRelu","not","neg","reciprocal","relu","sigmoid","parseHardSigmoidAttributes","hardSigmoid","sin","sinh","sqrt","tan","tanhExpression","tanh","fastGeluImpl","fastGeluExpression","fastGelu","thresholdedRelu","log","quickGeluImpl","quickGeluExpression","quickgelu","init_unary_op","datasize","funcCall","additionalImplementation","additionalUniformsType","vecSize","expression","cacheKey","inputTensors","func","min","hasMin","hasMax","clipAttributes","varType","dType","createBiasSplitGeluProgramInfo","biasSplitGelu","init_bias_split_gelu","createBinaryOpProgramShader","createBinaryOpProgramInfo","runBinaryOp","add","div","equal","mul","pow","sub","greater","less","greaterOrEqual","lessOrEqual","init_binary_op","dimsA","dimsB","dimsOutput","vectorize","doBroadcast","sharedDimensionDivisibleBy4","typeA","typeB","typeOutput","expressionScalar","expressionVector","assignment","isAOneElement","isBOneElement","aLastDimDivisibleBy4","bLastDimDivisibleBy4","singleAssignment","resStr","typeCast","expressionA","expressionB","isBroadcast","cacheKeyAux","calculatedShape","sharedDimension","dimA","dimB","calculateInputIndexImpl","assignOutputData","createConcatProgramInfo","concat","parseConcatAttributes","init_concat","referenceIndex","referenceInput","inputType","numberOfTensors","sizeInConcatAxisStr","codeLines","returnSnippet","adjustedAxis","sizeInConcatAxis","previousSum","inputRanks","indicesAxis","sum","nonEmptyInputs","getActivationSnippet","appendActivationUniformsData","appendActivationUniforms","parseInternalActivationAttributes","init_fuse_utils","baseType","programUniform","activation","beta","clipMin","clipMax","typeSnippet","biasSnippet","init_activation_util","component","hasBias","utilFunctions","init_conv_util","strideStr","writeDataToSubAVec4Snippet","calculateResultSnippet","makeMatMulPackedVec4Source","writeDataToSubASnippet","readDataFromSubASnippet","makeMatMulPackedSource","matMulReadWriteFnSource","createMatmulProgramInfo","init_matmul_packed_webgpu","batchDims","transposeA","innerElementSize","workPerThread","tileInner","splitK","splitedDimInner","tileAOuter","tileBOuter","tileAWidth","tileAHight","rowPerThreadB","sequentialAccessByThreads","rowPerThreadA","colPerThreadA","matmulSnippet","applyActivation","batchShapes","isChannelsLast","batchAShape","batchBShape","batchShape","batchVariable","aVariable","bVariable","broadCastADims","broadCastBDims","getAIndices","aRank","batchRank","getBIndices","bRank","activationAttributes","reshapedOutputShape","squeezeOutputShapeFunction","aShape","bShape","outerDimsA","outerDimsB","outerDims","dimAOuter","dimInner","dimBOuter","isVec4","aShapeTemp","bShapeTemp","outputShapeTemp","inputVariables","biasComponents","declareFunctions","conv2dCommonSnippet","createConv2DMatMulProgramInfo","init_conv2d_mm_webgpu","fitAOuter","fitBOuter","fitInner","addBias","innerElementSizeX","innerElementSizeW","getXSnippet","getWSnippet","coordASnippet","coordResSnippet","xHeight","xWidth","row","col","readXSnippet","sampleX","sampleW","resType","aType","bType","inChannels","outWidth","outHeight","outChannels","dispatchX","dispatchY","workGroupSize","elementsSize","t","w","arrayProduct","parse3TupleParam","getEffectiveFilterSize","computeDefaultPad","computeOutputShape4D","get3DPadAndOutInfo","computeConv3DInfo","createConv3DNaiveProgramInfo","init_conv3d_naive_webgpu","arr","product","param","filterSize","fieldSize","effectiveFieldSize","filterShape","zeroPad","inDepth","inHeight","inWidth","strideDepth","strideHeight","strideWidth","filterDepth","filterHeight","filterWidth","padInfo","outDepth","val","_","padAlongDepth","padAlongHeight","padAlongWidth","front","back","top","bottom","left","right","depthwise","dataFormat","filterChannels","dilationDepth","dilationHeight","dilationWidth","effectiveFilterDepth","effectiveFilterHeight","effectiveFilterWidth","dispatchLayout","createGroupedConvProgramInfo","createGroupedConvVectorizeProgramInfo","init_conv_grouped","processBias","xShape","wShape","outputChannels","outputChannelsPerGroup","calculateResult","outputNumber","outputShapeInShader","xNumber","createNaiveMatmulProgramInfo","matMul","init_matmul","aComponents","getIndices","broadCastDims","calcResult","calcStr","calculateOutputShape","weightTransposeAttribute","getAdjustedConvAttributes","parseConvAttributes","conv2d","conv1d","conv3d","conv","init_conv","adjustPads","inputSpatialShape","spatialRank","dilatedKernelShape","dataChannel","filterInChannel","newAttributes","group","wIsConst","convInputs","transposedWeight","inputHeight","inputWidth","inputChannels","weightHeight","weightWidth","sameSize","batch","xReshaped","wReshaped","matmulOutputShape","matmulInputs","sharedDim","adjustedAttributes","convInfo","conv2dTransposeCommonSnippet","createConv2DTransposeMatMulProgramInfo","init_conv_backprop_mm_webgpu","readASnippet","sampleA","effectiveFilterDims","elemType","createConvTranspose2DOpProgramShaderSource","createConvTranspose2DProgramInfo","init_conv_backprop_webgpu","rowDim","colDim","channelDim","dy","codeSnippet4","codeSnippet","inputChannelsPerGroup","computeTotalPad","distributePadding","calculateOutputShapeAndPads","getAdjustedConvTransposeAttributes","parseConvTransposeAttributes","weightTransposePerm","convTranspose2d","convTranspose1d","convTranspose","init_conv_transpose","inDim","adj","outSize","totalPad","head","tail","smallPad","outputPadding","updateOutputShape","featureMaps","convTransposeInputs","createCumsumProgramInfo","cumsum","parseCumSumAttributes","init_cumsum","axisInput","axisValue","lowerLimit","upperLimit","exclusive","reverse","createDepthToSpaceProgramInfo","depthToSpace","parseDepthToSpaceAttributes","init_depth_to_space","h","c","blocksize","isDCRmode","reshapedInputTensor","reshapedInputRank","reshapedInput","permedOutput","shapeBeforePerm","shapeAfterPerm","symbolPattern","termPattern","termPatternOnly","lhsPattern","lhsPatternOnly","EinsumTerm","EinsumEquation","appendMax","createEinsumProgramInfo","einsum","parseEinsumAttributes","init_einsum","inputIndex","symbol","equation","lhs","rhs","inputTerm","einsumTerm","sym","info","dimValue","term","isInput","ellipsis","ellipsisDims","nextDim","indexSymbols","ellipsisDimLength","inputShapes","einsumEquation","uniformsSymbols","initProd","initSum","updateSum","reduceOpsSetIndices","reduceOpsLoopHeaders","reduceOpsLoopFooters","reduceOpCompute","isReduceOpsWithoutLoop","outputIndex","_var","programUniformsInit","acc","inputProgramUniforms","getAdjustedShape","createExpandProgramInfo","expand","init_expand","shapeIndex","inputShapeIndex","diff","createFastGeluProgramInfo","init_fast_gelu","biasLength","useVec4","singleElementBias","biasGetExpression","createGatherProgramInfo","parseGatherAttributes","gather","init_gather","indicesShape","axisDimLimit","calcDataIndices","indicesRank","createGatherBlockQuantizedProgramInfo","gatherBlockQuantized","parseGatherBlockQuantizedAttributes","init_gather_block_quantized","quantizeAxis","blockSize","scales","zeroPoint","gatherAxis","outputType","isSigned","_v","_i","createGatherElementsProgramInfo","parseGatherElementsAttributes","gatherElements","init_gather_elements","inputOutputDataType","indicesDataType","createGemmProgramInfo","parseGemmAttributes","gemm","init_gemm","line","calculateAlpha","transA","transB","getInput","parseMultiHeadAttentionAttributes","addBiasTranspose","maybeTransposeToBNSHAndAddBias","multiHeadAttention","init_multihead_attention","query","keyPaddingMask","hiddenSize","headSize","qkvFormat","maskDims","passPastInKv","broadcastResPosBias","qkv","biasOffset","qkvInput","biasInput","numHeads","kvBNSH","Q","V","getRepeats","createTileProgramInfo","tile","init_tile","repeatsTensorView","repeats","parseGroupQueryAttentionAttributes","maybeExpandAndTransposeToBNSH","groupQueryAttention","init_group_query_attention","dmmhaPacking","hasPastKey","hasPastValue","isPastkvBSNH","presentSequenceLength","inputA","inputB","H","pastStr","newStr","concatStr","pastKV","computeChannelScaleShift","createInstanceNormProgramInfo","createInstanceNormNHWCProgramInfo","instanceNorm","init_instance_norm","wgType","unitsOfWork","s","C","channelScaleShift","scaleShape","transposedXPerm","transposedX","scaleType","scaleData","num","outputHelper","createLayerNormProgramInfo","layerNorm","init_layer_norm","simplified","normCount","normSize","scaleSize","biasSize","meanInvStdDevDim","hasMeanDataOutput","hasInvStdOutput","createMatMulNBitsProgramInfo","matMulNBits","parseMatMulNBitsAttributes","init_matmulnbits","nBlocksPerCol","blobSize","scalesShape","zeroPointsShape","expectedZeroPointsSize","blobSizeInWords","bComponents","dispatchSize","inputShapeTemp","zeroPoints","qDqDataType","processOneWord","prepareScaleAndZeroPoint","prepareBData","getPadConstant","getPadReflect","getPadEdge","getPadWrap","getPadSnippet","createPadProgramInfo","createPadAttributesFromInputs","init_pad","validPads","padsLength","block","isValueFromInput","padSnippet","bigInt64Pads","updatePads","getAdjustedPoolAttributesAndOutputShape","getUniformAndPadInfo","generatePoolingCode","createShaderKeyFromAttributes","createAveragePoolShaderKeyFromAttributes","createMaxPoolShaderKeyFromAttributes","parsePoolCommonAttributes","createAveragePoolProgramInfo","parseAveragePoolAttributes","averagePool","globalPoolAttributes","parseGlobalAveragePoolAttributes","globalAveragePool","createMaxPoolProgramInfo","maxPool","parseMaxPoolAttributes","parseGlobalMaxPoolAttributes","globalMaxPool","init_pool","inputShapeAsChannelFirst","hasDilations","outputShapeAsChannelFirst","outputShapeAsChannelLast","kernelSize","kw","sw","pwStart","pwEnd","pwStartEndNotZero","phStartEndNotZero","kh","sh","phStart","phEnd","kernelStrides","hasPads","cur","outputShapeRank","op1","op2","codeW","codeH","codeHEnd","dimIdxW","dimIdxH","stridesRank","padsRank","padCode","countIncludePad","attr","averagePoolAttributes","storageOrder","maxPoolAttributes","createDequantizeLinearProgramInfo","dequantizeLinear","parseDequantizeLinearAttributes","init_quantize_linear","dI","si","isPacked","zeroPointInput","zeroPointShape","perLayerQuantization","perAxisQuantization","maxComponents","useComponents","inputComponent","validateInputsContent","createRangeProgramInfo","range","init_range","limit","delta","sameStartLimit","increasingRangeNegativeStep","decreasingRangePositiveStep","numElements","wgslType","validateScales","updateScales","getOriginalCoordinateFromResizedCoordinate","getNearestPixelFromOriginal","updateRoI","initOutputShape","adjustOutputShape","calculateOriginalIndicesFromOutputIndices","calculateInputIndicesFromOutputIndices","checkInputIndices","setChannelAndBatchIndices","bilinearInterpolation","bicubicInterpolation","trilinearInterpolation","createResizeProgramInfo","getOpsetVersionFromCustomDataBuffer","resize","parseResizeAttributes","init_resize","newScales","opsetVersion","sizes","roi","roiInputIndex","scalesInputIndex","sizesInputIndex","coordinateTransferMode","nearestMode","roiTmp","roiLocal","scaleInPolicy","adjustedOutputShape","scalesLength","roiLength","useExtrapolation","channelIdx","batchIdx","spacialDims","extrapolationValue","heightIdx","widthIdx","cubicCoeffA","excludeOutside","is2D","isNchw","createCubicInterpolationFunction","direction","depthIdx","scalesInput","roiInput","noScale","customDataBuffer","antialias","coordinateTransformMode","keepAspectRatioPolicy","mode","createRotaryEmbeddingProgramInfo","rotaryEmbedding","init_rotary_embedding","positionIds","cosCache","sinCache","rotaryEmbeddingDim","interleaved","batchStride","halfRotaryEmbeddingDim","globalShape","globalStrides","createSkipLayerNormProgramInfo","skipLayerNorm","init_skip_layer_norm","skip","gamma","isTraining","inputSize","hasBetaInput","hasBiasInput","hasMeanOutput","hasInvStdDevOutput","hasInputSkipBiasSumOutput","uniformsArray","vecDataType","_input","_index","readInput","createSliceAttributesFromInputs","fixStartEndValues","calculateInputIndicesImpl","createSliceProgramInfo","slice","parseSliceAttributes","init_slice","starts","ends","steps","newValue","signs","numSteps","newEnd","newStart","outputTensorInfo","createSoftmaxProgramInfo","softmax","parseSoftmaxAttributes","init_softmax","cols","rows","packedCols","maxVector","threadMaxDecl","createSplitAttributesFromInputs","calculateOutputIndexImpl","writeBufferDataImpl","createSplitProgramInfo","split","parseSplitAttributes","init_split","splitSizes","numOutputs","sizeInSplitAxis","outputsTensorInfo","outputShapes","createWhereOpProgramShader","createWhereOpProgramInfo","where","init_where","expressionC","dimsC","WEBGPU_OP_RESOLVE_RULES","init_op_resolve_rules","ProgramManager","init_program_manager","artifact","buildArtifact","uniformBufferBinding","device","computePassEncoder","entries","bindGroup","commandInfo","programInfo","normalizedDispatchGroupSize","extensions","userCode","code","shaderModule","computePipeline","z","limitPerDimension","dispatchAverage","getProgramInputTensorInfoDependencyKey","getProgramInfoUniqueKey","AdapterInfoImpl","WebGpuBackend","init_backend_webgpu","inputInfos","adapterInfo","architecture","vendor","adapter","requiredFeatures","deviceDescriptor","computePassDescriptor","queryReadBuffer","mappedData","pendingKernels","pendingKernelInfo","kernelId","kernelInfo","kernelType","kernelName","programName","inputTensorViews","outputTensorViews","startTimeU64","endTimeU64","startTime","endTime","program","createKernelOutput","createIntermediateOutput","inputDatas","validatedOutputIndices","outputDatas","isTemporary","isPersistent","tensorView","persistentData","currentOffset","sizeOfElement","sizeOfVecOrMat","baseAlignment","elementPerVecOrMat","maxAlignmentOfField","uniformBufferData","uniform","actualType","actualLength","gpuDataId","src","dst","ptr","op","kernelEntry","useErrorScope","sessionInputOutputMapping","bufferInfo","sessionCommandList","sessionPendingKernels","command","init_exports","TensorViewImpl","ComputeContextImpl","init_init","_TensorViewImpl","elementCount","contextDataOffset","heapU32","dataIndex","inputCount","inputsOutputsMapping","mappedInputs","createTemporaryOutput","gpuAdapter","jsepInit","isSourceGpu","sessionHandle","initOrt","activeSessions","getSessionInputOutputCount","prepareInputOutputTensor","loggingLevel","initJsep","powerPreference","forceFallbackAdapter","modelDataOffset","modelData","modelDataLength","ioBindingHandle","inputNamesUTF8Encoded","outputNamesUTF8Encoded","loadingPromises","path","provider","webnnOptions","gpuDevice","enableGraphCapture","outputPreferredLocations","nameString","bindingState","buf","ioBindingState","tensorHandles","rawData","dataByteLength","registerBuffer","dimsOffset","dimIndex","outputTensors","inputOutputBound","runOptionsAllocs","inputTensorHandles","outputTensorHandles","inputOutputAllocs","beforeRunStack","inputValuesOffset","inputNamesOffset","outputValuesOffset","outputNamesOffset","inputValuesIndex","inputNamesIndex","outputValuesIndex","outputNamesIndex","handle","outputPreferredLocationsEncoded","beforeGetTensorDataStack","tensorDataOffset","keepOutputTensor","tensorDataIndex","dimsLength","preferredLocation","stringData","maxBytesToRead","getBuffer","p","profileFileName","tensors","isProxy","proxyWorker","temporaryObjectUrl","initWasmCallbacks","queuedCallbacks","enqueueCallbacks","ensureWorker","onProxyWorkerMessage","initializeWebAssemblyAndOrtRuntime","initializeOrtEp","init_proxy_wrapper","callbacks","queue","worker","transferable","serializableInputs","encodeTensorMetadata","decodeTensorMetadata","OnnxruntimeWebAssemblySessionHandler","init_session_handler_inference","getName","pathOrBuffer","inputArray","kvp","outputArray","resultMap","backend_wasm_exports","OnnxruntimeWebAssemblyBackend","initializeFlags","wasmBackend","init_backend_wasm","numCpuLogicalCores","lib_default"],"mappings":"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