Skip to content

feat: Display max changes in treeshake results#2654

Open
aleksanderkatan wants to merge 1 commit into
mainfrom
feat/display-max-treeshake-result
Open

feat: Display max changes in treeshake results#2654
aleksanderkatan wants to merge 1 commit into
mainfrom
feat/display-max-treeshake-result

Conversation

@aleksanderkatan

@aleksanderkatan aleksanderkatan commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Note that lower tables don't render properly since this page reaches the limit of latex elements

@github-actions

github-actions Bot commented Jun 26, 2026

Copy link
Copy Markdown

pkg.pr.new

packages
Ready to be installed by your favorite package manager ⬇️

https://pkg.pr.new/software-mansion/TypeGPU/typegpu@e5b304ef6be68c04c66278855dfc2225991db951
https://pkg.pr.new/software-mansion/TypeGPU/@typegpu/cli@e5b304ef6be68c04c66278855dfc2225991db951
https://pkg.pr.new/software-mansion/TypeGPU/@typegpu/noise@e5b304ef6be68c04c66278855dfc2225991db951
https://pkg.pr.new/software-mansion/TypeGPU/@typegpu/react@e5b304ef6be68c04c66278855dfc2225991db951
https://pkg.pr.new/software-mansion/TypeGPU/unplugin-typegpu@e5b304ef6be68c04c66278855dfc2225991db951

benchmark
view benchmark

commit
view commit

@github-actions

github-actions Bot commented Jun 26, 2026

Copy link
Copy Markdown

Bundle size comparison (import * as ... in PR vs import * as ... in target):

🟢 Decreased ➖ Unchanged 🔴 Increased ❔ Unknown
0 320 0 0

import { ... } in PR vs import * as ... in PR (is the library tree-Shakeable?):

Click to reveal the results table (297 entries).
Test tsdown
d_Void.ts 87.40 kB ($${\color{red}+12093.7\%}$$)
d_sampler.ts 87.41 kB ($${\color{red}+11962.7\%}$$)
d_isPtr.ts 87.41 kB ($${\color{red}+11802.0\%}$$)
d_comparisonSampler.ts 87.42 kB ($${\color{red}+11787.8\%}$$)
d_isSizeAttrib.ts 87.41 kB ($${\color{red}+11771.4\%}$$)
d_isWgslArray.ts 87.41 kB ($${\color{red}+11771.2\%}$$)
d_isAlignAttrib.ts 87.41 kB ($${\color{red}+11755.8\%}$$)
d_isWgslStruct.ts 87.41 kB ($${\color{red}+11755.6\%}$$)
d_isAtomic.ts 87.41 kB ($${\color{red}+11755.1\%}$$)
d_isBuiltinAttrib.ts 87.42 kB ($${\color{red}+11724.7\%}$$)
d_isLocationAttrib.ts 87.42 kB ($${\color{red}+11709.2\%}$$)
d_isDecorated.ts 87.41 kB ($${\color{red}+11708.6\%}$$)
d_isInterpolateAttrib.ts 87.42 kB ($${\color{red}+11663.1\%}$$)
d_atomic.ts 87.41 kB ($${\color{red}+11389.6\%}$$)
d_ptrHandle.ts 87.41 kB ($${\color{red}+10417.9\%}$$)
d_ptrUniform.ts 87.41 kB ($${\color{red}+10405.6\%}$$)
d_ptrStorage.ts 87.41 kB ($${\color{red}+10356.5\%}$$)
d_ptrPrivate.ts 87.41 kB ($${\color{red}+10332.2\%}$$)
d_ptrFn.ts 87.41 kB ($${\color{red}+10319.4\%}$$)
d_ptrWorkgroup.ts 87.41 kB ($${\color{red}+10308.1\%}$$)
d_textureExternal.ts 87.42 kB ($${\color{red}+10153.5\%}$$)
d_textureStorage1d.ts 87.42 kB ($${\color{red}+8532.0\%}$$)
d_textureStorage2d.ts 87.42 kB ($${\color{red}+8532.0\%}$$)
d_textureStorage3d.ts 87.42 kB ($${\color{red}+8532.0\%}$$)
d_textureStorage2dArray.ts 87.42 kB ($${\color{red}+8385.2\%}$$)
d_isDisarray.ts 87.41 kB ($${\color{red}+7758.5\%}$$)
d_isUnstruct.ts 87.41 kB ($${\color{red}+7758.5\%}$$)
d_isLooseDecorated.ts 87.42 kB ($${\color{red}+7711.0\%}$$)
d_isLooseData.ts 87.41 kB ($${\color{red}+7447.1\%}$$)
d_isWgslData.ts 87.41 kB ($${\color{red}+6569.7\%}$$)
d_unstruct.ts 87.41 kB ($${\color{red}+5547.1\%}$$)
d_isData.ts 87.41 kB ($${\color{red}+4735.4\%}$$)
d_deepEqual.ts 87.41 kB ($${\color{red}+3886.9\%}$$)
d_struct.ts 87.41 kB ($${\color{red}+2324.9\%}$$)
d_ref.ts 87.40 kB ($${\color{red}+1725.4\%}$$)
std_discard.ts 103.14 kB ($${\color{red}+624.7\%}$$)
std_copy.ts 103.13 kB ($${\color{red}+612.6\%}$$)
std_arrayLength.ts 103.14 kB ($${\color{red}+612.4\%}$$)
std_isBeingTranspiled.ts 103.15 kB ($${\color{red}+610.8\%}$$)
std_getTargetShaderLanguage.ts 103.15 kB ($${\color{red}+607.7\%}$$)
std_extensionEnabled.ts 103.15 kB ($${\color{red}+605.2\%}$$)
std_range.ts 103.13 kB ($${\color{red}+592.4\%}$$)
std_dpdx.ts 103.13 kB ($${\color{red}+584.1\%}$$)
std_fwidthCoarse.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_dpdxCoarse.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_dpdyCoarse.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_fwidthFine.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_dpdxFine.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_dpdyFine.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_fwidth.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_dpdy.ts 103.13 kB ($${\color{red}+583.9\%}$$)
d_bool.ts 87.40 kB ($${\color{red}+571.4\%}$$)
d_f16.ts 87.40 kB ($${\color{red}+571.4\%}$$)
d_f32.ts 87.40 kB ($${\color{red}+571.4\%}$$)
d_i32.ts 87.40 kB ($${\color{red}+571.4\%}$$)
d_u32.ts 87.40 kB ($${\color{red}+571.4\%}$$)
d_u16.ts 87.40 kB ($${\color{red}+570.2\%}$$)
std_atomicLoad.ts 103.14 kB ($${\color{red}+551.5\%}$$)
std_textureBarrier.ts 103.14 kB ($${\color{red}+551.2\%}$$)
std_atomicStore.ts 103.14 kB ($${\color{red}+551.2\%}$$)
std_workgroupBarrier.ts 103.15 kB ($${\color{red}+551.0\%}$$)
std_storageBarrier.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicAdd.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicAnd.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicMax.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicMin.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicSub.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicXor.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicOr.ts 103.14 kB ($${\color{red}+551.0\%}$$)
d_textureDepth2d.ts 87.41 kB ($${\color{red}+549.3\%}$$)
d_textureDepthCube.ts 87.42 kB ($${\color{red}+549.1\%}$$)
d_texture1d.ts 87.41 kB ($${\color{red}+548.8\%}$$)
d_texture2d.ts 87.41 kB ($${\color{red}+548.8\%}$$)
d_texture3d.ts 87.41 kB ($${\color{red}+548.8\%}$$)
d_textureDepth2dArray.ts 87.42 kB ($${\color{red}+548.5\%}$$)
d_textureCube.ts 87.41 kB ($${\color{red}+548.5\%}$$)
d_textureDepthCubeArray.ts 87.42 kB ($${\color{red}+548.3\%}$$)
d_textureDepthMultisampled2d.ts 87.43 kB ($${\color{red}+548.2\%}$$)
d_texture2dArray.ts 87.41 kB ($${\color{red}+548.0\%}$$)
d_textureCubeArray.ts 87.42 kB ($${\color{red}+547.7\%}$$)
d_textureMultisampled2d.ts 87.42 kB ($${\color{red}+547.7\%}$$)
d_disarrayOf.ts 87.41 kB ($${\color{red}+480.3\%}$$)
d_vec2b.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec2f.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec2h.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec2i.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec2u.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec3b.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec3f.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec3h.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec3i.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec3u.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec4b.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec4f.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec4h.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec4i.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec4u.ts 87.41 kB ($${\color{red}+349.4\%}$$)
std_subgroupAdd.ts 103.14 kB ($${\color{red}+329.3\%}$$)
std_subgroupBroadcastFirst.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupExclusiveAdd.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupExclusiveMul.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupInclusiveAdd.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupInclusiveMul.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupShuffleDown.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupShuffleXor.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupBroadcast.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupShuffleUp.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupShuffle.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupBallot.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupElect.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupAll.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupAnd.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupAny.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupMax.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupMin.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupMul.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupXor.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupOr.ts 103.14 kB ($${\color{red}+329.2\%}$$)
d_formatToWGSLType.ts 87.42 kB ($${\color{red}+317.4\%}$$)
d_uint8.ts 87.41 kB ($${\color{red}+317.3\%}$$)
d_unorm10_10_10_2.ts 87.42 kB ($${\color{red}+317.3\%}$$)
d_unorm8x4_bgra.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float16x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float16x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float32x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float32x3.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float32x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_snorm16x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_snorm16x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_unorm16x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_unorm16x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint16x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint16x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint32x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint32x3.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint32x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_snorm8x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_snorm8x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint16x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint16x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint32x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint32x3.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint32x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_unorm8x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_unorm8x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float16.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float32.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint8x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint8x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_snorm16.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint8x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint8x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_unorm16.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint16.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint32.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_snorm8.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint16.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint32.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_unorm8.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint8.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_packedFormats.ts 87.41 kB ($${\color{red}+316.9\%}$$)
d_isPackedData.ts 87.41 kB ($${\color{red}+316.0\%}$$)
std_textureDimensions.ts 103.15 kB ($${\color{red}+300.1\%}$$)
std_textureGather.ts 103.14 kB ($${\color{red}+300.0\%}$$)
std_textureSampleBaseClampToEdge.ts 103.16 kB ($${\color{red}+300.0\%}$$)
std_textureSampleCompareLevel.ts 103.15 kB ($${\color{red}+300.0\%}$$)
std_textureSampleCompare.ts 103.15 kB ($${\color{red}+300.0\%}$$)
std_textureSampleLevel.ts 103.15 kB ($${\color{red}+300.0\%}$$)
std_textureSampleBias.ts 103.15 kB ($${\color{red}+300.0\%}$$)
std_textureSampleGrad.ts 103.15 kB ($${\color{red}+300.0\%}$$)
std_textureSample.ts 103.14 kB ($${\color{red}+299.9\%}$$)
std_textureStore.ts 103.14 kB ($${\color{red}+299.9\%}$$)
std_textureLoad.ts 103.14 kB ($${\color{red}+299.9\%}$$)
d_alignmentOf.ts 87.41 kB ($${\color{red}+299.2\%}$$)
std_translation4.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_rotationX4.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_rotationY4.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_rotationZ4.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_identity2.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_identity3.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_identity4.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_scaling4.ts 103.14 kB ($${\color{red}+281.5\%}$$)
d_isBuiltin.ts 87.41 kB ($${\color{red}+255.1\%}$$)
d_sizeOf.ts 87.41 kB ($${\color{red}+254.3\%}$$)
d_isContiguous.ts 87.41 kB ($${\color{red}+254.3\%}$$)
d_getLongestContiguousPrefix.ts 87.43 kB ($${\color{red}+254.2\%}$$)
d_arrayOf.ts 87.41 kB ($${\color{red}+233.4\%}$$)
d_size.ts 87.40 kB ($${\color{red}+231.6\%}$$)
d_align.ts 87.41 kB ($${\color{red}+231.6\%}$$)
d_location.ts 87.41 kB ($${\color{red}+231.6\%}$$)
d_interpolate.ts 87.41 kB ($${\color{red}+231.6\%}$$)
d_invariant.ts 87.41 kB ($${\color{red}+227.0\%}$$)
d_mat4x4f.ts 87.41 kB ($${\color{red}+223.3\%}$$)
d_mat2x2f.ts 87.41 kB ($${\color{red}+223.3\%}$$)
d_mat3x3f.ts 87.41 kB ($${\color{red}+223.3\%}$$)
d_matToArray.ts 87.41 kB ($${\color{red}+221.8\%}$$)
d_builtin.ts 87.41 kB ($${\color{red}+204.8\%}$$)
std_unpack2x16float.ts 103.14 kB ($${\color{red}+186.6\%}$$)
std_unpack4x8unorm.ts 103.14 kB ($${\color{red}+186.6\%}$$)
std_pack2x16float.ts 103.14 kB ($${\color{red}+186.6\%}$$)
std_pack4x8unorm.ts 103.14 kB ($${\color{red}+186.6\%}$$)
std_bitcastU32toF32.ts 103.14 kB ($${\color{red}+133.2\%}$$)
std_bitcastU32toI32.ts 103.14 kB ($${\color{red}+133.2\%}$$)
std_neg.ts 103.13 kB ($${\color{red}+113.1\%}$$)
std_bitShiftRight.ts 103.14 kB ($${\color{red}+113.1\%}$$)
std_bitShiftLeft.ts 103.14 kB ($${\color{red}+113.1\%}$$)
std_add.ts 103.13 kB ($${\color{red}+113.0\%}$$)
std_div.ts 103.13 kB ($${\color{red}+113.0\%}$$)
std_mod.ts 103.13 kB ($${\color{red}+113.0\%}$$)
std_mul.ts 103.13 kB ($${\color{red}+113.0\%}$$)
std_sub.ts 103.13 kB ($${\color{red}+113.0\%}$$)
std_translate4.ts 103.14 kB ($${\color{red}+109.8\%}$$)
std_rotateX4.ts 103.14 kB ($${\color{red}+109.8\%}$$)
std_scale4.ts 103.14 kB ($${\color{red}+109.8\%}$$)
std_rotateY4.ts 103.14 kB ($${\color{red}+109.7\%}$$)
std_rotateZ4.ts 103.14 kB ($${\color{red}+109.7\%}$$)
d_memoryLayoutOf.ts 87.41 kB ($${\color{red}+108.2\%}$$)
std_and.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_or.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_select.ts 103.14 kB ($${\color{red}+99.2\%}$$)
std_allEq.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_all.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_not.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_eq.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_lt.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_ne.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_isCloseTo.ts 103.14 kB ($${\color{red}+99.1\%}$$)
std_any.ts 103.13 kB ($${\color{red}+99.1\%}$$)
std_ge.ts 103.13 kB ($${\color{red}+99.1\%}$$)
std_gt.ts 103.13 kB ($${\color{red}+99.1\%}$$)
std_le.ts 103.13 kB ($${\color{red}+99.1\%}$$)
std_dot4U8Packed.ts 103.14 kB ($${\color{red}+56.2\%}$$)
std_length.ts 103.14 kB ($${\color{red}+56.2\%}$$)
std_countTrailingZeros.ts 103.15 kB ($${\color{red}+56.2\%}$$)
std_distance.ts 103.14 kB ($${\color{red}+56.2\%}$$)
std_dot.ts 103.13 kB ($${\color{red}+56.2\%}$$)
std_countLeadingZeros.ts 103.15 kB ($${\color{red}+56.2\%}$$)
std_firstTrailingBit.ts 103.15 kB ($${\color{red}+56.1\%}$$)
std_firstLeadingBit.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_fract.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_frexp.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_modf.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_quantizeToF16.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_mix.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_countOneBits.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_dot4I8Packed.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_determinant.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_extractBits.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_faceForward.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_inverseSqrt.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_reverseBits.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_insertBits.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_smoothstep.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_normalize.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_transpose.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_saturate.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_degrees.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_radians.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_reflect.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_refract.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_acosh.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_asinh.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_atan2.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_atanh.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_clamp.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_cross.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_floor.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_ldexp.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_round.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_trunc.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_acos.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_asin.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_atan.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_ceil.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_cosh.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_exp2.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_log2.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_sign.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_sinh.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_sqrt.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_step.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_tanh.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_abs.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_cos.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_exp.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_fma.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_log.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_max.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_min.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_pow.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_sin.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_tan.ts 103.13 kB ($${\color{red}+56.1\%}$$)
common_fullScreenTriangle.ts 57.18 kB ($${\color{red}+41.5\%}$$)
common_writeSoA.ts 57.17 kB ($${\color{red}+38.6\%}$$)
STATIC_allImports.ts 287.20 kB ($${\color{green}-1.7\%}$$)
STATIC_d.ts 87.40 kB ($${\color{green}-2.6\%}$$)
STATIC_std.ts 103.13 kB ($${\color{green}-2.7\%}$$)

If you wish to run a comparison for other, slower bundlers, run the 'Tree-shake test' from the GitHub Actions menu.

@github-actions

github-actions Bot commented Jun 26, 2026

Copy link
Copy Markdown

Resolution Time Benchmark

---
config:
  themeVariables:
    xyChart:
      plotColorPalette: "#E63946, #3B82F6, #059669"
---
xychart
  title "Random Branching (🔴 PR | 🔵 main | 🟢 release)"
  x-axis "max depth" [1, 2, 3, 4, 5, 6, 7, 8]
  y-axis "time (ms)"
  line [0.95, 1.90, 4.12, 5.90, 7.36, 10.77, 21.71, 22.41]
  line [0.98, 1.90, 4.16, 6.28, 7.53, 11.45, 21.92, 24.07]
  line [0.88, 1.81, 3.86, 5.88, 7.03, 10.80, 21.99, 24.55]
Loading
---
config:
  themeVariables:
    xyChart:
      plotColorPalette: "#E63946, #3B82F6, #059669"
---
xychart
  title "Linear Recursion (🔴 PR | 🔵 main | 🟢 release)"
  x-axis "max depth" [1, 2, 3, 4, 5, 6, 7, 8]
  y-axis "time (ms)"
  line [0.33, 0.56, 0.66, 0.83, 1.17, 1.19, 1.39, 1.56]
  line [0.28, 0.53, 0.72, 0.91, 1.18, 1.20, 1.44, 1.57]
  line [0.31, 0.55, 0.68, 0.82, 1.17, 1.19, 1.41, 1.54]
Loading
---
config:
  themeVariables:
    xyChart:
      plotColorPalette: "#E63946, #3B82F6, #059669"
---
xychart
  title "Full Tree (🔴 PR | 🔵 main | 🟢 release)"
  x-axis "max depth" [1, 2, 3, 4, 5, 6, 7, 8]
  y-axis "time (ms)"
  line [0.82, 2.02, 4.71, 7.81, 12.36, 24.64, 52.73, 108.29]
  line [0.89, 2.07, 3.76, 6.02, 12.39, 25.27, 54.92, 112.15]
  line [1.00, 2.04, 4.12, 5.98, 12.47, 25.26, 53.48, 108.64]
Loading

@aleksanderkatan

aleksanderkatan commented Jun 26, 2026

Copy link
Copy Markdown
Contributor Author

Below I post two example results.
The first is when the pr result is multiplied by a random number from 0 to 2 (possible decrease 100%, possible increase 100%).
The second is when target result is multipied by a random number from 0 to 2 (possible decrease 50%, possible increase infinite)

@aleksanderkatan

aleksanderkatan commented Jun 26, 2026

Copy link
Copy Markdown
Contributor Author

Bundle size comparison (import * as ... in PR vs import * as ... in target):

🟢 Decreased (max -99.59%) ➖ Unchanged 🔴 Increased (max 99.31%) ❔ Unknown
167 0 153 0

import * as ... in PR vs import * as ... in target (did bundle size increase?):

Click to reveal the results table (320 entries).
Test tsdown
std_rotationZ4.ts 53.88 kB ($${\color{red}+99.3\%}$$)
d_textureCubeArray.ts 26.84 kB ($${\color{red}+98.9\%}$$)
std_dot4U8Packed.ts 130.28 kB ($${\color{red}+97.3\%}$$)
std_sin.ts 129.58 kB ($${\color{red}+96.2\%}$$)
std_acos.ts 128.96 kB ($${\color{red}+95.2\%}$$)
std_not.ts 100.87 kB ($${\color{red}+94.8\%}$$)
std_round.ts 128.53 kB ($${\color{red}+94.6\%}$$)
std_sign.ts 127.99 kB ($${\color{red}+93.8\%}$$)
d_float16x2.ts 40.39 kB ($${\color{red}+92.8\%}$$)
std_asin.ts 127.29 kB ($${\color{red}+92.7\%}$$)
d_isDisarray.ts 2.14 kB ($${\color{red}+92.7\%}$$)
STATIC_tgpu.ts 504.01 kB ($${\color{red}+92.1\%}$$)
std_textureSampleGrad.ts 49.43 kB ($${\color{red}+91.7\%}$$)
std_subgroupOr.ts 46.06 kB ($${\color{red}+91.7\%}$$)
std_subgroupAny.ts 45.96 kB ($${\color{red}+91.2\%}$$)
std_cos.ts 126.07 kB ($${\color{red}+90.9\%}$$)
std_sinh.ts 125.91 kB ($${\color{red}+90.6\%}$$)
STATIC_d.ts 170.61 kB ($${\color{red}+90.1\%}$$)
std_tanh.ts 125.12 kB ($${\color{red}+89.4\%}$$)
d_packedFormats.ts 39.28 kB ($${\color{red}+87.3\%}$$)
std_trunc.ts 123.26 kB ($${\color{red}+86.6\%}$$)
std_abs.ts 122.19 kB ($${\color{red}+85.0\%}$$)
d_mat2x2f.ts 50.00 kB ($${\color{red}+85.0\%}$$)
d_isData.ts 3.34 kB ($${\color{red}+84.9\%}$$)
std_subgroupMax.ts 44.40 kB ($${\color{red}+84.8\%}$$)
d_vec3u.ts 35.67 kB ($${\color{red}+83.4\%}$$)
std_cross.ts 120.97 kB ($${\color{red}+83.1\%}$$)
std_subgroupInclusiveAdd.ts 43.94 kB ($${\color{red}+82.9\%}$$)
tgpu_vertexLayout.ts 477.96 kB ($${\color{red}+82.2\%}$$)
std_step.ts 118.83 kB ($${\color{red}+79.9\%}$$)
d_float32.ts 37.67 kB ($${\color{red}+79.8\%}$$)
d_sint8x4.ts 37.56 kB ($${\color{red}+79.3\%}$$)
tgpu_bindGroupLayout.ts 468.82 kB ($${\color{red}+78.7\%}$$)
d_u16.ts 23.25 kB ($${\color{red}+78.3\%}$$)
tgpu_accessor.ts 467.06 kB ($${\color{red}+78.0\%}$$)
d_textureStorage2dArray.ts 1.82 kB ($${\color{red}+76.5\%}$$)
tgpu_fragmentFn.ts 462.31 kB ($${\color{red}+76.2\%}$$)
common_fullScreenTriangle.ts 71.19 kB ($${\color{red}+76.2\%}$$)
std_subgroupAnd.ts 42.20 kB ($${\color{red}+75.6\%}$$)
std_firstLeadingBit.ts 115.89 kB ($${\color{red}+75.4\%}$$)
STATIC_allImports.ts 512.09 kB ($${\color{red}+75.2\%}$$)
d_snorm16x2.ts 36.71 kB ($${\color{red}+75.2\%}$$)
std_dot.ts 115.19 kB ($${\color{red}+74.4\%}$$)
d_alignmentOf.ts 38.16 kB ($${\color{red}+74.3\%}$$)
std_transpose.ts 115.00 kB ($${\color{red}+74.1\%}$$)
d_u32.ts 22.65 kB ($${\color{red}+74.0\%}$$)
std_atanh.ts 114.32 kB ($${\color{red}+73.1\%}$$)
std_dpdxFine.ts 25.99 kB ($${\color{red}+72.3\%}$$)
tgpu_init.ts 451.51 kB ($${\color{red}+72.1\%}$$)
std_cosh.ts 113.62 kB ($${\color{red}+72.0\%}$$)
std_lt.ts 89.07 kB ($${\color{red}+72.0\%}$$)
std_rotateZ4.ts 84.54 kB ($${\color{red}+71.9\%}$$)
d_textureDepthMultisampled2d.ts 23.15 kB ($${\color{red}+71.7\%}$$)
d_textureDepthCube.ts 23.01 kB ($${\color{red}+70.9\%}$$)
std_atomicSub.ts 27.05 kB ($${\color{red}+70.8\%}$$)
d_isSizeAttrib.ts 1.25 kB ($${\color{red}+70.1\%}$$)
d_sint8x2.ts 35.54 kB ($${\color{red}+69.6\%}$$)
d_isLooseDecorated.ts 1.88 kB ($${\color{red}+68.3\%}$$)
tgpu_mutableAccessor.ts 440.97 kB ($${\color{red}+68.1\%}$$)
std_mix.ts 110.13 kB ($${\color{red}+66.7\%}$$)
std_textureSampleBias.ts 42.94 kB ($${\color{red}+66.5\%}$$)
std_ge.ts 85.51 kB ($${\color{red}+65.1\%}$$)
tgpu_resolveWithContext.ts 430.31 kB ($${\color{red}+64.0\%}$$)
std_textureSampleCompareLevel.ts 41.91 kB ($${\color{red}+62.5\%}$$)
std_add.ts 78.23 kB ($${\color{red}+61.6\%}$$)
std_subgroupBallot.ts 38.68 kB ($${\color{red}+61.0\%}$$)
std_min.ts 106.22 kB ($${\color{red}+60.8\%}$$)
std_subgroupInclusiveMul.ts 38.62 kB ($${\color{red}+60.7\%}$$)
d_isAlignAttrib.ts 1.18 kB ($${\color{red}+60.0\%}$$)
d_isPackedData.ts 33.24 kB ($${\color{red}+58.2\%}$$)
std_subgroupBroadcast.ts 37.91 kB ($${\color{red}+57.8\%}$$)
d_isUnstruct.ts 1.75 kB ($${\color{red}+57.6\%}$$)
d_ptrUniform.ts 1.30 kB ($${\color{red}+56.4\%}$$)
std_scaling4.ts 42.12 kB ($${\color{red}+55.8\%}$$)
tgpu_unroll.ts 406.97 kB ($${\color{red}+55.1\%}$$)
std_identity3.ts 41.56 kB ($${\color{red}+53.7\%}$$)
std_textureDimensions.ts 39.59 kB ($${\color{red}+53.5\%}$$)
std_exp2.ts 101.14 kB ($${\color{red}+53.1\%}$$)
tgpu_comptime.ts 400.57 kB ($${\color{red}+52.7\%}$$)
std_asinh.ts 100.68 kB ($${\color{red}+52.4\%}$$)
d_uint16x4.ts 31.88 kB ($${\color{red}+52.2\%}$$)
d_atomic.ts 1.16 kB ($${\color{red}+52.0\%}$$)
std_or.ts 78.45 kB ($${\color{red}+51.5\%}$$)
std_dpdxCoarse.ts 22.79 kB ($${\color{red}+51.1\%}$$)
std_clamp.ts 99.74 kB ($${\color{red}+51.0\%}$$)
d_isDecorated.ts 1.11 kB ($${\color{red}+49.9\%}$$)
std_textureBarrier.ts 23.61 kB ($${\color{red}+49.1\%}$$)
std_isCloseTo.ts 76.10 kB ($${\color{red}+46.9\%}$$)
std_ne.ts 74.86 kB ($${\color{red}+44.6\%}$$)
std_length.ts 94.56 kB ($${\color{red}+43.2\%}$$)
std_textureGather.ts 36.88 kB ($${\color{red}+43.0\%}$$)
std_countLeadingZeros.ts 94.47 kB ($${\color{red}+43.0\%}$$)
d_unorm10_10_10_2.ts 29.45 kB ($${\color{red}+40.6\%}$$)
std_atomicMax.ts 22.04 kB ($${\color{red}+39.1\%}$$)
d_vec4u.ts 27.04 kB ($${\color{red}+39.0\%}$$)
d_uint32x4.ts 29.05 kB ($${\color{red}+38.7\%}$$)
std_unpack2x16float.ts 49.76 kB ($${\color{red}+38.3\%}$$)
STATIC_useGpuFunction.ts 388.46 B ($${\color{red}+37.8\%}$$)
d_textureDepth2d.ts 18.46 kB ($${\color{red}+37.1\%}$$)
std_exp.ts 90.48 kB ($${\color{red}+37.0\%}$$)
d_unstruct.ts 2.08 kB ($${\color{red}+34.4\%}$$)
std_textureSample.ts 34.51 kB ($${\color{red}+33.8\%}$$)
d_vec3h.ts 25.70 kB ($${\color{red}+32.2\%}$$)
d_uint8.ts 27.65 kB ($${\color{red}+32.0\%}$$)
tgpu_fn.ts 345.82 kB ($${\color{red}+31.8\%}$$)
std_countOneBits.ts 86.66 kB ($${\color{red}+31.2\%}$$)
std_fwidthCoarse.ts 19.65 kB ($${\color{red}+30.3\%}$$)
d_ptrWorkgroup.ts 1.09 kB ($${\color{red}+29.9\%}$$)
std_saturate.ts 85.79 kB ($${\color{red}+29.9\%}$$)
d_uint32x3.ts 26.99 kB ($${\color{red}+28.9\%}$$)
d_vec3i.ts 24.95 kB ($${\color{red}+28.3\%}$$)
std_textureSampleBaseClampToEdge.ts 32.76 kB ($${\color{red}+27.0\%}$$)
std_bitShiftRight.ts 60.57 kB ($${\color{red}+25.1\%}$$)
std_pack2x16float.ts 44.98 kB ($${\color{red}+25.0\%}$$)
d_sint32x2.ts 25.97 kB ($${\color{red}+24.0\%}$$)
std_eq.ts 64.08 kB ($${\color{red}+23.7\%}$$)
d_ref.ts 5.82 kB ($${\color{red}+21.6\%}$$)
std_atomicOr.ts 19.01 kB ($${\color{red}+20.0\%}$$)
d_texture2dArray.ts 16.14 kB ($${\color{red}+19.7\%}$$)
d_vec4h.ts 23.25 kB ($${\color{red}+19.6\%}$$)
d_ptrHandle.ts 1014.20 B ($${\color{red}+19.2\%}$$)
d_deepEqual.ts 2.61 kB ($${\color{red}+19.1\%}$$)
d_isContiguous.ts 29.35 kB ($${\color{red}+19.0\%}$$)
d_ptrStorage.ts 1018.03 B ($${\color{red}+18.9\%}$$)
std_div.ts 57.39 kB ($${\color{red}+18.6\%}$$)
d_matToArray.ts 32.08 kB ($${\color{red}+18.1\%}$$)
d_location.ts 31.11 kB ($${\color{red}+18.0\%}$$)
std_unpack4x8unorm.ts 42.38 kB ($${\color{red}+17.8\%}$$)
std_insertBits.ts 77.21 kB ($${\color{red}+16.9\%}$$)
std_acosh.ts 77.20 kB ($${\color{red}+16.9\%}$$)
d_Void.ts 857.87 B ($${\color{red}+16.9\%}$$)
d_sint32.ts 24.42 kB ($${\color{red}+16.6\%}$$)
std_subgroupAll.ts 27.97 kB ($${\color{red}+16.4\%}$$)
d_texture1d.ts 15.64 kB ($${\color{red}+16.1\%}$$)
d_isLooseData.ts 1.34 kB ($${\color{red}+15.3\%}$$)
d_texture3d.ts 15.44 kB ($${\color{red}+14.6\%}$$)
std_allEq.ts 58.92 kB ($${\color{red}+13.8\%}$$)
d_ptrPrivate.ts 975.52 B ($${\color{red}+13.7\%}$$)
std_translate4.ts 54.01 kB ($${\color{red}+9.8\%}$$)
std_sub.ts 52.96 kB ($${\color{red}+9.4\%}$$)
std_smoothstep.ts 71.97 kB ($${\color{red}+9.0\%}$$)
d_unorm16x2.ts 22.61 kB ($${\color{red}+7.9\%}$$)
std_firstTrailingBit.ts 70.79 kB ($${\color{red}+7.2\%}$$)
std_atan2.ts 70.55 kB ($${\color{red}+6.8\%}$$)
std_mul.ts 51.60 kB ($${\color{red}+6.6\%}$$)
tgpu_vertexFn.ts 278.95 kB ($${\color{red}+6.3\%}$$)
d_textureExternal.ts 922.63 B ($${\color{red}+5.7\%}$$)
d_isBuiltin.ts 25.82 kB ($${\color{red}+4.9\%}$$)
std_bitcastU32toF32.ts 45.15 kB ($${\color{red}+2.1\%}$$)
d_ptrFn.ts 874.08 B ($${\color{red}+1.8\%}$$)
std_dpdx.ts 15.33 kB ($${\color{red}+1.7\%}$$)
d_formatToWGSLType.ts 21.23 kB ($${\color{red}+1.4\%}$$)
d_vec4b.ts 19.55 kB ($${\color{red}+0.5\%}$$)
d_textureDepthCubeArray.ts 13.28 kB ($${\color{green}-1.6\%}$$)
d_textureStorage2d.ts 1019.75 B ($${\color{green}-1.7\%}$$)
tgpu_lazy.ts 257.20 kB ($${\color{green}-2.0\%}$$)
d_isPtr.ts 736.32 B ($${\color{green}-2.1\%}$$)
std_textureStore.ts 25.10 kB ($${\color{green}-2.7\%}$$)
d_invariant.ts 25.93 kB ($${\color{green}-3.0\%}$$)
d_isLocationAttrib.ts 726.27 B ($${\color{green}-4.2\%}$$)
d_mat4x4f.ts 25.87 kB ($${\color{green}-4.3\%}$$)
STATIC_std.ts 101.15 kB ($${\color{green}-4.5\%}$$)
std_any.ts 49.42 kB ($${\color{green}-4.6\%}$$)
std_discard.ts 13.58 kB ($${\color{green}-4.6\%}$$)
d_float32x2.ts 19.98 kB ($${\color{green}-4.6\%}$$)
std_extractBits.ts 62.65 kB ($${\color{green}-5.2\%}$$)
d_float16x4.ts 19.80 kB ($${\color{green}-5.5\%}$$)
d_f32.ts 12.17 kB ($${\color{green}-6.5\%}$$)
std_storageBarrier.ts 14.81 kB ($${\color{green}-6.5\%}$$)
std_countTrailingZeros.ts 61.39 kB ($${\color{green}-7.1\%}$$)
std_radians.ts 60.65 kB ($${\color{green}-8.2\%}$$)
std_subgroupShuffle.ts 22.05 kB ($${\color{green}-8.2\%}$$)
std_subgroupElect.ts 21.97 kB ($${\color{green}-8.6\%}$$)
std_degrees.ts 59.51 kB ($${\color{green}-9.9\%}$$)
std_fma.ts 59.45 kB ($${\color{green}-10.0\%}$$)
common_writeSoA.ts 36.72 kB ($${\color{green}-11.0\%}$$)
d_uint32x2.ts 18.61 kB ($${\color{green}-11.1\%}$$)
d_vec2b.ts 17.23 kB ($${\color{green}-11.4\%}$$)
std_rotationY4.ts 23.85 kB ($${\color{green}-11.8\%}$$)
std_atomicAdd.ts 13.84 kB ($${\color{green}-12.6\%}$$)
std_subgroupShuffleUp.ts 20.97 kB ($${\color{green}-12.7\%}$$)
d_vec2f.ts 16.97 kB ($${\color{green}-12.8\%}$$)
std_subgroupXor.ts 20.94 kB ($${\color{green}-12.9\%}$$)
d_sint32x4.ts 18.21 kB ($${\color{green}-13.1\%}$$)
std_dot4I8Packed.ts 56.92 kB ($${\color{green}-13.8\%}$$)
d_sizeOf.ts 20.91 kB ($${\color{green}-15.2\%}$$)
d_float32x3.ts 17.64 kB ($${\color{green}-15.8\%}$$)
d_isWgslData.ts 1.10 kB ($${\color{green}-16.0\%}$$)
std_scale4.ts 41.23 kB ($${\color{green}-16.1\%}$$)
d_arrayOf.ts 21.71 kB ($${\color{green}-17.2\%}$$)
std_mod.ts 39.09 kB ($${\color{green}-19.2\%}$$)
std_log.ts 53.25 kB ($${\color{green}-19.4\%}$$)
std_subgroupBroadcastFirst.ts 19.08 kB ($${\color{green}-20.6\%}$$)
d_builtin.ts 22.72 kB ($${\color{green}-20.8\%}$$)
d_texture2d.ts 10.65 kB ($${\color{green}-20.9\%}$$)
std_rotateY4.ts 38.86 kB ($${\color{green}-21.0\%}$$)
std_neg.ts 38.03 kB ($${\color{green}-21.4\%}$$)
d_textureStorage3d.ts 797.70 B ($${\color{green}-23.1\%}$$)
d_snorm8.ts 16.07 kB ($${\color{green}-23.3\%}$$)
std_sqrt.ts 50.38 kB ($${\color{green}-23.7\%}$$)
std_isBeingTranspiled.ts 10.98 kB ($${\color{green}-24.4\%}$$)
std_floor.ts 49.24 kB ($${\color{green}-25.5\%}$$)
std_subgroupAdd.ts 17.75 kB ($${\color{green}-26.1\%}$$)
std_all.ts 38.13 kB ($${\color{green}-26.4\%}$$)
std_atomicStore.ts 11.63 kB ($${\color{green}-26.6\%}$$)
std_max.ts 48.28 kB ($${\color{green}-26.9\%}$$)
std_subgroupExclusiveAdd.ts 17.51 kB ($${\color{green}-27.1\%}$$)
d_vec2i.ts 13.94 kB ($${\color{green}-28.3\%}$$)
std_textureLoad.ts 18.35 kB ($${\color{green}-28.8\%}$$)
d_sint16x4.ts 14.86 kB ($${\color{green}-29.1\%}$$)
d_f16.ts 9.20 kB ($${\color{green}-29.3\%}$$)
std_atan.ts 46.49 kB ($${\color{green}-29.6\%}$$)
STATIC_nonUseGpuFunction.ts 16.72 B ($${\color{green}-30.3\%}$$)
d_uint8x2.ts 14.18 kB ($${\color{green}-32.3\%}$$)
d_isAtomic.ts 504.68 B ($${\color{green}-33.2\%}$$)
std_dpdy.ts 9.95 kB ($${\color{green}-34.0\%}$$)
std_atomicAnd.ts 10.37 kB ($${\color{green}-34.6\%}$$)
d_isWgslStruct.ts 482.69 B ($${\color{green}-36.1\%}$$)
d_unorm8x4_bgra.ts 13.19 kB ($${\color{green}-37.1\%}$$)
std_gt.ts 32.39 kB ($${\color{green}-37.5\%}$$)
std_refract.ts 41.09 kB ($${\color{green}-37.8\%}$$)
std_reflect.ts 40.64 kB ($${\color{green}-38.5\%}$$)
d_mat3x3f.ts 16.21 kB ($${\color{green}-40.0\%}$$)
std_dpdyCoarse.ts 9.02 kB ($${\color{green}-40.2\%}$$)
d_comparisonSampler.ts 449.76 B ($${\color{green}-40.3\%}$$)
d_textureCube.ts 7.93 kB ($${\color{green}-41.2\%}$$)
d_sint8.ts 12.21 kB ($${\color{green}-41.7\%}$$)
d_struct.ts 2.08 kB ($${\color{green}-42.3\%}$$)
d_uint16.ts 11.98 kB ($${\color{green}-42.8\%}$$)
d_sint32x3.ts 11.89 kB ($${\color{green}-43.2\%}$$)
std_dpdyFine.ts 8.51 kB ($${\color{green}-43.6\%}$$)
d_textureStorage1d.ts 581.62 B ($${\color{green}-43.9\%}$$)
d_unorm8x4.ts 11.52 kB ($${\color{green}-45.0\%}$$)
d_getLongestContiguousPrefix.ts 13.42 kB ($${\color{green}-45.6\%}$$)
std_arrayLength.ts 7.82 kB ($${\color{green}-46.0\%}$$)
std_atomicMin.ts 8.51 kB ($${\color{green}-46.3\%}$$)
std_determinant.ts 34.81 kB ($${\color{green}-47.3\%}$$)
std_copy.ts 7.57 kB ($${\color{green}-47.7\%}$$)
std_getTargetShaderLanguage.ts 7.60 kB ($${\color{green}-47.8\%}$$)
std_and.ts 26.44 kB ($${\color{green}-48.9\%}$$)
tgpu_computeFn.ts 130.82 kB ($${\color{green}-50.1\%}$$)
d_uint16x2.ts 10.36 kB ($${\color{green}-50.6\%}$$)
std_distance.ts 32.03 kB ($${\color{green}-51.5\%}$$)
d_vec4f.ts 9.33 kB ($${\color{green}-52.0\%}$$)
std_modf.ts 31.11 kB ($${\color{green}-52.9\%}$$)
d_align.ts 12.25 kB ($${\color{green}-53.5\%}$$)
tgpu_workgroupVar.ts 119.86 kB ($${\color{green}-54.3\%}$$)
STATIC_common.ts 26.00 kB ($${\color{green}-54.7\%}$$)
tgpu_privateVar.ts 118.90 kB ($${\color{green}-54.7\%}$$)
tgpu_slot.ts 116.69 kB ($${\color{green}-55.5\%}$$)
tgpu_resolve.ts 116.54 kB ($${\color{green}-55.6\%}$$)
std_inverseSqrt.ts 28.25 kB ($${\color{green}-57.2\%}$$)
std_faceForward.ts 27.46 kB ($${\color{green}-58.4\%}$$)
d_snorm8x4.ts 8.71 kB ($${\color{green}-58.4\%}$$)
d_vec2u.ts 8.06 kB ($${\color{green}-58.6\%}$$)
d_isInterpolateAttrib.ts 314.26 B ($${\color{green}-58.7\%}$$)
std_rotateX4.ts 20.03 kB ($${\color{green}-59.3\%}$$)
d_disarrayOf.ts 6.11 kB ($${\color{green}-59.4\%}$$)
std_atomicXor.ts 6.39 kB ($${\color{green}-59.7\%}$$)
std_identity4.ts 10.72 kB ($${\color{green}-60.4\%}$$)
d_memoryLayoutOf.ts 15.63 kB ($${\color{green}-62.8\%}$$)
std_ldexp.ts 23.30 kB ($${\color{green}-64.7\%}$$)
std_bitShiftLeft.ts 16.80 kB ($${\color{green}-65.3\%}$$)
d_textureDepth2dArray.ts 4.51 kB ($${\color{green}-66.5\%}$$)
std_pack4x8unorm.ts 11.37 kB ($${\color{green}-68.4\%}$$)
d_unorm16.ts 6.46 kB ($${\color{green}-69.2\%}$$)
d_snorm8x2.ts 6.37 kB ($${\color{green}-69.6\%}$$)
d_uint8x4.ts 6.34 kB ($${\color{green}-69.7\%}$$)
d_snorm16x4.ts 6.24 kB ($${\color{green}-70.2\%}$$)
std_identity2.ts 7.70 kB ($${\color{green}-71.5\%}$$)
d_isWgslArray.ts 212.34 B ($${\color{green}-71.8\%}$$)
d_size.ts 7.26 kB ($${\color{green}-72.5\%}$$)
std_normalize.ts 17.02 kB ($${\color{green}-74.2\%}$$)
d_vec3f.ts 5.00 kB ($${\color{green}-74.3\%}$$)
d_vec3b.ts 4.87 kB ($${\color{green}-74.9\%}$$)
tgpu_initFromDevice.ts 64.81 kB ($${\color{green}-75.3\%}$$)
d_float32x4.ts 4.62 kB ($${\color{green}-78.0\%}$$)
d_vec4i.ts 4.22 kB ($${\color{green}-78.3\%}$$)
d_sint16x2.ts 4.48 kB ($${\color{green}-78.6\%}$$)
std_workgroupBarrier.ts 3.39 kB ($${\color{green}-78.6\%}$$)
std_ceil.ts 13.84 kB ($${\color{green}-79.0\%}$$)
d_sampler.ts 152.73 B ($${\color{green}-79.4\%}$$)
d_uint32.ts 4.15 kB ($${\color{green}-80.2\%}$$)
std_fwidth.ts 2.96 kB ($${\color{green}-80.3\%}$$)
std_tan.ts 12.40 kB ($${\color{green}-81.2\%}$$)
std_translation4.ts 5.03 kB ($${\color{green}-81.4\%}$$)
std_subgroupShuffleDown.ts 4.42 kB ($${\color{green}-81.6\%}$$)
d_sint16.ts 3.61 kB ($${\color{green}-82.8\%}$$)
std_fwidthFine.ts 2.54 kB ($${\color{green}-83.2\%}$$)
std_fract.ts 10.84 kB ($${\color{green}-83.6\%}$$)
d_unorm8x2.ts 3.37 kB ($${\color{green}-83.9\%}$$)
std_select.ts 8.18 kB ($${\color{green}-84.2\%}$$)
std_subgroupExclusiveMul.ts 3.76 kB ($${\color{green}-84.4\%}$$)
d_textureMultisampled2d.ts 2.01 kB ($${\color{green}-85.1\%}$$)
std_quantizeToF16.ts 9.84 kB ($${\color{green}-85.1\%}$$)
std_log2.ts 8.85 kB ($${\color{green}-86.6\%}$$)
std_rotationX4.ts 3.34 kB ($${\color{green}-87.7\%}$$)
std_extensionEnabled.ts 1.69 kB ($${\color{green}-88.5\%}$$)
std_subgroupMul.ts 2.69 kB ($${\color{green}-88.8\%}$$)
d_snorm16.ts 2.24 kB ($${\color{green}-89.3\%}$$)
std_frexp.ts 6.37 kB ($${\color{green}-90.4\%}$$)
std_atomicLoad.ts 1.46 kB ($${\color{green}-90.8\%}$$)
std_reverseBits.ts 6.03 kB ($${\color{green}-90.9\%}$$)
tgpu_const.ts 20.98 kB ($${\color{green}-92.0\%}$$)
d_bool.ts 1.04 kB ($${\color{green}-92.0\%}$$)
d_float16.ts 1.63 kB ($${\color{green}-92.2\%}$$)
std_le.ts 3.70 kB ($${\color{green}-92.8\%}$$)
std_subgroupShuffleXor.ts 1.40 kB ($${\color{green}-94.2\%}$$)
d_unorm16x4.ts 1.22 kB ($${\color{green}-94.2\%}$$)
std_textureSampleLevel.ts 1.28 kB ($${\color{green}-95.0\%}$$)
std_subgroupMin.ts 1.15 kB ($${\color{green}-95.2\%}$$)
d_unorm8.ts 967.03 B ($${\color{green}-95.5\%}$$)
std_bitcastU32toI32.ts 1.99 kB ($${\color{green}-95.5\%}$$)
std_textureSampleCompare.ts 1.15 kB ($${\color{green}-95.5\%}$$)
d_i32.ts 445.36 B ($${\color{green}-96.7\%}$$)
std_range.ts 225.37 B ($${\color{green}-98.5\%}$$)
d_vec2h.ts 286.12 B ($${\color{green}-98.6\%}$$)
d_isBuiltinAttrib.ts 7.89 B ($${\color{green}-99.0\%}$$)
d_interpolate.ts 269.29 B ($${\color{green}-99.0\%}$$)
std_pow.ts 278.65 B ($${\color{green}-99.6\%}$$)

import { ... } in PR vs import * as ... in PR (is the library tree-Shakeable?):

Click to reveal the results table (318 entries).
Test tsdown
d_isBuiltinAttrib.ts 87.42 kB ($${\color{red}+1134029.1\%}$$)
d_sampler.ts 87.41 kB ($${\color{red}+58504.5\%}$$)
std_range.ts 103.13 kB ($${\color{red}+46760.3\%}$$)
d_isWgslArray.ts 87.41 kB ($${\color{red}+42053.8\%}$$)
std_pow.ts 103.13 kB ($${\color{red}+37799.7\%}$$)
d_interpolate.ts 87.41 kB ($${\color{red}+33138.7\%}$$)
d_vec2h.ts 87.41 kB ($${\color{red}+31181.4\%}$$)
d_isInterpolateAttrib.ts 87.42 kB ($${\color{red}+28385.2\%}$$)
d_i32.ts 87.40 kB ($${\color{red}+19996.3\%}$$)
d_comparisonSampler.ts 87.42 kB ($${\color{red}+19802.7\%}$$)
d_isWgslStruct.ts 87.41 kB ($${\color{red}+18444.1\%}$$)
d_isAtomic.ts 87.41 kB ($${\color{red}+17635.2\%}$$)
d_textureStorage1d.ts 87.42 kB ($${\color{red}+15290.4\%}$$)
d_isLocationAttrib.ts 87.42 kB ($${\color{red}+12225.1\%}$$)
d_isPtr.ts 87.41 kB ($${\color{red}+12055.4\%}$$)
d_textureStorage3d.ts 87.42 kB ($${\color{red}+11121.5\%}$$)
d_Void.ts 87.40 kB ($${\color{red}+10333.1\%}$$)
d_ptrFn.ts 87.41 kB ($${\color{red}+10139.7\%}$$)
d_textureExternal.ts 87.42 kB ($${\color{red}+9601.9\%}$$)
d_unorm8.ts 87.41 kB ($${\color{red}+9155.6\%}$$)
d_ptrPrivate.ts 87.41 kB ($${\color{red}+9075.4\%}$$)
std_textureSampleCompare.ts 103.15 kB ($${\color{red}+8879.7\%}$$)
std_subgroupMin.ts 103.14 kB ($${\color{red}+8831.8\%}$$)
d_ptrHandle.ts 87.41 kB ($${\color{red}+8725.4\%}$$)
d_ptrStorage.ts 87.41 kB ($${\color{red}+8692.3\%}$$)
d_textureStorage2d.ts 87.42 kB ($${\color{red}+8678.1\%}$$)
d_bool.ts 87.40 kB ($${\color{red}+8319.5\%}$$)
std_textureSampleLevel.ts 103.15 kB ($${\color{red}+7961.2\%}$$)
d_ptrWorkgroup.ts 87.41 kB ($${\color{red}+7912.2\%}$$)
d_isWgslData.ts 87.41 kB ($${\color{red}+7844.0\%}$$)
d_isDecorated.ts 87.41 kB ($${\color{red}+7777.1\%}$$)
d_atomic.ts 87.41 kB ($${\color{red}+7459.0\%}$$)
d_isAlignAttrib.ts 87.41 kB ($${\color{red}+7310.6\%}$$)
std_subgroupShuffleXor.ts 103.15 kB ($${\color{red}+7251.4\%}$$)
d_unorm16x4.ts 87.41 kB ($${\color{red}+7053.9\%}$$)
std_atomicLoad.ts 103.14 kB ($${\color{red}+6959.2\%}$$)
d_isSizeAttrib.ts 87.41 kB ($${\color{red}+6879.9\%}$$)
d_ptrUniform.ts 87.41 kB ($${\color{red}+6618.5\%}$$)
d_isLooseData.ts 87.41 kB ($${\color{red}+6446.3\%}$$)
std_extensionEnabled.ts 103.15 kB ($${\color{red}+6014.1\%}$$)
d_float16.ts 87.41 kB ($${\color{red}+5257.9\%}$$)
std_bitcastU32toI32.ts 103.14 kB ($${\color{red}+5084.6\%}$$)
d_isUnstruct.ts 87.41 kB ($${\color{red}+4887.1\%}$$)
d_textureStorage2dArray.ts 87.42 kB ($${\color{red}+4707.3\%}$$)
d_isLooseDecorated.ts 87.42 kB ($${\color{red}+4541.1\%}$$)
d_textureMultisampled2d.ts 87.42 kB ($${\color{red}+4239.3\%}$$)
d_unstruct.ts 87.41 kB ($${\color{red}+4101.5\%}$$)
d_struct.ts 87.41 kB ($${\color{red}+4099.8\%}$$)
d_isDisarray.ts 87.41 kB ($${\color{red}+3978.5\%}$$)
std_fwidthFine.ts 103.14 kB ($${\color{red}+3968.4\%}$$)
d_snorm16.ts 87.41 kB ($${\color{red}+3795.5\%}$$)
std_subgroupMul.ts 103.14 kB ($${\color{red}+3733.0\%}$$)
std_fwidth.ts 103.14 kB ($${\color{red}+3379.0\%}$$)
d_deepEqual.ts 87.41 kB ($${\color{red}+3247.1\%}$$)
std_rotationX4.ts 103.14 kB ($${\color{red}+2990.7\%}$$)
std_workgroupBarrier.ts 103.15 kB ($${\color{red}+2946.3\%}$$)
std_le.ts 103.13 kB ($${\color{red}+2683.8\%}$$)
std_subgroupExclusiveMul.ts 103.15 kB ($${\color{red}+2643.3\%}$$)
d_isData.ts 87.41 kB ($${\color{red}+2514.9\%}$$)
d_unorm8x2.ts 87.41 kB ($${\color{red}+2496.5\%}$$)
d_sint16.ts 87.41 kB ($${\color{red}+2323.9\%}$$)
std_subgroupShuffleDown.ts 103.15 kB ($${\color{red}+2233.9\%}$$)
d_uint32.ts 87.41 kB ($${\color{red}+2005.0\%}$$)
d_vec4i.ts 87.41 kB ($${\color{red}+1971.6\%}$$)
std_translation4.ts 103.14 kB ($${\color{red}+1949.9\%}$$)
d_sint16x2.ts 87.41 kB ($${\color{red}+1851.8\%}$$)
d_textureDepth2dArray.ts 87.42 kB ($${\color{red}+1838.0\%}$$)
d_float32x4.ts 87.41 kB ($${\color{red}+1792.8\%}$$)
d_vec3b.ts 87.41 kB ($${\color{red}+1693.5\%}$$)
d_vec3f.ts 87.41 kB ($${\color{red}+1648.8\%}$$)
std_reverseBits.ts 103.14 kB ($${\color{red}+1609.7\%}$$)
std_frexp.ts 103.13 kB ($${\color{red}+1519.2\%}$$)
std_atomicXor.ts 103.14 kB ($${\color{red}+1513.5\%}$$)
d_ref.ts 87.40 kB ($${\color{red}+1400.9\%}$$)
d_disarrayOf.ts 87.41 kB ($${\color{red}+1330.3\%}$$)
d_snorm16x4.ts 87.41 kB ($${\color{red}+1300.9\%}$$)
d_uint8x4.ts 87.41 kB ($${\color{red}+1279.1\%}$$)
d_snorm8x2.ts 87.41 kB ($${\color{red}+1272.0\%}$$)
std_copy.ts 103.13 kB ($${\color{red}+1263.3\%}$$)
std_getTargetShaderLanguage.ts 103.15 kB ($${\color{red}+1256.5\%}$$)
d_unorm16.ts 87.41 kB ($${\color{red}+1252.9\%}$$)
std_identity2.ts 103.14 kB ($${\color{red}+1238.8\%}$$)
std_arrayLength.ts 103.14 kB ($${\color{red}+1219.5\%}$$)
std_select.ts 103.14 kB ($${\color{red}+1160.3\%}$$)
tgpu_const.ts 262.36 kB ($${\color{red}+1150.8\%}$$)
std_dpdyFine.ts 103.14 kB ($${\color{red}+1112.6\%}$$)
std_atomicMin.ts 103.14 kB ($${\color{red}+1111.6\%}$$)
d_size.ts 87.40 kB ($${\color{red}+1103.9\%}$$)
std_log2.ts 103.13 kB ($${\color{red}+1065.5\%}$$)
std_dpdyCoarse.ts 103.14 kB ($${\color{red}+1042.8\%}$$)
d_textureCube.ts 87.41 kB ($${\color{red}+1002.6\%}$$)
d_vec2u.ts 87.41 kB ($${\color{red}+984.6\%}$$)
std_quantizeToF16.ts 103.14 kB ($${\color{red}+948.5\%}$$)
std_dpdy.ts 103.13 kB ($${\color{red}+936.2\%}$$)
d_snorm8x4.ts 87.41 kB ($${\color{red}+904.0\%}$$)
std_atomicAnd.ts 103.14 kB ($${\color{red}+894.7\%}$$)
std_identity4.ts 103.14 kB ($${\color{red}+862.4\%}$$)
std_fract.ts 103.13 kB ($${\color{red}+851.6\%}$$)
d_f16.ts 87.40 kB ($${\color{red}+849.8\%}$$)
std_isBeingTranspiled.ts 103.15 kB ($${\color{red}+839.7\%}$$)
d_vec4f.ts 87.41 kB ($${\color{red}+836.8\%}$$)
std_pack4x8unorm.ts 103.14 kB ($${\color{red}+807.2\%}$$)
std_atomicStore.ts 103.14 kB ($${\color{red}+786.8\%}$$)
d_uint16x2.ts 87.41 kB ($${\color{red}+744.1\%}$$)
std_tan.ts 103.13 kB ($${\color{red}+731.9\%}$$)
d_texture2d.ts 87.41 kB ($${\color{red}+720.5\%}$$)
std_discard.ts 103.14 kB ($${\color{red}+659.5\%}$$)
d_unorm8x4.ts 87.41 kB ($${\color{red}+659.0\%}$$)
std_atomicAdd.ts 103.14 kB ($${\color{red}+645.1\%}$$)
std_ceil.ts 103.13 kB ($${\color{red}+645.1\%}$$)
d_sint32x3.ts 87.41 kB ($${\color{red}+634.9\%}$$)
d_uint16.ts 87.41 kB ($${\color{red}+629.3\%}$$)
d_f32.ts 87.40 kB ($${\color{red}+617.9\%}$$)
d_sint8.ts 87.41 kB ($${\color{red}+616.1\%}$$)
d_align.ts 87.41 kB ($${\color{red}+613.5\%}$$)
std_storageBarrier.ts 103.14 kB ($${\color{red}+596.4\%}$$)
std_dpdx.ts 103.13 kB ($${\color{red}+573.0\%}$$)
d_unorm8x4_bgra.ts 87.41 kB ($${\color{red}+562.9\%}$$)
d_textureDepthCubeArray.ts 87.42 kB ($${\color{red}+558.5\%}$$)
d_getLongestContiguousPrefix.ts 87.43 kB ($${\color{red}+551.3\%}$$)
d_vec2i.ts 87.41 kB ($${\color{red}+526.8\%}$$)
d_uint8x2.ts 87.41 kB ($${\color{red}+516.3\%}$$)
std_bitShiftLeft.ts 103.14 kB ($${\color{red}+513.8\%}$$)
std_normalize.ts 103.14 kB ($${\color{red}+506.1\%}$$)
std_subgroupExclusiveAdd.ts 103.15 kB ($${\color{red}+489.0\%}$$)
d_sint16x4.ts 87.41 kB ($${\color{red}+488.3\%}$$)
std_subgroupAdd.ts 103.14 kB ($${\color{red}+481.0\%}$$)
d_texture3d.ts 87.41 kB ($${\color{red}+465.9\%}$$)
std_textureLoad.ts 103.14 kB ($${\color{red}+462.0\%}$$)
d_memoryLayoutOf.ts 87.41 kB ($${\color{red}+459.1\%}$$)
d_texture1d.ts 87.41 kB ($${\color{red}+458.8\%}$$)
d_snorm8.ts 87.41 kB ($${\color{red}+443.8\%}$$)
std_atomicOr.ts 103.14 kB ($${\color{red}+442.5\%}$$)
d_texture2dArray.ts 87.41 kB ($${\color{red}+441.5\%}$$)
std_subgroupBroadcastFirst.ts 103.15 kB ($${\color{red}+440.8\%}$$)
d_mat3x3f.ts 87.41 kB ($${\color{red}+439.2\%}$$)
std_fwidthCoarse.ts 103.14 kB ($${\color{red}+424.9\%}$$)
d_vec2f.ts 87.41 kB ($${\color{red}+415.1\%}$$)
std_rotateX4.ts 103.14 kB ($${\color{red}+414.9\%}$$)
d_vec2b.ts 87.41 kB ($${\color{red}+407.4\%}$$)
d_float32x3.ts 87.41 kB ($${\color{red}+395.6\%}$$)
std_subgroupXor.ts 103.14 kB ($${\color{red}+392.6\%}$$)
std_subgroupShuffleUp.ts 103.15 kB ($${\color{red}+391.8\%}$$)
d_sint32x4.ts 87.41 kB ($${\color{red}+380.0\%}$$)
d_textureDepth2d.ts 87.41 kB ($${\color{red}+373.6\%}$$)
d_uint32x2.ts 87.41 kB ($${\color{red}+369.6\%}$$)
std_subgroupElect.ts 103.14 kB ($${\color{red}+369.5\%}$$)
std_atomicMax.ts 103.14 kB ($${\color{red}+367.9\%}$$)
std_subgroupShuffle.ts 103.14 kB ($${\color{red}+367.7\%}$$)
std_dpdxCoarse.ts 103.14 kB ($${\color{red}+352.5\%}$$)
d_vec4b.ts 87.41 kB ($${\color{red}+347.1\%}$$)
std_ldexp.ts 103.13 kB ($${\color{red}+342.7\%}$$)
d_float16x4.ts 87.41 kB ($${\color{red}+341.4\%}$$)
d_float32x2.ts 87.41 kB ($${\color{red}+337.5\%}$$)
std_textureBarrier.ts 103.14 kB ($${\color{red}+336.9\%}$$)
std_rotationY4.ts 103.14 kB ($${\color{red}+332.5\%}$$)
d_sizeOf.ts 87.41 kB ($${\color{red}+318.0\%}$$)
d_formatToWGSLType.ts 87.42 kB ($${\color{red}+311.8\%}$$)
std_textureStore.ts 103.14 kB ($${\color{red}+310.9\%}$$)
tgpu_initFromDevice.ts 262.37 kB ($${\color{red}+304.8\%}$$)
d_arrayOf.ts 87.41 kB ($${\color{red}+302.6\%}$$)
std_dpdxFine.ts 103.14 kB ($${\color{red}+296.9\%}$$)
std_and.ts 103.13 kB ($${\color{red}+290.1\%}$$)
d_unorm16x2.ts 87.41 kB ($${\color{red}+286.6\%}$$)
d_u32.ts 87.40 kB ($${\color{red}+285.9\%}$$)
d_builtin.ts 87.41 kB ($${\color{red}+284.7\%}$$)
std_atomicSub.ts 103.14 kB ($${\color{red}+281.2\%}$$)
d_textureDepthCube.ts 87.42 kB ($${\color{red}+279.8\%}$$)
d_textureDepthMultisampled2d.ts 87.43 kB ($${\color{red}+277.6\%}$$)
d_u16.ts 87.40 kB ($${\color{red}+275.9\%}$$)
d_vec4h.ts 87.41 kB ($${\color{red}+275.9\%}$$)
std_faceForward.ts 103.14 kB ($${\color{red}+275.6\%}$$)
std_subgroupAll.ts 103.14 kB ($${\color{red}+268.8\%}$$)
std_inverseSqrt.ts 103.14 kB ($${\color{red}+265.1\%}$$)
d_sint32.ts 87.41 kB ($${\color{red}+258.0\%}$$)
d_vec3i.ts 87.41 kB ($${\color{red}+250.3\%}$$)
d_vec3h.ts 87.41 kB ($${\color{red}+240.0\%}$$)
d_isBuiltin.ts 87.41 kB ($${\color{red}+238.6\%}$$)
d_mat4x4f.ts 87.41 kB ($${\color{red}+237.9\%}$$)
d_invariant.ts 87.41 kB ($${\color{red}+237.1\%}$$)
d_sint32x2.ts 87.41 kB ($${\color{red}+236.6\%}$$)
std_modf.ts 103.13 kB ($${\color{red}+231.5\%}$$)
d_textureCubeArray.ts 87.42 kB ($${\color{red}+225.7\%}$$)
d_uint32x3.ts 87.41 kB ($${\color{red}+223.8\%}$$)
d_vec4u.ts 87.41 kB ($${\color{red}+223.2\%}$$)
std_distance.ts 103.14 kB ($${\color{red}+222.0\%}$$)
std_gt.ts 103.13 kB ($${\color{red}+218.4\%}$$)
d_uint8.ts 87.41 kB ($${\color{red}+216.1\%}$$)
std_textureSampleBaseClampToEdge.ts 103.16 kB ($${\color{red}+214.8\%}$$)
d_uint32x4.ts 87.41 kB ($${\color{red}+200.9\%}$$)
std_textureSample.ts 103.14 kB ($${\color{red}+198.9\%}$$)
d_isContiguous.ts 87.41 kB ($${\color{red}+197.8\%}$$)
d_unorm10_10_10_2.ts 87.42 kB ($${\color{red}+196.8\%}$$)
std_determinant.ts 103.14 kB ($${\color{red}+196.3\%}$$)
d_location.ts 87.41 kB ($${\color{red}+181.0\%}$$)
std_textureGather.ts 103.14 kB ($${\color{red}+179.7\%}$$)
d_uint16x4.ts 87.41 kB ($${\color{red}+174.2\%}$$)
d_matToArray.ts 87.41 kB ($${\color{red}+172.5\%}$$)
std_subgroupBroadcast.ts 103.15 kB ($${\color{red}+172.1\%}$$)
std_neg.ts 103.13 kB ($${\color{red}+171.2\%}$$)
std_all.ts 103.13 kB ($${\color{red}+170.5\%}$$)
std_subgroupInclusiveMul.ts 103.15 kB ($${\color{red}+167.1\%}$$)
std_subgroupBallot.ts 103.14 kB ($${\color{red}+166.6\%}$$)
std_rotateY4.ts 103.14 kB ($${\color{red}+165.4\%}$$)
std_mod.ts 103.13 kB ($${\color{red}+163.8\%}$$)
d_isPackedData.ts 87.41 kB ($${\color{red}+163.0\%}$$)
std_textureDimensions.ts 103.15 kB ($${\color{red}+160.5\%}$$)
std_reflect.ts 103.14 kB ($${\color{red}+153.8\%}$$)
std_refract.ts 103.14 kB ($${\color{red}+151.0\%}$$)
std_scale4.ts 103.14 kB ($${\color{red}+150.1\%}$$)
std_identity3.ts 103.14 kB ($${\color{red}+148.2\%}$$)
std_textureSampleCompareLevel.ts 103.15 kB ($${\color{red}+146.1\%}$$)
d_sint8x2.ts 87.41 kB ($${\color{red}+146.0\%}$$)
d_vec3u.ts 87.41 kB ($${\color{red}+145.1\%}$$)
std_scaling4.ts 103.14 kB ($${\color{red}+144.9\%}$$)
std_subgroupAnd.ts 103.14 kB ($${\color{red}+144.4\%}$$)
std_unpack4x8unorm.ts 103.14 kB ($${\color{red}+143.4\%}$$)
std_textureSampleBias.ts 103.15 kB ($${\color{red}+140.2\%}$$)
d_snorm16x2.ts 87.41 kB ($${\color{red}+138.1\%}$$)
std_subgroupInclusiveAdd.ts 103.15 kB ($${\color{red}+134.7\%}$$)
d_sint8x4.ts 87.41 kB ($${\color{red}+132.7\%}$$)
std_subgroupMax.ts 103.14 kB ($${\color{red}+132.3\%}$$)
d_float32.ts 87.41 kB ($${\color{red}+132.0\%}$$)
std_pack2x16float.ts 103.14 kB ($${\color{red}+129.3\%}$$)
d_alignmentOf.ts 87.41 kB ($${\color{red}+129.0\%}$$)
std_bitcastU32toF32.ts 103.14 kB ($${\color{red}+128.5\%}$$)
tgpu_resolve.ts 262.36 kB ($${\color{red}+125.1\%}$$)
tgpu_slot.ts 262.36 kB ($${\color{red}+124.8\%}$$)
std_subgroupAny.ts 103.14 kB ($${\color{red}+124.4\%}$$)
std_subgroupOr.ts 103.14 kB ($${\color{red}+123.9\%}$$)
d_packedFormats.ts 87.41 kB ($${\color{red}+122.5\%}$$)
std_atan.ts 103.13 kB ($${\color{red}+121.8\%}$$)
tgpu_privateVar.ts 262.37 kB ($${\color{red}+120.7\%}$$)
STATIC_common.ts 57.17 kB ($${\color{red}+119.9\%}$$)
tgpu_workgroupVar.ts 262.37 kB ($${\color{red}+118.9\%}$$)
d_float16x2.ts 87.41 kB ($${\color{red}+116.4\%}$$)
std_max.ts 103.13 kB ($${\color{red}+113.6\%}$$)
std_floor.ts 103.13 kB ($${\color{red}+109.4\%}$$)
std_textureSampleGrad.ts 103.15 kB ($${\color{red}+108.7\%}$$)
std_any.ts 103.13 kB ($${\color{red}+108.7\%}$$)
std_unpack2x16float.ts 103.14 kB ($${\color{red}+107.3\%}$$)
std_sqrt.ts 103.13 kB ($${\color{red}+104.7\%}$$)
tgpu_computeFn.ts 262.37 kB ($${\color{red}+100.5\%}$$)
std_mul.ts 103.13 kB ($${\color{red}+99.9\%}$$)
std_sub.ts 103.13 kB ($${\color{red}+94.7\%}$$)
std_log.ts 103.13 kB ($${\color{red}+93.7\%}$$)
std_rotationZ4.ts 103.14 kB ($${\color{red}+91.4\%}$$)
std_translate4.ts 103.14 kB ($${\color{red}+91.0\%}$$)
std_dot4I8Packed.ts 103.14 kB ($${\color{red}+81.2\%}$$)
std_div.ts 103.13 kB ($${\color{red}+79.7\%}$$)
std_allEq.ts 103.13 kB ($${\color{red}+75.0\%}$$)
d_mat2x2f.ts 87.41 kB ($${\color{red}+74.8\%}$$)
std_fma.ts 103.13 kB ($${\color{red}+73.5\%}$$)
std_degrees.ts 103.14 kB ($${\color{red}+73.3\%}$$)
std_bitShiftRight.ts 103.14 kB ($${\color{red}+70.3\%}$$)
std_radians.ts 103.14 kB ($${\color{red}+70.0\%}$$)
std_countTrailingZeros.ts 103.15 kB ($${\color{red}+68.0\%}$$)
std_extractBits.ts 103.14 kB ($${\color{red}+64.6\%}$$)
std_eq.ts 103.13 kB ($${\color{red}+60.9\%}$$)
common_writeSoA.ts 57.17 kB ($${\color{red}+55.7\%}$$)
std_atan2.ts 103.13 kB ($${\color{red}+46.2\%}$$)
std_firstTrailingBit.ts 103.15 kB ($${\color{red}+45.7\%}$$)
std_smoothstep.ts 103.14 kB ($${\color{red}+43.3\%}$$)
std_ne.ts 103.13 kB ($${\color{red}+37.8\%}$$)
std_isCloseTo.ts 103.14 kB ($${\color{red}+35.5\%}$$)
std_acosh.ts 103.13 kB ($${\color{red}+33.6\%}$$)
std_insertBits.ts 103.14 kB ($${\color{red}+33.6\%}$$)
std_add.ts 103.13 kB ($${\color{red}+31.8\%}$$)
std_or.ts 103.13 kB ($${\color{red}+31.5\%}$$)
std_rotateZ4.ts 103.14 kB ($${\color{red}+22.0\%}$$)
std_ge.ts 103.13 kB ($${\color{red}+20.6\%}$$)
std_saturate.ts 103.14 kB ($${\color{red}+20.2\%}$$)
std_countOneBits.ts 103.14 kB ($${\color{red}+19.0\%}$$)
std_lt.ts 103.13 kB ($${\color{red}+15.8\%}$$)
std_exp.ts 103.13 kB ($${\color{red}+14.0\%}$$)
std_countLeadingZeros.ts 103.15 kB ($${\color{red}+9.2\%}$$)
std_length.ts 103.14 kB ($${\color{red}+9.1\%}$$)
std_clamp.ts 103.13 kB ($${\color{red}+3.4\%}$$)
std_asinh.ts 103.13 kB ($${\color{red}+2.4\%}$$)
std_not.ts 103.13 kB ($${\color{red}+2.2\%}$$)
tgpu_lazy.ts 262.36 kB ($${\color{red}+2.0\%}$$)
std_exp2.ts 103.13 kB ($${\color{red}+2.0\%}$$)
STATIC_std.ts 103.13 kB ($${\color{red}+2.0\%}$$)
std_min.ts 103.13 kB ($${\color{green}-2.9\%}$$)
tgpu_vertexFn.ts 262.36 kB ($${\color{green}-5.9\%}$$)
std_mix.ts 103.13 kB ($${\color{green}-6.4\%}$$)
std_cosh.ts 103.13 kB ($${\color{green}-9.2\%}$$)
std_atanh.ts 103.13 kB ($${\color{green}-9.8\%}$$)
std_transpose.ts 103.14 kB ($${\color{green}-10.3\%}$$)
std_dot.ts 103.13 kB ($${\color{green}-10.5\%}$$)
std_firstLeadingBit.ts 103.14 kB ($${\color{green}-11.0\%}$$)
std_step.ts 103.13 kB ($${\color{green}-13.2\%}$$)
std_cross.ts 103.13 kB ($${\color{green}-14.7\%}$$)
std_abs.ts 103.13 kB ($${\color{green}-15.6\%}$$)
std_trunc.ts 103.13 kB ($${\color{green}-16.3\%}$$)
std_tanh.ts 103.13 kB ($${\color{green}-17.6\%}$$)
std_sinh.ts 103.13 kB ($${\color{green}-18.1\%}$$)
std_cos.ts 103.13 kB ($${\color{green}-18.2\%}$$)
std_asin.ts 103.13 kB ($${\color{green}-19.0\%}$$)
std_sign.ts 103.13 kB ($${\color{green}-19.4\%}$$)
common_fullScreenTriangle.ts 57.18 kB ($${\color{green}-19.7\%}$$)
std_round.ts 103.13 kB ($${\color{green}-19.8\%}$$)
std_acos.ts 103.13 kB ($${\color{green}-20.0\%}$$)
std_sin.ts 103.13 kB ($${\color{green}-20.4\%}$$)
std_dot4U8Packed.ts 103.14 kB ($${\color{green}-20.8\%}$$)
tgpu_fn.ts 262.36 kB ($${\color{green}-24.1\%}$$)
tgpu_comptime.ts 262.36 kB ($${\color{green}-34.5\%}$$)
tgpu_unroll.ts 262.36 kB ($${\color{green}-35.5\%}$$)
tgpu_resolveWithContext.ts 262.37 kB ($${\color{green}-39.0\%}$$)
tgpu_mutableAccessor.ts 262.37 kB ($${\color{green}-40.5\%}$$)
tgpu_init.ts 262.36 kB ($${\color{green}-41.9\%}$$)
tgpu_fragmentFn.ts 262.37 kB ($${\color{green}-43.2\%}$$)
tgpu_accessor.ts 262.36 kB ($${\color{green}-43.8\%}$$)
STATIC_allImports.ts 287.20 kB ($${\color{green}-43.9\%}$$)
tgpu_bindGroupLayout.ts 262.37 kB ($${\color{green}-44.0\%}$$)
tgpu_vertexLayout.ts 262.37 kB ($${\color{green}-45.1\%}$$)
STATIC_tgpu.ts 262.36 kB ($${\color{green}-47.9\%}$$)
STATIC_d.ts 87.40 kB ($${\color{green}-48.8\%}$$)

If you wish to run a comparison for other, slower bundlers, run the 'Tree-shake test' from the GitHub Actions menu.

@aleksanderkatan

Copy link
Copy Markdown
Contributor Author

Bundle size comparison (import * as ... in PR vs import * as ... in target):

🟢 Decreased (max -49.96%) ➖ Unchanged 🔴 Increased (max 33211.15%) ❔ Unknown
158 0 162 0

import * as ... in PR vs import * as ... in target (did bundle size increase?):

Click to reveal the results table (318 entries).
Test tsdown
std_identity3.ts 27.03 kB ($${\color{red}+33211.2\%}$$)
d_textureDepthMultisampled2d.ts 13.49 kB ($${\color{red}+7007.6\%}$$)
std_ceil.ts 66.06 kB ($${\color{red}+6246.9\%}$$)
std_dpdyFine.ts 15.08 kB ($${\color{red}+4437.0\%}$$)
d_snorm8x4.ts 20.95 kB ($${\color{red}+3474.8\%}$$)
std_fract.ts 66.05 kB ($${\color{red}+3155.2\%}$$)
std_subgroupOr.ts 24.03 kB ($${\color{red}+2084.9\%}$$)
std_subgroupInclusiveMul.ts 24.03 kB ($${\color{red}+2026.8\%}$$)
std_abs.ts 66.06 kB ($${\color{red}+1697.0\%}$$)
d_isLocationAttrib.ts 758 B ($${\color{red}+1549.8\%}$$)
std_subgroupBroadcastFirst.ts 24.03 kB ($${\color{red}+1546.2\%}$$)
d_mat2x2f.ts 27.03 kB ($${\color{red}+1514.9\%}$$)
d_isDecorated.ts 758 B ($${\color{red}+1399.4\%}$$)
d_vec2i.ts 19.45 kB ($${\color{red}+1306.7\%}$$)
std_atomicStore.ts 15.84 kB ($${\color{red}+1124.9\%}$$)
STATIC_nonUseGpuFunction.ts 24 B ($${\color{red}+938.1\%}$$)
tgpu_init.ts 262.36 kB ($${\color{red}+921.2\%}$$)
d_textureCube.ts 13.48 kB ($${\color{red}+714.0\%}$$)
d_struct.ts 3.60 kB ($${\color{red}+709.6\%}$$)
d_snorm8x2.ts 20.95 kB ($${\color{red}+703.3\%}$$)
std_textureSampleBias.ts 25.79 kB ($${\color{red}+645.4\%}$$)
tgpu_slot.ts 262.36 kB ($${\color{red}+559.0\%}$$)
d_align.ts 26.36 kB ($${\color{red}+548.0\%}$$)
d_memoryLayoutOf.ts 41.99 kB ($${\color{red}+539.6\%}$$)
d_textureDepth2d.ts 13.46 kB ($${\color{red}+483.3\%}$$)
std_textureLoad.ts 25.79 kB ($${\color{red}+461.4\%}$$)
std_atan.ts 66.06 kB ($${\color{red}+421.8\%}$$)
std_translation4.ts 27.03 kB ($${\color{red}+414.8\%}$$)
d_texture2d.ts 13.47 kB ($${\color{red}+335.4\%}$$)
tgpu_workgroupVar.ts 262.37 kB ($${\color{red}+331.7\%}$$)
std_mix.ts 66.05 kB ($${\color{red}+312.8\%}$$)
d_arrayOf.ts 26.21 kB ($${\color{red}+310.5\%}$$)
d_bool.ts 13.02 kB ($${\color{red}+295.8\%}$$)
d_atomic.ts 779 B ($${\color{red}+283.9\%}$$)
d_sint16.ts 20.95 kB ($${\color{red}+265.9\%}$$)
d_isDisarray.ts 1.11 kB ($${\color{red}+257.9\%}$$)
std_bitShiftRight.ts 48.41 kB ($${\color{red}+241.5\%}$$)
std_subgroupExclusiveMul.ts 24.03 kB ($${\color{red}+233.4\%}$$)
std_pow.ts 66.06 kB ($${\color{red}+231.7\%}$$)
d_ptrWorkgroup.ts 860 B ($${\color{red}+230.5\%}$$)
d_i32.ts 13.02 kB ($${\color{red}+214.2\%}$$)
std_extractBits.ts 66.06 kB ($${\color{red}+209.3\%}$$)
std_pack4x8unorm.ts 35.99 kB ($${\color{red}+204.1\%}$$)
d_sizeOf.ts 24.67 kB ($${\color{red}+202.9\%}$$)
d_Void.ts 734 B ($${\color{red}+197.9\%}$$)
d_vec2f.ts 19.45 kB ($${\color{red}+192.0\%}$$)
tgpu_unroll.ts 262.36 kB ($${\color{red}+190.2\%}$$)
d_sint16x4.ts 20.95 kB ($${\color{red}+188.3\%}$$)
common_fullScreenTriangle.ts 40.41 kB ($${\color{red}+183.1\%}$$)
d_uint16x4.ts 20.95 kB ($${\color{red}+177.3\%}$$)
std_min.ts 66.06 kB ($${\color{red}+170.4\%}$$)
d_float16x2.ts 20.95 kB ($${\color{red}+163.4\%}$$)
d_float32x2.ts 20.95 kB ($${\color{red}+161.9\%}$$)
d_textureStorage2dArray.ts 1.03 kB ($${\color{red}+159.3\%}$$)
std_translate4.ts 49.17 kB ($${\color{red}+158.1\%}$$)
std_isCloseTo.ts 51.79 kB ($${\color{red}+155.0\%}$$)
std_subgroupAny.ts 24.03 kB ($${\color{red}+154.5\%}$$)
std_dpdyCoarse.ts 15.08 kB ($${\color{red}+154.3\%}$$)
std_rotationY4.ts 27.03 kB ($${\color{red}+145.9\%}$$)
d_ptrStorage.ts 856 B ($${\color{red}+145.3\%}$$)
d_formatToWGSLType.ts 20.94 kB ($${\color{red}+140.7\%}$$)
std_log.ts 66.06 kB ($${\color{red}+137.0\%}$$)
d_textureDepthCube.ts 13.47 kB ($${\color{red}+133.0\%}$$)
std_atomicMin.ts 15.84 kB ($${\color{red}+132.1\%}$$)
std_allEq.ts 51.79 kB ($${\color{red}+127.7\%}$$)
std_frexp.ts 66.05 kB ($${\color{red}+124.8\%}$$)
std_inverseSqrt.ts 66.06 kB ($${\color{red}+123.4\%}$$)
std_textureSampleCompareLevel.ts 25.79 kB ($${\color{red}+122.6\%}$$)
std_le.ts 51.79 kB ($${\color{red}+118.0\%}$$)
d_uint8.ts 20.94 kB ($${\color{red}+112.3\%}$$)
tgpu_resolve.ts 262.36 kB ($${\color{red}+111.0\%}$$)
d_float32x3.ts 20.95 kB ($${\color{red}+108.8\%}$$)
std_eq.ts 51.79 kB ($${\color{red}+105.1\%}$$)
d_vec2u.ts 19.45 kB ($${\color{red}+103.9\%}$$)
d_isAlignAttrib.ts 755 B ($${\color{red}+100.4\%}$$)
std_subgroupInclusiveAdd.ts 24.03 kB ($${\color{red}+99.6\%}$$)
std_step.ts 66.06 kB ($${\color{red}+99.2\%}$$)
std_sign.ts 66.06 kB ($${\color{red}+98.5\%}$$)
std_bitcastU32toF32.ts 44.23 kB ($${\color{red}+95.9\%}$$)
std_dot4U8Packed.ts 66.05 kB ($${\color{red}+94.2\%}$$)
tgpu_fn.ts 262.36 kB ($${\color{red}+91.3\%}$$)
d_vec4u.ts 19.45 kB ($${\color{red}+90.7\%}$$)
d_isWgslData.ts 1.31 kB ($${\color{red}+88.7\%}$$)
std_dot.ts 66.05 kB ($${\color{red}+87.4\%}$$)
std_exp.ts 66.06 kB ($${\color{red}+86.3\%}$$)
d_isContiguous.ts 24.67 kB ($${\color{red}+85.8\%}$$)
d_isUnstruct.ts 1.11 kB ($${\color{red}+84.1\%}$$)
tgpu_resolveWithContext.ts 262.37 kB ($${\color{red}+83.9\%}$$)
d_uint16.ts 20.95 kB ($${\color{red}+82.1\%}$$)
d_uint32.ts 20.95 kB ($${\color{red}+80.9\%}$$)
std_discard.ts 14.23 kB ($${\color{red}+79.1\%}$$)
std_modf.ts 66.05 kB ($${\color{red}+77.0\%}$$)
d_sint8.ts 20.95 kB ($${\color{red}+76.8\%}$$)
std_arrayLength.ts 14.48 kB ($${\color{red}+75.8\%}$$)
std_tan.ts 66.06 kB ($${\color{red}+74.8\%}$$)
d_vec2b.ts 19.45 kB ($${\color{red}+74.0\%}$$)
d_ptrPrivate.ts 858 B ($${\color{red}+70.9\%}$$)
STATIC_useGpuFunction.ts 282 B ($${\color{red}+70.7\%}$$)
std_dpdx.ts 15.08 kB ($${\color{red}+69.2\%}$$)
d_uint16x2.ts 20.95 kB ($${\color{red}+68.8\%}$$)
std_rotationZ4.ts 27.03 kB ($${\color{red}+68.7\%}$$)
d_u16.ts 13.04 kB ($${\color{red}+66.4\%}$$)
d_location.ts 26.36 kB ($${\color{red}+65.2\%}$$)
d_vec3i.ts 19.45 kB ($${\color{red}+65.0\%}$$)
std_sub.ts 48.41 kB ($${\color{red}+64.5\%}$$)
tgpu_vertexLayout.ts 262.37 kB ($${\color{red}+59.3\%}$$)
d_uint32x3.ts 20.95 kB ($${\color{red}+59.3\%}$$)
d_vec4h.ts 19.45 kB ($${\color{red}+59.3\%}$$)
std_atomicXor.ts 15.84 kB ($${\color{red}+58.3\%}$$)
std_copy.ts 14.47 kB ($${\color{red}+56.5\%}$$)
std_fma.ts 66.06 kB ($${\color{red}+55.9\%}$$)
STATIC_common.ts 57.34 kB ($${\color{red}+53.5\%}$$)
STATIC_std.ts 105.97 kB ($${\color{red}+50.7\%}$$)
d_u32.ts 13.02 kB ($${\color{red}+50.2\%}$$)
std_fwidthFine.ts 15.08 kB ($${\color{red}+50.2\%}$$)
std_atomicLoad.ts 15.83 kB ($${\color{red}+45.5\%}$$)
d_packedFormats.ts 20.97 kB ($${\color{red}+45.4\%}$$)
d_float32.ts 20.95 kB ($${\color{red}+44.4\%}$$)
std_or.ts 51.78 kB ($${\color{red}+43.7\%}$$)
d_isWgslStruct.ts 755 B ($${\color{red}+42.2\%}$$)
std_identity4.ts 27.03 kB ($${\color{red}+42.2\%}$$)
tgpu_computeFn.ts 262.37 kB ($${\color{red}+41.2\%}$$)
d_sint32x2.ts 20.95 kB ($${\color{red}+40.9\%}$$)
std_trunc.ts 66.06 kB ($${\color{red}+40.2\%}$$)
std_smoothstep.ts 66.06 kB ($${\color{red}+38.6\%}$$)
d_f32.ts 13.02 kB ($${\color{red}+36.7\%}$$)
d_disarrayOf.ts 15.06 kB ($${\color{red}+35.4\%}$$)
d_textureStorage1d.ts 1.01 kB ($${\color{red}+35.4\%}$$)
std_rotateZ4.ts 49.18 kB ($${\color{red}+34.2\%}$$)
std_cosh.ts 66.06 kB ($${\color{red}+33.3\%}$$)
d_sampler.ts 742 B ($${\color{red}+31.0\%}$$)
std_subgroupShuffleXor.ts 24.03 kB ($${\color{red}+29.9\%}$$)
std_countOneBits.ts 66.06 kB ($${\color{red}+29.9\%}$$)
d_isBuiltinAttrib.ts 757 B ($${\color{red}+28.7\%}$$)
std_atomicAdd.ts 15.84 kB ($${\color{red}+28.2\%}$$)
std_subgroupMin.ts 24.03 kB ($${\color{red}+26.4\%}$$)
std_bitcastU32toI32.ts 44.24 kB ($${\color{red}+23.8\%}$$)
d_sint32x4.ts 20.95 kB ($${\color{red}+22.2\%}$$)
std_dpdxFine.ts 15.08 kB ($${\color{red}+21.1\%}$$)
d_vec3u.ts 19.45 kB ($${\color{red}+20.3\%}$$)
std_asinh.ts 66.06 kB ($${\color{red}+20.2\%}$$)
std_exp2.ts 66.06 kB ($${\color{red}+17.1\%}$$)
tgpu_fragmentFn.ts 262.37 kB ($${\color{red}+17.0\%}$$)
std_add.ts 48.41 kB ($${\color{red}+16.8\%}$$)
std_subgroupShuffleDown.ts 24.03 kB ($${\color{red}+15.1\%}$$)
std_acos.ts 66.06 kB ($${\color{red}+14.6\%}$$)
std_rotationX4.ts 27.03 kB ($${\color{red}+14.5\%}$$)
d_mat4x4f.ts 27.03 kB ($${\color{red}+14.1\%}$$)
d_ptrUniform.ts 852 B ($${\color{red}+13.9\%}$$)
std_distance.ts 66.05 kB ($${\color{red}+13.2\%}$$)
d_alignmentOf.ts 21.90 kB ($${\color{red}+12.0\%}$$)
d_float16.ts 20.95 kB ($${\color{red}+7.2\%}$$)
std_round.ts 66.06 kB ($${\color{red}+5.9\%}$$)
d_uint32x4.ts 20.95 kB ($${\color{red}+5.6\%}$$)
d_mat3x3f.ts 27.03 kB ($${\color{red}+5.4\%}$$)
tgpu_comptime.ts 262.36 kB ($${\color{red}+5.2\%}$$)
std_subgroupAll.ts 24.03 kB ($${\color{red}+4.2\%}$$)
d_texture2dArray.ts 13.49 kB ($${\color{red}+4.1\%}$$)
tgpu_privateVar.ts 262.37 kB ($${\color{red}+1.9\%}$$)
std_dpdy.ts 15.08 kB ($${\color{red}+1.8\%}$$)
d_f16.ts 13.02 kB ($${\color{red}+0.8\%}$$)
d_sint8x4.ts 20.95 kB ($${\color{green}-1.3\%}$$)
STATIC_d.ts 89.72 kB ($${\color{green}-1.7\%}$$)
d_unorm8x4.ts 20.95 kB ($${\color{green}-1.8\%}$$)
d_sint32.ts 20.95 kB ($${\color{green}-1.8\%}$$)
d_size.ts 26.35 kB ($${\color{green}-1.9\%}$$)
std_dpdxCoarse.ts 15.08 kB ($${\color{green}-1.9\%}$$)
d_vec3f.ts 19.45 kB ($${\color{green}-4.0\%}$$)
d_isSizeAttrib.ts 754 B ($${\color{green}-4.3\%}$$)
d_sint32x3.ts 20.95 kB ($${\color{green}-4.7\%}$$)
d_unorm8x4_bgra.ts 20.95 kB ($${\color{green}-5.8\%}$$)
d_isAtomic.ts 755 B ($${\color{green}-6.1\%}$$)
std_range.ts 14.89 kB ($${\color{green}-6.3\%}$$)
std_workgroupBarrier.ts 15.84 kB ($${\color{green}-6.8\%}$$)
std_atomicMax.ts 15.84 kB ($${\color{green}-7.4\%}$$)
d_unorm8x2.ts 20.95 kB ($${\color{green}-8.7\%}$$)
std_and.ts 51.78 kB ($${\color{green}-8.7\%}$$)
std_textureSampleGrad.ts 25.79 kB ($${\color{green}-9.3\%}$$)
std_subgroupMul.ts 24.03 kB ($${\color{green}-9.4\%}$$)
tgpu_lazy.ts 262.36 kB ($${\color{green}-9.5\%}$$)
std_identity2.ts 27.03 kB ($${\color{green}-9.9\%}$$)
std_textureBarrier.ts 15.84 kB ($${\color{green}-11.0\%}$$)
std_reflect.ts 66.06 kB ($${\color{green}-12.5\%}$$)
STATIC_allImports.ts 292.22 kB ($${\color{green}-12.5\%}$$)
std_atomicOr.ts 15.84 kB ($${\color{green}-12.6\%}$$)
std_quantizeToF16.ts 66.06 kB ($${\color{green}-12.9\%}$$)
d_isInterpolateAttrib.ts 761 B ($${\color{green}-13.2\%}$$)
std_sin.ts 66.06 kB ($${\color{green}-13.6\%}$$)
std_textureSample.ts 25.79 kB ($${\color{green}-14.8\%}$$)
d_vec2h.ts 19.45 kB ($${\color{green}-15.0\%}$$)
std_scaling4.ts 27.03 kB ($${\color{green}-15.6\%}$$)
d_float32x4.ts 20.95 kB ($${\color{green}-15.8\%}$$)
std_determinant.ts 66.06 kB ($${\color{green}-16.2\%}$$)
tgpu_initFromDevice.ts 262.37 kB ($${\color{green}-16.8\%}$$)
std_textureGather.ts 25.78 kB ($${\color{green}-16.9\%}$$)
std_fwidth.ts 15.08 kB ($${\color{green}-17.7\%}$$)
d_sint8x2.ts 20.95 kB ($${\color{green}-18.9\%}$$)
d_unorm16x4.ts 20.95 kB ($${\color{green}-19.6\%}$$)
d_isBuiltin.ts 24.62 kB ($${\color{green}-19.7\%}$$)
std_bitShiftLeft.ts 48.41 kB ($${\color{green}-19.8\%}$$)
d_snorm8.ts 20.95 kB ($${\color{green}-20.2\%}$$)
std_atomicAnd.ts 15.84 kB ($${\color{green}-20.4\%}$$)
d_getLongestContiguousPrefix.ts 24.69 kB ($${\color{green}-20.8\%}$$)
d_float16x4.ts 20.95 kB ($${\color{green}-20.8\%}$$)
std_subgroupShuffleUp.ts 24.03 kB ($${\color{green}-20.9\%}$$)
d_vec4i.ts 19.45 kB ($${\color{green}-21.1\%}$$)
std_neg.ts 48.40 kB ($${\color{green}-21.4\%}$$)
std_ge.ts 51.79 kB ($${\color{green}-21.8\%}$$)
d_textureDepthCubeArray.ts 13.49 kB ($${\color{green}-22.6\%}$$)
std_transpose.ts 66.06 kB ($${\color{green}-23.1\%}$$)
std_floor.ts 66.06 kB ($${\color{green}-23.9\%}$$)
std_select.ts 51.79 kB ($${\color{green}-24.1\%}$$)
d_isData.ts 1.81 kB ($${\color{green}-24.5\%}$$)
tgpu_bindGroupLayout.ts 262.37 kB ($${\color{green}-25.3\%}$$)
std_radians.ts 66.06 kB ($${\color{green}-25.9\%}$$)
d_texture1d.ts 13.47 kB ($${\color{green}-26.5\%}$$)
STATIC_tgpu.ts 262.36 kB ($${\color{green}-26.8\%}$$)
std_any.ts 51.79 kB ($${\color{green}-27.1\%}$$)
d_snorm16x4.ts 20.95 kB ($${\color{green}-27.6\%}$$)
std_extensionEnabled.ts 14.63 kB ($${\color{green}-27.6\%}$$)
d_interpolate.ts 26.36 kB ($${\color{green}-27.6\%}$$)
std_scale4.ts 49.17 kB ($${\color{green}-29.0\%}$$)
std_atanh.ts 66.06 kB ($${\color{green}-29.3\%}$$)
std_mod.ts 48.41 kB ($${\color{green}-29.7\%}$$)
d_ptrHandle.ts 851 B ($${\color{green}-29.8\%}$$)
std_textureSampleBaseClampToEdge.ts 25.79 kB ($${\color{green}-30.5\%}$$)
d_sint16x2.ts 20.95 kB ($${\color{green}-30.8\%}$$)
std_reverseBits.ts 66.06 kB ($${\color{green}-30.9\%}$$)
tgpu_const.ts 262.36 kB ($${\color{green}-31.1\%}$$)
std_subgroupBallot.ts 24.03 kB ($${\color{green}-32.4\%}$$)
std_saturate.ts 66.06 kB ($${\color{green}-32.6\%}$$)
std_firstTrailingBit.ts 66.06 kB ($${\color{green}-32.8\%}$$)
d_unorm8.ts 20.95 kB ($${\color{green}-32.9\%}$$)
std_isBeingTranspiled.ts 14.51 kB ($${\color{green}-33.2\%}$$)
std_subgroupXor.ts 24.03 kB ($${\color{green}-33.4\%}$$)
tgpu_vertexFn.ts 262.36 kB ($${\color{green}-34.1\%}$$)
tgpu_accessor.ts 262.36 kB ($${\color{green}-34.3\%}$$)
d_vec3h.ts 19.45 kB ($${\color{green}-34.4\%}$$)
d_uint32x2.ts 20.95 kB ($${\color{green}-34.7\%}$$)
common_writeSoA.ts 41.25 kB ($${\color{green}-34.7\%}$$)
std_subgroupExclusiveAdd.ts 24.03 kB ($${\color{green}-34.7\%}$$)
std_gt.ts 51.79 kB ($${\color{green}-34.8\%}$$)
std_max.ts 66.06 kB ($${\color{green}-35.0\%}$$)
d_textureDepth2dArray.ts 13.48 kB ($${\color{green}-35.6\%}$$)
std_firstLeadingBit.ts 66.06 kB ($${\color{green}-35.7\%}$$)
std_textureSampleCompare.ts 25.79 kB ($${\color{green}-35.7\%}$$)
d_textureMultisampled2d.ts 13.50 kB ($${\color{green}-35.9\%}$$)
d_texture3d.ts 13.47 kB ($${\color{green}-36.2\%}$$)
std_countLeadingZeros.ts 66.06 kB ($${\color{green}-36.3\%}$$)
std_storageBarrier.ts 15.84 kB ($${\color{green}-36.4\%}$$)
d_ptrFn.ts 859 B ($${\color{green}-36.5\%}$$)
std_insertBits.ts 66.06 kB ($${\color{green}-36.5\%}$$)
std_dot4I8Packed.ts 66.06 kB ($${\color{green}-36.7\%}$$)
std_subgroupAdd.ts 24.03 kB ($${\color{green}-36.7\%}$$)
d_ref.ts 4.79 kB ($${\color{green}-37.0\%}$$)
d_snorm16.ts 20.95 kB ($${\color{green}-37.1\%}$$)
std_subgroupMax.ts 24.03 kB ($${\color{green}-37.4\%}$$)
std_acosh.ts 66.06 kB ($${\color{green}-37.6\%}$$)
d_deepEqual.ts 2.19 kB ($${\color{green}-37.9\%}$$)
d_textureExternal.ts 873 B ($${\color{green}-38.4\%}$$)
d_unorm10_10_10_2.ts 20.95 kB ($${\color{green}-38.5\%}$$)
std_lt.ts 51.79 kB ($${\color{green}-38.8\%}$$)
std_degrees.ts 66.06 kB ($${\color{green}-39.4\%}$$)
std_ne.ts 51.79 kB ($${\color{green}-39.8\%}$$)
std_sinh.ts 66.06 kB ($${\color{green}-39.9\%}$$)
d_unorm16x2.ts 20.95 kB ($${\color{green}-40.2\%}$$)
d_textureStorage2d.ts 1.01 kB ($${\color{green}-40.4\%}$$)
d_builtin.ts 28.68 kB ($${\color{green}-40.8\%}$$)
std_subgroupBroadcast.ts 24.03 kB ($${\color{green}-40.8\%}$$)
d_isLooseData.ts 1.16 kB ($${\color{green}-40.9\%}$$)
std_getTargetShaderLanguage.ts 14.58 kB ($${\color{green}-41.2\%}$$)
std_cross.ts 66.06 kB ($${\color{green}-41.5\%}$$)
std_unpack2x16float.ts 35.99 kB ($${\color{green}-41.8\%}$$)
std_refract.ts 66.06 kB ($${\color{green}-41.8\%}$$)
std_div.ts 48.41 kB ($${\color{green}-41.9\%}$$)
d_uint8x4.ts 20.95 kB ($${\color{green}-42.1\%}$$)
std_rotateY4.ts 49.18 kB ($${\color{green}-42.2\%}$$)
std_asin.ts 66.06 kB ($${\color{green}-42.3\%}$$)
std_unpack4x8unorm.ts 35.99 kB ($${\color{green}-42.7\%}$$)
std_cos.ts 66.06 kB ($${\color{green}-43.0\%}$$)
std_tanh.ts 66.06 kB ($${\color{green}-43.2\%}$$)
std_atan2.ts 66.06 kB ($${\color{green}-43.3\%}$$)
std_clamp.ts 66.06 kB ($${\color{green}-43.6\%}$$)
d_matToArray.ts 27.17 kB ($${\color{green}-43.6\%}$$)
std_textureDimensions.ts 25.78 kB ($${\color{green}-43.9\%}$$)
d_isLooseDecorated.ts 1.12 kB ($${\color{green}-43.9\%}$$)
d_isPackedData.ts 21.01 kB ($${\color{green}-44.0\%}$$)
std_log2.ts 66.06 kB ($${\color{green}-44.0\%}$$)
std_mul.ts 48.41 kB ($${\color{green}-44.5\%}$$)
std_textureStore.ts 25.79 kB ($${\color{green}-44.9\%}$$)
std_subgroupElect.ts 24.03 kB ($${\color{green}-44.9\%}$$)
std_fwidthCoarse.ts 15.08 kB ($${\color{green}-45.2\%}$$)
d_vec3b.ts 19.45 kB ($${\color{green}-45.3\%}$$)
d_vec4b.ts 19.45 kB ($${\color{green}-45.3\%}$$)
std_not.ts 51.79 kB ($${\color{green}-45.6\%}$$)
std_pack2x16float.ts 35.99 kB ($${\color{green}-45.9\%}$$)
d_isPtr.ts 752 B ($${\color{green}-46.2\%}$$)
std_textureSampleLevel.ts 25.79 kB ($${\color{green}-46.3\%}$$)
d_textureCubeArray.ts 13.50 kB ($${\color{green}-46.4\%}$$)
std_normalize.ts 66.06 kB ($${\color{green}-46.6\%}$$)
d_unorm16.ts 20.95 kB ($${\color{green}-46.7\%}$$)
std_ldexp.ts 66.06 kB ($${\color{green}-46.7\%}$$)
std_countTrailingZeros.ts 66.06 kB ($${\color{green}-46.8\%}$$)
std_subgroupShuffle.ts 24.03 kB ($${\color{green}-46.8\%}$$)
d_isWgslArray.ts 754 B ($${\color{green}-47.1\%}$$)
tgpu_mutableAccessor.ts 262.37 kB ($${\color{green}-47.1\%}$$)
d_textureStorage3d.ts 1.01 kB ($${\color{green}-47.4\%}$$)
std_faceForward.ts 66.06 kB ($${\color{green}-47.4\%}$$)
std_all.ts 51.79 kB ($${\color{green}-47.5\%}$$)
d_unstruct.ts 1.55 kB ($${\color{green}-47.6\%}$$)
d_invariant.ts 26.73 kB ($${\color{green}-47.8\%}$$)
d_uint8x2.ts 20.95 kB ($${\color{green}-47.9\%}$$)
std_rotateX4.ts 49.17 kB ($${\color{green}-48.1\%}$$)
d_vec4f.ts 19.45 kB ($${\color{green}-48.2\%}$$)
std_length.ts 66.05 kB ($${\color{green}-48.3\%}$$)
std_subgroupAnd.ts 24.03 kB ($${\color{green}-48.9\%}$$)
d_snorm16x2.ts 20.95 kB ($${\color{green}-49.9\%}$$)
d_comparisonSampler.ts 753 B ($${\color{green}-50.0\%}$$)

import { ... } in PR vs import * as ... in PR (is the library tree-Shakeable?):

Click to reveal the results table (297 entries).
Test tsdown
d_Void.ts 87.40 kB ($${\color{red}+12093.7\%}$$)
d_sampler.ts 87.41 kB ($${\color{red}+11962.7\%}$$)
d_isPtr.ts 87.41 kB ($${\color{red}+11802.0\%}$$)
d_comparisonSampler.ts 87.42 kB ($${\color{red}+11787.8\%}$$)
d_isSizeAttrib.ts 87.41 kB ($${\color{red}+11771.4\%}$$)
d_isWgslArray.ts 87.41 kB ($${\color{red}+11771.2\%}$$)
d_isAlignAttrib.ts 87.41 kB ($${\color{red}+11755.8\%}$$)
d_isWgslStruct.ts 87.41 kB ($${\color{red}+11755.6\%}$$)
d_isAtomic.ts 87.41 kB ($${\color{red}+11755.1\%}$$)
d_isBuiltinAttrib.ts 87.42 kB ($${\color{red}+11724.7\%}$$)
d_isLocationAttrib.ts 87.42 kB ($${\color{red}+11709.2\%}$$)
d_isDecorated.ts 87.41 kB ($${\color{red}+11708.6\%}$$)
d_isInterpolateAttrib.ts 87.42 kB ($${\color{red}+11663.1\%}$$)
d_atomic.ts 87.41 kB ($${\color{red}+11389.6\%}$$)
d_ptrHandle.ts 87.41 kB ($${\color{red}+10417.9\%}$$)
d_ptrUniform.ts 87.41 kB ($${\color{red}+10405.6\%}$$)
d_ptrStorage.ts 87.41 kB ($${\color{red}+10356.5\%}$$)
d_ptrPrivate.ts 87.41 kB ($${\color{red}+10332.2\%}$$)
d_ptrFn.ts 87.41 kB ($${\color{red}+10319.4\%}$$)
d_ptrWorkgroup.ts 87.41 kB ($${\color{red}+10308.1\%}$$)
d_textureExternal.ts 87.42 kB ($${\color{red}+10153.5\%}$$)
d_textureStorage1d.ts 87.42 kB ($${\color{red}+8532.0\%}$$)
d_textureStorage2d.ts 87.42 kB ($${\color{red}+8532.0\%}$$)
d_textureStorage3d.ts 87.42 kB ($${\color{red}+8532.0\%}$$)
d_textureStorage2dArray.ts 87.42 kB ($${\color{red}+8385.2\%}$$)
d_isDisarray.ts 87.41 kB ($${\color{red}+7758.5\%}$$)
d_isUnstruct.ts 87.41 kB ($${\color{red}+7758.5\%}$$)
d_isLooseDecorated.ts 87.42 kB ($${\color{red}+7711.0\%}$$)
d_isLooseData.ts 87.41 kB ($${\color{red}+7447.1\%}$$)
d_isWgslData.ts 87.41 kB ($${\color{red}+6569.7\%}$$)
d_unstruct.ts 87.41 kB ($${\color{red}+5547.1\%}$$)
d_isData.ts 87.41 kB ($${\color{red}+4735.4\%}$$)
d_deepEqual.ts 87.41 kB ($${\color{red}+3886.9\%}$$)
d_struct.ts 87.41 kB ($${\color{red}+2324.9\%}$$)
d_ref.ts 87.40 kB ($${\color{red}+1725.4\%}$$)
std_discard.ts 103.14 kB ($${\color{red}+624.7\%}$$)
std_copy.ts 103.13 kB ($${\color{red}+612.6\%}$$)
std_arrayLength.ts 103.14 kB ($${\color{red}+612.4\%}$$)
std_isBeingTranspiled.ts 103.15 kB ($${\color{red}+610.8\%}$$)
std_getTargetShaderLanguage.ts 103.15 kB ($${\color{red}+607.7\%}$$)
std_extensionEnabled.ts 103.15 kB ($${\color{red}+605.2\%}$$)
std_range.ts 103.13 kB ($${\color{red}+592.4\%}$$)
std_dpdx.ts 103.13 kB ($${\color{red}+584.1\%}$$)
std_fwidthCoarse.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_dpdxCoarse.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_dpdyCoarse.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_fwidthFine.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_dpdxFine.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_dpdyFine.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_fwidth.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_dpdy.ts 103.13 kB ($${\color{red}+583.9\%}$$)
d_bool.ts 87.40 kB ($${\color{red}+571.4\%}$$)
d_f16.ts 87.40 kB ($${\color{red}+571.4\%}$$)
d_f32.ts 87.40 kB ($${\color{red}+571.4\%}$$)
d_i32.ts 87.40 kB ($${\color{red}+571.4\%}$$)
d_u32.ts 87.40 kB ($${\color{red}+571.4\%}$$)
d_u16.ts 87.40 kB ($${\color{red}+570.2\%}$$)
std_atomicLoad.ts 103.14 kB ($${\color{red}+551.5\%}$$)
std_textureBarrier.ts 103.14 kB ($${\color{red}+551.2\%}$$)
std_atomicStore.ts 103.14 kB ($${\color{red}+551.2\%}$$)
std_workgroupBarrier.ts 103.15 kB ($${\color{red}+551.0\%}$$)
std_storageBarrier.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicAdd.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicAnd.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicMax.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicMin.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicSub.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicXor.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicOr.ts 103.14 kB ($${\color{red}+551.0\%}$$)
d_textureDepth2d.ts 87.41 kB ($${\color{red}+549.3\%}$$)
d_textureDepthCube.ts 87.42 kB ($${\color{red}+549.1\%}$$)
d_texture1d.ts 87.41 kB ($${\color{red}+548.8\%}$$)
d_texture2d.ts 87.41 kB ($${\color{red}+548.8\%}$$)
d_texture3d.ts 87.41 kB ($${\color{red}+548.8\%}$$)
d_textureDepth2dArray.ts 87.42 kB ($${\color{red}+548.5\%}$$)
d_textureCube.ts 87.41 kB ($${\color{red}+548.5\%}$$)
d_textureDepthCubeArray.ts 87.42 kB ($${\color{red}+548.3\%}$$)
d_textureDepthMultisampled2d.ts 87.43 kB ($${\color{red}+548.2\%}$$)
d_texture2dArray.ts 87.41 kB ($${\color{red}+548.0\%}$$)
d_textureCubeArray.ts 87.42 kB ($${\color{red}+547.7\%}$$)
d_textureMultisampled2d.ts 87.42 kB ($${\color{red}+547.7\%}$$)
d_disarrayOf.ts 87.41 kB ($${\color{red}+480.3\%}$$)
d_vec2b.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec2f.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec2h.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec2i.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec2u.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec3b.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec3f.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec3h.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec3i.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec3u.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec4b.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec4f.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec4h.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec4i.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec4u.ts 87.41 kB ($${\color{red}+349.4\%}$$)
std_subgroupAdd.ts 103.14 kB ($${\color{red}+329.3\%}$$)
std_subgroupBroadcastFirst.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupExclusiveAdd.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupExclusiveMul.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupInclusiveAdd.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupInclusiveMul.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupShuffleDown.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupShuffleXor.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupBroadcast.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupShuffleUp.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupShuffle.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupBallot.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupElect.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupAll.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupAnd.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupAny.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupMax.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupMin.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupMul.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupXor.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupOr.ts 103.14 kB ($${\color{red}+329.2\%}$$)
d_formatToWGSLType.ts 87.42 kB ($${\color{red}+317.4\%}$$)
d_uint8.ts 87.41 kB ($${\color{red}+317.3\%}$$)
d_unorm10_10_10_2.ts 87.42 kB ($${\color{red}+317.3\%}$$)
d_unorm8x4_bgra.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float16x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float16x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float32x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float32x3.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float32x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_snorm16x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_snorm16x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_unorm16x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_unorm16x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint16x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint16x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint32x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint32x3.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint32x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_snorm8x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_snorm8x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint16x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint16x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint32x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint32x3.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint32x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_unorm8x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_unorm8x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float16.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float32.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint8x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint8x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_snorm16.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint8x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint8x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_unorm16.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint16.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint32.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_snorm8.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint16.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint32.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_unorm8.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint8.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_packedFormats.ts 87.41 kB ($${\color{red}+316.9\%}$$)
d_isPackedData.ts 87.41 kB ($${\color{red}+316.0\%}$$)
std_textureDimensions.ts 103.15 kB ($${\color{red}+300.1\%}$$)
std_textureGather.ts 103.14 kB ($${\color{red}+300.0\%}$$)
std_textureSampleBaseClampToEdge.ts 103.16 kB ($${\color{red}+300.0\%}$$)
std_textureSampleCompareLevel.ts 103.15 kB ($${\color{red}+300.0\%}$$)
std_textureSampleCompare.ts 103.15 kB ($${\color{red}+300.0\%}$$)
std_textureSampleLevel.ts 103.15 kB ($${\color{red}+300.0\%}$$)
std_textureSampleBias.ts 103.15 kB ($${\color{red}+300.0\%}$$)
std_textureSampleGrad.ts 103.15 kB ($${\color{red}+300.0\%}$$)
std_textureSample.ts 103.14 kB ($${\color{red}+299.9\%}$$)
std_textureStore.ts 103.14 kB ($${\color{red}+299.9\%}$$)
std_textureLoad.ts 103.14 kB ($${\color{red}+299.9\%}$$)
d_alignmentOf.ts 87.41 kB ($${\color{red}+299.2\%}$$)
std_translation4.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_rotationX4.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_rotationY4.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_rotationZ4.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_identity2.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_identity3.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_identity4.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_scaling4.ts 103.14 kB ($${\color{red}+281.5\%}$$)
d_isBuiltin.ts 87.41 kB ($${\color{red}+255.1\%}$$)
d_sizeOf.ts 87.41 kB ($${\color{red}+254.3\%}$$)
d_isContiguous.ts 87.41 kB ($${\color{red}+254.3\%}$$)
d_getLongestContiguousPrefix.ts 87.43 kB ($${\color{red}+254.2\%}$$)
d_arrayOf.ts 87.41 kB ($${\color{red}+233.4\%}$$)
d_size.ts 87.40 kB ($${\color{red}+231.6\%}$$)
d_align.ts 87.41 kB ($${\color{red}+231.6\%}$$)
d_location.ts 87.41 kB ($${\color{red}+231.6\%}$$)
d_interpolate.ts 87.41 kB ($${\color{red}+231.6\%}$$)
d_invariant.ts 87.41 kB ($${\color{red}+227.0\%}$$)
d_mat4x4f.ts 87.41 kB ($${\color{red}+223.3\%}$$)
d_mat2x2f.ts 87.41 kB ($${\color{red}+223.3\%}$$)
d_mat3x3f.ts 87.41 kB ($${\color{red}+223.3\%}$$)
d_matToArray.ts 87.41 kB ($${\color{red}+221.8\%}$$)
d_builtin.ts 87.41 kB ($${\color{red}+204.8\%}$$)
std_unpack2x16float.ts 103.14 kB ($${\color{red}+186.6\%}$$)
std_unpack4x8unorm.ts 103.14 kB ($${\color{red}+186.6\%}$$)
std_pack2x16float.ts 103.14 kB ($${\color{red}+186.6\%}$$)
std_pack4x8unorm.ts 103.14 kB ($${\color{red}+186.6\%}$$)
std_bitcastU32toF32.ts 103.14 kB ($${\color{red}+133.2\%}$$)
std_bitcastU32toI32.ts 103.14 kB ($${\color{red}+133.2\%}$$)
std_neg.ts 103.13 kB ($${\color{red}+113.1\%}$$)
std_bitShiftRight.ts 103.14 kB ($${\color{red}+113.1\%}$$)
std_bitShiftLeft.ts 103.14 kB ($${\color{red}+113.1\%}$$)
std_add.ts 103.13 kB ($${\color{red}+113.0\%}$$)
std_div.ts 103.13 kB ($${\color{red}+113.0\%}$$)
std_mod.ts 103.13 kB ($${\color{red}+113.0\%}$$)
std_mul.ts 103.13 kB ($${\color{red}+113.0\%}$$)
std_sub.ts 103.13 kB ($${\color{red}+113.0\%}$$)
std_translate4.ts 103.14 kB ($${\color{red}+109.8\%}$$)
std_rotateX4.ts 103.14 kB ($${\color{red}+109.8\%}$$)
std_scale4.ts 103.14 kB ($${\color{red}+109.8\%}$$)
std_rotateY4.ts 103.14 kB ($${\color{red}+109.7\%}$$)
std_rotateZ4.ts 103.14 kB ($${\color{red}+109.7\%}$$)
d_memoryLayoutOf.ts 87.41 kB ($${\color{red}+108.2\%}$$)
std_and.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_or.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_select.ts 103.14 kB ($${\color{red}+99.2\%}$$)
std_allEq.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_all.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_not.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_eq.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_lt.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_ne.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_isCloseTo.ts 103.14 kB ($${\color{red}+99.1\%}$$)
std_any.ts 103.13 kB ($${\color{red}+99.1\%}$$)
std_ge.ts 103.13 kB ($${\color{red}+99.1\%}$$)
std_gt.ts 103.13 kB ($${\color{red}+99.1\%}$$)
std_le.ts 103.13 kB ($${\color{red}+99.1\%}$$)
std_dot4U8Packed.ts 103.14 kB ($${\color{red}+56.2\%}$$)
std_length.ts 103.14 kB ($${\color{red}+56.2\%}$$)
std_countTrailingZeros.ts 103.15 kB ($${\color{red}+56.2\%}$$)
std_distance.ts 103.14 kB ($${\color{red}+56.2\%}$$)
std_dot.ts 103.13 kB ($${\color{red}+56.2\%}$$)
std_countLeadingZeros.ts 103.15 kB ($${\color{red}+56.2\%}$$)
std_firstTrailingBit.ts 103.15 kB ($${\color{red}+56.1\%}$$)
std_firstLeadingBit.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_fract.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_frexp.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_modf.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_quantizeToF16.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_mix.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_countOneBits.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_dot4I8Packed.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_determinant.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_extractBits.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_faceForward.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_inverseSqrt.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_reverseBits.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_insertBits.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_smoothstep.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_normalize.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_transpose.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_saturate.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_degrees.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_radians.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_reflect.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_refract.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_acosh.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_asinh.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_atan2.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_atanh.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_clamp.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_cross.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_floor.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_ldexp.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_round.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_trunc.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_acos.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_asin.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_atan.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_ceil.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_cosh.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_exp2.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_log2.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_sign.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_sinh.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_sqrt.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_step.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_tanh.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_abs.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_cos.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_exp.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_fma.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_log.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_max.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_min.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_pow.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_sin.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_tan.ts 103.13 kB ($${\color{red}+56.1\%}$$)
common_fullScreenTriangle.ts 57.18 kB ($${\color{red}+41.5\%}$$)
common_writeSoA.ts 57.17 kB ($${\color{red}+38.6\%}$$)
STATIC_allImports.ts 287.20 kB ($${\color{green}-1.7\%}$$)
STATIC_d.ts 87.40 kB ($${\color{green}-2.6\%}$$)
STATIC_std.ts 103.13 kB ($${\color{green}-2.7\%}$$)

If you wish to run a comparison for other, slower bundlers, run the 'Tree-shake test' from the GitHub Actions menu.

@aleksanderkatan aleksanderkatan force-pushed the feat/display-max-treeshake-result branch from 858aeb6 to e5b304e Compare June 26, 2026 08:42
@aleksanderkatan

Copy link
Copy Markdown
Contributor Author

@pullfrog review

@pullfrog pullfrog Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ℹ️ No critical issues — minor suggestion inline about the sign used for the maximum decrease.

Reviewed changes — Add max absolute increase/decrease percentages to the bundle-size comparison summary table.

  • Export calculateChange(...) from apps/treeshake-test/resultsTable.ts and reuse it in compareResults.ts to compute relative size changes.
  • Track and render maxIncrease / maxDecrease next to the corresponding increased/decreased count headers.

Pullfrog  | Fix all ➔Fix 👍s ➔View workflow run | Using Kimi K2 (free via Pullfrog for OSS) | 𝕏

output +=
'### Bundle size comparison (`import * as ...` in PR vs `import * as ...` in target):\n\n';
output += '| 🟢 Decreased | ➖ Unchanged | 🔴 Increased | ❔ Unknown |\n';
output += `| 🟢 Decreased ${maxDecrease === 0 ? '' : `(max ${(maxDecrease * 100).toFixed(2)}%) `}| ➖ Unchanged | 🔴 Increased ${maxIncrease === 0 ? '' : `(max ${(maxIncrease * 100).toFixed(2)}%) `}| ❔ Unknown |\n`;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ℹ️ The decrease summary displays a negative percentage (e.g. Decreased (max -50.00%)), which reads awkwardly because the column already signals direction. Consider rendering Math.abs(maxDecrease * 100) so it matches the "absolute changes" framing in the PR title.

@aleksanderkatan aleksanderkatan Jun 26, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it's fine, it would be weird to display

Bundle size comparison (import * as ... in PR vs import * as ... in target):

🟢 Decreased (max 50.00%) ➖ Unchanged 🔴 Increased ❔ Unknown
1 300 0 0

import * as ... in PR vs import * as ... in target (did bundle size increase?):

Test tsdown
std_identity3.ts 27.03 kB (-50.00%)

@aleksanderkatan aleksanderkatan marked this pull request as ready for review June 26, 2026 08:57

@pullfrog pullfrog Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Important

The summary header for decreases renders a signed negative percentage, which conflicts with the "Decreased" label and the PR's stated goal of showing "max absolute changes".

Reviewed changes — adds max increase/decrease tracking to the treeshake comparison summary and exports calculateChange with stricter overloads.

  • Track maxIncrease and maxDecrease in compareResults.ts and render them in the summary table header.
  • Export calculateChange from resultsTable.ts with overloads so defined-number callers get a defined-number return type.

Pullfrog  | Fix all ➔Fix 👍s ➔View workflow run | Using Kimi K2 (free via Pullfrog for OSS) | 𝕏

Comment thread apps/treeshake-test/compareResults.ts
@aleksanderkatan aleksanderkatan changed the title feat: Display max absolute changes in treeshake results feat: Display max changes in treeshake results Jun 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant