UNPKG

onnxruntime-web

Version:

A Javascript library for running ONNX models on browsers

1 lines 1.49 MB
{"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/index.ts","../lib/wasm/wasm-utils-env.ts","../lib/wasm/proxy-worker/main.ts","ort-wasm-simd-threaded.jsep.mjs","../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/util.ts","../lib/wasm/jsep/tensor-view.ts","../lib/wasm/jsep/webnn/tensor-manager.ts","../lib/wasm/jsep/backend-webnn.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/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/matmul-shaders.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/conv.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-nd.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/grid-sample.ts","../lib/wasm/jsep/webgpu/ops/multihead-attention.ts","../lib/wasm/jsep/webgpu/ops/split.ts","../lib/wasm/jsep/webgpu/ops/rotary-embedding.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/matmul.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/scatter-nd.ts","../lib/wasm/jsep/webgpu/ops/resize.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/tile.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","tensorFromMLTensor","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","mlTensor","type","NUMERIC_TENSOR_TYPE_TO_TYPEDARRAY_MAP","NUMERIC_TENSOR_TYPEDARRAY_TO_TYPE_MAP","isTypedArrayChecked","checkTypedArray","init_tensor_impl_type_mapping","isBigInt64ArrayAvailable","isBigUint64ArrayAvailable","Float16Array","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","TRACE_EVENT_BEGIN","TRACE_EVENT_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","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","ort_wasm_simd_threaded_jsep_exports","ort_wasm_simd_threaded_jsep_default","r","init_ort_wasm_simd_threaded_jsep","n","a","t","l","u","s","f","Br","Ur","d","b","y","m","c","H","p","C","_","h","g","N","w","O","T","W","S","E","x","k","M","D","V","P","F","I","L","U","$","En","pi","mn","mi","Nr","z","fn","Ci","wr","cn","Y","un","q","J","Q","X","K","Z","ln","on","hi","gi","Oi","Ti","Wi","Si","Ei","xi","Ri","ki","Mi","Di","Hi","Bi","Pi","Ii","qi","Qi","ar","or","lr","ur","dr","_r","hr","Ar","jr","Tr","Wr","Sr","Er","kr","Mr","Vr","qr","Xr","Zi","Kr","ie","ne","ae","te","oe","le","ue","se","fe","de","be","ye","me","Ce","_e","he","Ae","we","je","We","xe","Re","ke","Oe","Me","De","He","Ne","Be","Pe","Fe","Ue","$e","qe","Je","ui","Qe","Xe","Ke","rn","oi","ii","ri","ei","ni","si","vi","ci","fi","bi","ai","ti","wn","Nn","vn","gn","li","di","yi","pn","dn","An","jn","Cn","_i","Ai","Ni","wi","ji","Fi","Gi","Li","Ui","$i","zi","Vi","Yi","Ji","Xi","Ki","ir","rr","er","nr","tr","sr","fr","bn","yn","br","yr","mr","cr","vr","pr","Cr","gr","hn","Or","tn","an","xr","sn","Rr","Dr","Hr","Pr","Fr","Ir","Gr","Lr","$r","zr","Wn","On","Sn","Yr","Jr","Qr","Zr","re","ee","ce","ve","pe","ge","_n","Te","Se","Ee","Ie","Ge","Le","ze","Ve","Ye","Ze","en","nn","Tn","origin","isEsmImportMetaUrlHardcodedAsFileUri","getScriptSrc","inferWasmPathPrefixFromScriptSrc","isSameOrigin","normalizeUrl","fallbackUrl","preload","dynamicImportDefault","createProxyWorker","importProxyWorker","embeddedWasmModule","importWasmModule","URL2","filename","prefixOverride","baseUrl","absoluteUrl","blob","url","isMultiThreaded","isWasmOverridden","useEmbeddedModule","wasmModuleFilename","wasmModuleUrl","needPreload","wasm","initialized","initializing","aborted","isMultiThreadSupported","isSimdSupported","isRelaxedSimdSupported","getInstance","flags","timeout","numThreads","multiThreadSupported","wasmPaths","wasmPrefixOverride","mjsPathOverrideFlag","mjsPathOverride","wasmPathOverrideFlag","wasmPathOverride","wasmBinaryOverride","objectUrl","ortWasmFactory","isTimeout","tasks","config","fileName","inferredWasmPathPrefix","module","what","allocWasmString","iterateExtraOptions","checkLastError","init_wasm_utils","allocs","dataLength","dataOffset","prefix","seen","ptrSize","paramsOffset","errorCode","errorMessagePointer","errorMessage","setRunOptions","init_run_options","runOptionsHandle","runOptions","tagDataOffset","keyDataOffset","valueDataOffset","alloc","getGraphOptimzationLevel","getExecutionMode","appendDefaultOptions","appendSessionConfig","setExecutionProviders","setSessionOptions","init_session_options","graphOptimizationLevel","executionMode","session","ep","sessionOptionsHandle","executionProviders","epOptions","webgpuOptions","epNameDataOffset","epOptionsCount","keysOffset","valuesOffset","sessionOptions","logIdDataOffset","logSeverityLevel","logVerbosityLevel","optimizedModelFilePathOffset","nameOffset","tensorDataTypeStringToEnum","tensorDataTypeEnumToString","calculateTensorSizeInBytes","tensorTypeToTypedArrayConstructor","logLevelStringToEnum","isGpuBufferSupportedType","isMLTensorSupportedType","dataLocationStringToEnum","init_wasm_common","typeProto","dateType","dimsOrSize","elementSize","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","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","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","kDim","createView","init_tensor_view","dataBuffer","webnnDataTypeToSize","convertDataToInt32","convertInt32ToData","tensorGuid","createNewTensorId","webnnDataTypeToFallback","calculateByteLength","TensorWrapper","TensorIdTracker","TensorManagerImpl","createTensorManager","init_tensor_manager","dataTypeSize","bytesPerElement","numElements","originalArray","int32Array","bigInt64Array","bigUint64Array","int8Array","uint32Array","descriptor","fallbackDataType","dstBuffer","originalData","isConverted","tensorManager","wrapper","copyOld","usage","newData","dstData","tensorId","tensorTracker","writable","readable","index","tensorWrapper","onnxDataTypeToWebnnDataType","compareMLContextOptions","WebNNBackend","init_backend_webnn","aKeys","bKeys","tensorIds","optionsOrDevice","mlContextIndex","entry","mlContext","sessionIds","onnxDataType","dimensions","webnnDataType","id","externalFilePath","builder","desc","mountedFiles","shouldConvertInt64ToInt32","filePath","fileData","bufferView","int32Buffer","inputName","outputName","inputNames","outputNames","isInput","init_types","bucketFreelist","bucketArr","calcNormalizedBufferSize","calcBucketBufferSize","guid","createNewGpuDataId","downloadGpuData","GpuDataManagerImpl","createGpuDataManager","init_gpu_data_manager","idx","sizeForBucket","originalSize","getTargetBuffer","bufferSize","gpuReadBuffer","commandEncoder","arrayBuffer","targetBuffer","srcArrayBuffer","srcOffset","srcLength","gpuDataCache","gpuBufferForUploading","sourceId","destinationId","sourceGpuDataCache","destinationGpuDataCache","previous","isStorage","isUniform","buffers","gpuData","idInput","cachedData","maxInFreeList","freelist","capturedBuffers","storage","pendingBuffers","AttributeWithCacheKeyImpl","createAttributeWithCacheKey","init_attribute_with_cache_key","attribute","WORKGROUP_SIZE","getWgslMappedType","tensorTypeToWsglStorageType","tensorTypeToWsglValueType","createTensorShapeVariables","getMaxComponents","fillVector","castToF32","sumVector","getElementAt","createIndicesHelper","inputVariable","outputVariable","atomicOutputVariable","internalVariable","ShaderHelperImpl","createShaderHelper","init_common","components","programUniforms","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","dispatchGroup","validateInputs","getAdjustedPerm","getOutputShape","permFunctionBody","squeezeShape","isTransposeReshape","createTransposeProgramInfo","transpose","parseTransposeAttributes","init_transpose","inputShape","input","reverseFunc","adjustedPerm","newShape","newPerm","lastPermutedAxis","inputTensor","permAttr","inputDataType","outputShape","newInputShape","newOutputShape","transposeAsReshape","getShaderSource","shaderHelper","outputSize","channelsLast","channelsFirst","tileSize","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","cacheKey","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","shaderCache","reduceOp","axesInput","keepDims","noopWithEmptyAxes","reduceOnAllAxes","outputRank","idxCopy","ops","_output","idxZero","argMin","argMax","parseArgMinMaxAttributes","init_argminmax","argMinMaxOp","validateAttentionInputs","initVarStub","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","seqLensInput","totalSequenceLengthInput","initPastSequenceLength","numHeads","seqLens","WG","totalSequenceLengthComp","elementsPerThread","f32Type","inputDependencies","inputHelper","inputHelpers","seqLensInputHelper","totalSequenceLengthInputHelper","elemValueType","uniforms","outputCount","pastKey","parameters","probsShape","presentKey","kvNumHeads","presentKeyShape","nReps","alpha","vectorizedHeadSize","TILE_SIZE","dispatch","feedPastKey","qInput","kInput","inputVars","pastKeyInput","seqLensInputVariable","totalSequenceLengthInputVariable","outputVars","probs","pastValue","params","repeatedVHiddenSize","presentValue","presentValueShape","feedPastValue","probsHelper","vHelper","_maskIndex","_past","attentionBiasInput","inputsK","inputsV","outputQ","outputK","outputV","weight","createBatchNormInferenceProgramInfo","parseBatchNormAttributes","batchNorm","init_batch_norm","checkShapeEqual","actual","expected","epsilon","spatial","format","yShape","cComponents","useShapesUniforms","scale","inputMean","inputVar","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","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","aDims","bDims","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","convertOutputBatchIndicesToInputBatchIndices","createNaiveMatmulProgramInfo","init_matmul_shaders","targetIndicesName","inputBatchRank","outputBatchRank","batchIndicesName","extendingInputRank","activationAttributes","reshapedOutputShape","isChannelsLast","squeezeOutputShapeFunction","aShape","bShape","aComponents","outputNumber","outerDims","outputShapeInShader","batchDims","applyActivation","inputVariables","processBias","biasComponents","calcResult","calcStr","writeDataToSubAVec4Snippet","calculateResultSnippet","makeMatMulPackedVec4Source","writeDataToSubASnippet","readDataFromSubASnippet","makeMatMulPackedSource","matMulReadWriteFnSource","createMatmulProgramInfo","init_matmul_packed_webgpu","transposeA","innerElementSize","workPerThread","tileInner","splitK","splitedDimInner","tileAOuter","tileBOuter","tileAWidth","tileAHight","rowPerThreadB","sequentialAccessByThreads","rowPerThreadA","colPerThreadA","matmulSnippet","batchVariable","aVariable","bVariable","outerDimsA","outerDimsB","dimAOuter","dimInner","dimBOuter","isVec4","aShapeTemp","aRank","bShapeTemp","bRank","outputShapeTemp","batchRank","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","arrayProduct","parse3TupleParam","getEffectiveFilterSize","computeDefaultPad","computeOutputShape4D","get3DPadAndOutInfo","computeConv3DInfo","createConv3DNaiveProgramInfo","init_conv3d_naive_webgpu","arr","product","param","filterSize","fieldSize","effectiveFieldSize","inShape","filterShape","zeroPad","outShape","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","xShape","wShape","outputChannels","outputChannelsPerGroup","calculateResult","xNumber","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","createConvTranspose2DProgramInfo","init_conv_backprop_webgpu","inputChannelsPerGroup","packInputAs4","inputChannelsPerGroupInt","inputChannelsRemainder","bComponents","effectiveFilterDims","rowDim","colDim","channelDim","dy","calculateRemainder","codeSnippet","computeTotalPad","distributePadding","calculateOutputShapeAndPads","getAdjustedConvTransposeAttributes","parseConvTransposeAttributes","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","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","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","isBoolOrScalar","iComponents","createFastGeluProgramInfo","init_fast_gelu","biasLength","useVec4","singleElementBias","biasGetExpression","createGatherProgramInfo","parseGatherAttributes","gather","init_gather","indicesShape","axisDimLimit","calcDataIndices","indicesRank","computeSliceOffsets","gatherND","parseGatherNDAttributes","init_gather_nd","indicesData","sizesFromSliceDimsData","numSlices","numSlicesPerBatch","inputBatchStride","numSliceDims","sliceSize","numBatches","sizesFromSliceDims","runningProduct","inputSliceOffsets","lastIndicesDimension","createGatherBlockQuantizedProgramInfo","gatherBlockQuantized","parseGatherBlockQuantizedAttributes","init_gather_block_quantized","quantizeAxis","blockSize","scales","zeroPoint","gatherAxis","outputType","isSigned","_v","createGatherElementsProgramInfo","parseGatherElementsAttributes","gatherElements","init_gather_elements","inputOutputDataType","indicesDataType","createGemmProgramInfo","parseGemmAttributes","gemm","init_gemm","numTileN","numTileM","useShared","line","calculateAlpha","getShaderSourceShared","fillWorkgroupMemory","transA","transB","idxN","idxC","idxH","idxW","gsGetCubicCoeffs","gsBicubicInterpolate","gsDenormalize","gsReflect","pixelAtGrid","computePixel","createGridSampleProgramInfo","gridSample","parseGridSampleAttributes","init_grid_sample","gridShape","grid","getInput","parseMultiHeadAttentionAttributes","addBiasTranspose","maybeTransposeToBNSHAndAddBias","multiHeadAttention","init_multihead_attention","query","keyPaddingMask","hiddenSize","headSize","qkvFormat","maskDims","passPastInKv","broadcastResPosBias","qkv","biasOffset","qkvInput","biasInput","kvBNSH","createSplitAttributesFromInputs","calculateOutputIndexImpl","writeBufferDataImpl","createSplitProgramInfo","split","parseSplitAttributes","init_split","splitSizes","numOutputs","inputSize","sizeInSplitAxis","outputsTensorInfo","outputShapes","createRotaryEmbeddingProgramInfo","rotaryEmbedding","init_rotary_embedding","positionIds","cosCache","sinCache","rotaryEmbeddingDim","interleaved","batchStride","halfRotaryEmbeddingDim","globalShape","globalStrides","maybeTransposeToBNSH","generatePositionIdsProgramInfo","groupQueryAttention","init_group_query_attention","dmmhaPacking","packedQKV","hasPastKey","hasPastValue","seqlLens","totalSeqLen","totalSeqLenInputHelper","positionIdsHelper","splitAttributes","qRotary","kRotary","posIds","qRotaryEmbeddingAttributes","kRotaryEmbeddingAttributes","computeChannelScaleShift","createInstanceNormProgramInfo","createInstanceNormNHWCProgramInfo","instanceNorm","init_instance_norm","wgType","unitsOfWork","channelScaleShift","scaleShape","needTranspose","transposedXPerm","transposedX","scaleType","scaleData","num","outputHelper","createLayerNormProgramInfo","layerNorm","init_layer_norm","simplified","normCount","normSize","scaleSize","biasSize","meanInvStdDevDim","hasMeanDataOutput","hasInvStdOutput","matMul","init_matmul","batchA","batchB","reshapedA","reshapedB","createMatMulNBitsProgramInfo","createMatMulNBitsBlockSize32ProgramInfo","matMulNBits","parseMatMulNBitsAttributes","init_matmulnbits","nBlocksPerCol","blobSize","scalesShape","zeroPointsShape","expectedZeroPointsSize","blobSizeInWords","dispatchSize","inputShapeTemp","zeroPoints","qDqDataType","processOneWord","prepareScaleAndZeroPoint","prepareBData","workgroupY","workgroupX","aLengthPerTile","blocksPerTile","readA","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","isPacked","zeroPointInput","zeroPointShape","perLayerQuantization","perAxisQuantization","maxComponents","useComponents","inputComponent","validateInputsContent","createRangeProgramInfo","range","init_range","limit","delta","sameStartLimit","increasingRangeNegativeStep","decreasingRangePositiveStep","wgslType","atomicReductionSnippet","createScatterNDProgramInfo","parseScatterNDAttributes","scatterND","init_scatter_nd","reduction","ptr","floatStart","floatEnd","lastIndexDimension","numUpdatesElements","updates","validateScales","updateScales","getSafeIntegerDivision","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","createSkipLayerNormProgramInfo","skipLayerNorm","init_skip_layer_norm","skip","gamma","isTraining","hasBetaInput","hasBiasInput","hasMeanOutput","hasInvStdDevOutput","hasInputSkipBiasSumOutput","uniformsArray","vecDataType","_input","_index","readInput","createSliceAttributesFromInputs","fixStartEndValues","calculateInputIndicesImpl","createSliceProgramInfo","slice","parseSliceAttributes","init_slice","starts","ends","steps","newValue","signs","array","numSteps","newEnd","newStart","outputTensorInfo","createSoftmaxProgramInfo","softmax","parseSoftmaxAttributes","init_softmax","isTransposeRequired","transposedInput","transposedInputShape","cols","rows","packedCols","maxVector","threadMaxDecl","getRepeats","createTileProgramInfo","tile","init_tile","repeatsTensorView","repeats","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","enableDirectives","userCode","code","shaderModule","computePipeline","limitPerDimension","dispatchAverage","backend_webgpu_exports","WebGpuBackend","getProgramInputTensorInfoDependencyKey","getProgramInfoUniqueKey","AdapterInfoImpl","init_backend_webgpu","inputInfos","adapterInfo","architecture","vendor","adapter","requiredFeatures","deviceDescriptor","requireFeatureIfAvailable","feature","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","op","kernelEntry","useErrorScope","sessionInputOutputMapping","previousBuffer","bufferInfo","sessionCommandList","sessionPendingKernels","command","init_exports","TensorViewImpl","ComputeContextImpl","init_init","_TensorViewImpl","elementCount","contextDataOffset","dataIndex","inputCount","inputsOutputsMapping","mappedInputs","createTemporaryOutput","gpuAdapter","jsepInit","webGpuBackendImpl","isSourceGpu","sessionHandle","initOrt","activeSessions","getSessionInputOutputCount","getSessionInputOutputMetadata","prepareInputOutputTensor","loggingLevel","webgpuAdapter","powerPreference","forceFallbackAdapter","initJsep","metadataOffset","elementType","dimsCount","symbolicDimNameOffset","modelDataOffset","modelData","modelDataLength","ioBindingHandle","inputNamesUTF8Encoded","outputNamesUTF8Encoded","loadingPromises","path","provider","webnnOptions","gpuDevice","enableGraphCapture","inputMetadata","outputMetadata","outputPreferredLocations","nameString","isGraphOutput","bindingState","buf","ioBindingState","tensorHandles","tensorNameUTF8Encoded","actualLocation","rawData","dataByteLength","registerBuffer","registerMLTensor","isGraphInput","tensorName","dataTypeEnum","createTemporaryTensor","uploadTensor","dimsOffset","outputTensors","inputOutputBound","runOptionsAllocs","inputTensorHandles","outputTensorHandles","inputOutputAllocs","beforeRunStack","inputValuesOffset","inputNamesOffset","outputValuesOffset","outputNamesOffset","handle","outputPreferredLocationsEncoded","outputPromises","beforeGetTensorDataStack","tensorDataOffset","keepOutputTensor","dimsLength","preferredLocation","stringData","nextOffset","maxBytesToRead","getBuffer","ensureTensor","isGraphInputOutputTypeSupported","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","simd","numCpuLogicalCores","index_default"],"mappings":"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