Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CSSolver] Implementation of disjunction choice favoring algorithm #63585

Draft
wants to merge 17 commits into
base: main
Choose a base branch
from

Conversation

xedin
Copy link
Member

@xedin xedin commented Feb 11, 2023

This algorithm attempts to ensure that the solver always picks a disjunction
it knows the most about given the previously deduced type information.

For example in chains of operators like: let _: (Double) -> Void = { 1 * 2 + $0 - 5 }

The solver is going to start from 2 + $0 because $0 is known to be Double and
then proceed to 1 * ... and only after that to ... - 5.

The algorithm is pretty simple:

- Collect "candidate" types for each argument
  - If argument is bound then the set going to be represented by just one type
    - Otherwise:
      - Collect all the possible bindings
      - Add default literal type (if any)

- Collect "candidate" types for result

- For each disjunction in the current scope:
  - Compute a favoring score for each viable* overload choice:
    - Compute score for each parameter:
      - Match parameter flags to argument flags
      - Match parameter types to a set of candidate argument types
        - If it's an exact match:
          - Concrete type: score = 1.0
          - Literal default: score = 0.3
        - Highest scored candidate type wins.
      - If none of the candidates match and they are all non-literal
         remove overload choice from consideration.

  - Average the score by dividing it by the number of parameters
     to avoid disfavoring disjunctions with fewer arguments.

  - Match result type to a set of candidates; add 1 to the score
     if one of the candidate types matches exactly.

  - The best choice score becomes a disjunction score

  - Compute disjunction scores for all of the disjunctions in scope.

  - Pick disjunction with the best overall score and favor choices with
    the best local candidate scores (if some candidates have equal scores).
  • Viable overloads include:
    • non-disfavored
    • non-disabled
    • available
    • non-generic (with current exception to SIMD)

Resolves: rdar://60347805
Resolves: rdar://74387235
Resolves: rdar://78845822
Resolves: rdar://23682605
Resolves: rdar://18994321
Resolves: rdar://107263264

@xedin
Copy link
Member Author

xedin commented Feb 11, 2023

@swift-ci please test source compatibility

@xedin xedin force-pushed the solver-perf branch 2 times, most recently from b45df09 to 2a3a206 Compare February 11, 2023 08:37
@xedin
Copy link
Member Author

xedin commented Feb 11, 2023

@swift-ci please test source compatibility

@xedin
Copy link
Member Author

xedin commented Feb 12, 2023

Please test with following pull request:
apple/swift-package-manager#6149

@swift-ci please test source compatibility

@xedin
Copy link
Member Author

xedin commented Feb 13, 2023

Please test with following pull request:
apple/swift-package-manager#6149

@swift-ci please test source compatibility

@xedin
Copy link
Member Author

xedin commented Feb 14, 2023

Please test with following pull request:
apple/swift-package-manager#6149

@swift-ci please test compiler performance

1 similar comment
@xedin
Copy link
Member Author

xedin commented Feb 14, 2023

Please test with following pull request:
apple/swift-package-manager#6149

@swift-ci please test compiler performance

@xedin
Copy link
Member Author

xedin commented Feb 15, 2023

Summary for main full

Regressions found (see below)

Debug-batch

debug-batch brief

Regressed (0)
name old new delta delta_pct
Improved (1)
name old new delta delta_pct
Frontend.NumInstructionsExecuted 86,835,246,083,964 84,156,748,262,042 -2,678,497,821,922 -3.08% ✅
Unchanged (delta < 1.0% or delta < 100.0ms) (1)
name old new delta delta_pct
LLVM.NumLLVMBytesOutput 1,946,947,244 1,947,279,320 332,076 0.02%

debug-batch detailed

Regressed (10)
name old new delta delta_pct
AST.NumSourceLinesPerSecond 4,527,498 4,610,501 83,003 1.83% ⛔
Sema.InheritedProtocolsRequest 726,794 740,698 13,904 1.91% ⛔
Sema.NumConformancesDeserialized 4,827,636 4,896,377 68,741 1.42% ⛔
Sema.NumLazyRequirementSignaturesLoaded 656,359 664,708 8,349 1.27% ⛔
Sema.NumRequirementMachineCompletionSteps 22,398,635 24,789,893 2,391,258 10.68% ⛔
Sema.NumRequirementMachineUnifiedConcreteTerms 969,141 1,003,267 34,125 3.52% ⛔
Sema.NumRequirementMachines 1,878,402 1,975,393 96,991 5.16% ⛔
Sema.ProtocolDependenciesRequest 560,391 615,606 55,214 9.85% ⛔
Sema.RequirementSignatureRequest 709,736 718,225 8,489 1.2% ⛔
Sema.UnderlyingTypeDeclsReferencedRequest 293,122 297,354 4,232 1.44% ⛔
Improved (18)
name old new delta delta_pct
Frontend.NumInstructionsExecuted 86,835,246,083,964 84,156,748,262,042 -2,678,497,821,922 -3.08% ✅
Sema.ActorIsolationRequest 5,686,698 5,606,058 -80,640 -1.42% ✅
Sema.CompareDeclSpecializationRequest 636,866 591,904 -44,962 -7.06% ✅
Sema.DefaultArgumentTypeRequest 19,534 19,233 -301 -1.54% ✅
Sema.DefaultTypeRequest 394,163 304,592 -89,571 -22.72% ✅
Sema.DirectLookupRequest 56,665,664 55,368,307 -1,297,356 -2.29% ✅
Sema.DynamicallyReplacedDeclRequest 6,066,279 5,986,801 -79,478 -1.31% ✅
Sema.GenericParamListRequest 5,793,669 5,660,756 -132,912 -2.29% ✅
Sema.GlobalActorAttributeRequest 7,236,132 7,151,925 -84,207 -1.16% ✅
Sema.HasDynamicCallableAttributeRequest 24,473 24,179 -294 -1.2% ✅
Sema.IsDeclRefinementOfRequest 52,971 6,680 -46,291 -87.39% ✅
Sema.LookupConformanceInModuleRequest 71,519,821 63,403,232 -8,116,589 -11.35% ✅
Sema.NumConstraintScopes 49,052,923 23,026,991 -26,025,932 -53.06% ✅
Sema.NumConstraintsConsideredForEdgeContraction 1,845,847 1,185,479 -660,368 -35.78% ✅
Sema.NumLeafScopes 37,005,931 14,897,240 -22,108,691 -59.74% ✅
Sema.QualifiedLookupRequest 7,821,971 7,702,700 -119,271 -1.52% ✅
Sema.ResolveImplicitMemberRequest 745,772 717,193 -28,579 -3.83% ✅
Sema.SuperclassTypeRequest 64,101 63,148 -953 -1.49% ✅
Unchanged (delta < 1.0% or delta < 100.0ms) (282)
name old new delta delta_pct
AST.ImportSetCacheHit 2,977,555 2,977,396 -159 -0.01%
AST.ImportSetCacheMiss 674,681 674,660 -21 -0.0%
AST.ImportSetFoldHit 342,824 342,808 -16 -0.0%
AST.ImportSetFoldMiss 331,857 331,852 -5 -0.0%
AST.ModuleShadowCacheHit 7,767 7,757 -10 -0.13%
AST.ModuleShadowCacheMiss 2,413 2,413 0 0.0%
AST.ModuleVisibilityCacheHit 16,809,097 16,808,455 -642 -0.0%
AST.ModuleVisibilityCacheMiss 144,378 144,378 0 -0.0%
AST.NumASTBytesAllocated 48,537,690,066 48,602,592,563 64,902,496 0.13%
AST.NumASTScopeExpansions 6,824,255 6,824,842 586 0.01%
AST.NumASTScopeLookups 7,564,135 7,564,120 -14 -0.0%
AST.NumDecls 287,609 287,609 0 0.0%
AST.NumDependencies 374,970 374,970 0 0.0%
AST.NumIncrementalDependencies 17,791 17,791 0 0.0%
AST.NumLinkLibraries 0 0 0 0.0%
AST.NumLoadedModules 276,684 276,684 0 0.0%
AST.NumLocalTypeDecls 1,894 1,894 0 0.0%
AST.NumModuleLookupClassMember 6,820 6,820 0 0.0%
AST.NumModuleLookupValue 83,603,073 83,575,896 -27,177 -0.03%
AST.NumObjCMethods 67,500 67,500 0 0.0%
AST.NumOperators 1,022 1,022 0 0.0%
AST.NumPrecedenceGroups 172 172 0 0.0%
AST.NumReferencedDynamicNames 159 159 0 0.0%
AST.NumReferencedMemberNames 11,324,241 11,305,506 -18,735 -0.17%
AST.NumReferencedTopLevelNames 1,089,391 1,088,875 -516 -0.05%
AST.NumSourceBuffers 323,047 323,047 0 0.0%
AST.NumSourceLines 9,842,394 9,842,394 0 0.0%
AST.NumTotalClangImportedEntities 1,628,946 1,627,423 -1,523 -0.09%
Frontend.MaxMallocUsage 808,818,811,592 812,832,471,616 4,013,660,024 0.5%
Frontend.NumProcessFailures 34 34 0 0.0%
IRGen.IRGenRequest 25,299 25,299 0 0.0%
IRGen.OptimizedIRRequest 0 0 0 0.0%
IRGen.SymbolObjectCodeRequest 0 0 0 0.0%
IRModule.NumGOTEntries 243,984 243,976 -8 -0.0%
IRModule.NumIRAliases 197,227 197,227 0 0.0%
IRModule.NumIRBasicBlocks 6,746,347 6,752,107 5,760 0.09%
IRModule.NumIRComdatSymbols 0 0 0 0.0%
IRModule.NumIRFunctions 3,598,115 3,600,006 1,891 0.05%
IRModule.NumIRGlobals 3,583,092 3,583,325 233 0.01%
IRModule.NumIRIFuncs 0 0 0 0.0%
IRModule.NumIRInsts 82,153,289 82,095,610 -57,679 -0.07%
IRModule.NumIRNamedMetaData 125,495 125,495 0 0.0%
IRModule.NumIRValueSymbols 7,234,075 7,236,199 2,124 0.03%
LLVM.NumLLVMBytesOutput 1,946,947,244 1,947,279,320 332,076 0.02%
Parse.IDEInspectionSecondPassRequest 0 0 0 0.0%
Parse.NumFunctionsParsed 316,012 316,012 0 0.0%
Parse.NumIterableDeclContextParsed 643,344 643,274 -70 -0.01%
Parse.ParseAbstractFunctionBodyRequest 540,714 540,714 0 0.0%
Parse.ParseMembersRequest 497,071 497,001 -70 -0.01%
Parse.ParseSourceFileRequest 316,761 316,761 0 0.0%
Parse.ParseTopLevelDeclsRequest 316,761 316,761 0 0.0%
SILGen.ASTLoweringRequest 26,491 26,491 0 0.0%
SILGen.ParseSILModuleRequest 0 0 0 0.0%
SILModule.NumSILGenDefaultWitnessTables 0 0 0 0.0%
SILModule.NumSILGenFunctions 2,720,932 2,721,689 757 0.03%
SILModule.NumSILGenGlobalVariables 114,833 114,833 0 0.0%
SILModule.NumSILGenVtables 34,449 34,449 0 0.0%
SILModule.NumSILGenWitnessTables 144,382 144,382 0 0.0%
SILModule.NumSILOptDefaultWitnessTables 0 0 0 0.0%
SILModule.NumSILOptFunctions 3,118,553 3,118,390 -163 -0.01%
SILModule.NumSILOptGlobalVariables 116,590 116,588 -2 -0.0%
SILModule.NumSILOptVtables 34,724 34,720 -4 -0.01%
SILModule.NumSILOptWitnessTables 177,007 176,504 -503 -0.28%
SILOptimizer.ExecuteSILPipelineRequest 103,608 103,608 0 0.0%
SILOptimizer.LoweredSILRequest 0 0 0 0.0%
Sema.ABIMembersRequest 251,177 251,305 127 0.05%
Sema.AbstractGenericSignatureRequest 123,441 123,544 103 0.08%
Sema.AccessLevelRequest 14,651,569 14,712,386 60,817 0.42%
Sema.AllMembersRequest 93,853 93,853 0 0.0%
Sema.AnyObjectLookupRequest 234 234 0 0.0%
Sema.ApplyAccessNoteRequest 3,563,394 3,564,031 637 0.02%
Sema.AreAllStoredPropertiesDefaultInitableRequest 39,537 39,537 0 0.0%
Sema.AttachedPropertyWrapperTypeRequest 23,952 23,952 0 0.0%
Sema.AttachedPropertyWrappersRequest 18,093,814 18,122,238 28,423 0.16%
Sema.AttachedResultBuilderRequest 1,552,939 1,552,578 -361 -0.02%
Sema.BodyInitKindRequest 70,230 70,230 0 0.0%
Sema.BreakTargetRequest 5,248 5,248 0 0.0%
Sema.CXXNamespaceMemberLookup 0 0 0 0.0%
Sema.CallerSideDefaultArgExprRequest 276,935 276,935 0 0.0%
Sema.CheckDistributedFunctionRequest 0 0 0 0.0%
Sema.CheckInconsistentImplementationOnlyImportsRequest 9,556 9,556 0 0.0%
Sema.CheckInconsistentSPIOnlyImportsRequest 51,134 51,134 0 0.0%
Sema.CheckInconsistentWeakLinkedImportsRequest 9,556 9,556 0 0.0%
Sema.CheckRedeclarationRequest 1,879,340 1,879,340 0 0.0%
Sema.ClangCategoryLookupRequest 0 0 0 0.0%
Sema.ClangDirectLookupRequest 13,011 12,935 -76 -0.58%
Sema.ClangRecordMemberLookup 13,011 12,935 -76 -0.58%
Sema.ClassAncestryFlagsRequest 129,659 129,369 -289 -0.22%
Sema.ClosureEffectsRequest 113,085 113,085 0 0.0%
Sema.ClosureHasExplicitResultRequest 40,634 40,634 0 0.0%
Sema.CollectOverriddenDeclsRequest 10,961,357 11,007,436 46,079 0.42%
Sema.CompilerPluginLoadRequest 0 0 0 0.0%
Sema.ConditionalRequirementsRequest 691,012 694,085 3,072 0.44%
Sema.ConformanceHasEffectRequest 4 4 0 0.0%
Sema.ConstantValueInfoRequest 0 0 0 0.0%
Sema.ContinueTargetRequest 1,886 1,886 0 0.0%
Sema.CursorInfoRequest 0 0 0 0.0%
Sema.CustomAttrNominalRequest 22,469 22,469 0 0.0%
Sema.CustomAttrTypeRequest 3,355 3,355 0 0.0%
Sema.CustomRefCountingOperation 0 0 0 0.0%
Sema.CxxRecordSemantics 0 0 0 0.0%
Sema.DefaultAndMaxAccessLevelRequest 100,381 100,381 0 0.0%
Sema.DefaultArgumentExprRequest 87,230 87,230 0 0.0%
Sema.DefaultArgumentInitContextRequest 791 791 0 0.0%
Sema.DefaultDefinitionTypeRequest 7,199 7,192 -7 -0.1%
Sema.DerivativeAttrOriginalDeclRequest 0 0 0 0.0%
Sema.DifferentiableAttributeTypeCheckRequest 0 0 0 0.0%
Sema.DirectOperatorLookupRequest 1,884,263 1,883,668 -594 -0.03%
Sema.DirectPrecedenceGroupLookupRequest 733,019 733,019 0 0.0%
Sema.DistributedModuleIsAvailableRequest 0 0 0 0.0%
Sema.EnumRawTypeRequest 33,547 33,561 14 0.04%
Sema.EnumRawValuesRequest 18,940 18,940 0 0.0%
Sema.ExistentialConformsToSelfRequest 25,416 25,305 -111 -0.44%
Sema.ExistentialRequiresAnyRequest 14,983 14,983 0 0.0%
Sema.ExpandAccessorMacros 1,054,037 1,054,026 -11 -0.0%
Sema.ExpandMacroExpansionDeclRequest 0 0 0 0.0%
Sema.ExpandMemberAttributeMacros 33,459,172 33,506,534 47,361 0.14%
Sema.ExpandPeerMacroRequest 2,119,833 2,119,930 97 0.0%
Sema.ExpandSynthesizedMemberMacroRequest 854,899 853,049 -1,850 -0.22%
Sema.ExtendedNominalRequest 571,922 571,922 0 0.0%
Sema.ExtendedTypeRequest 175,940 175,932 -8 -0.0%
Sema.ExternalMacroDefinitionRequest 0 0 0 0.0%
Sema.FragileFunctionKindRequest 2,202,953 2,203,603 650 0.03%
Sema.FunctionOperatorRequest 16,964 16,963 -1 -0.01%
Sema.GenericSignatureRequest 2,999,580 2,998,325 -1,255 -0.04%
Sema.GetDestructorRequest 40,981 40,981 0 0.0%
Sema.GetDistributedActorArgumentDecodingMethodRequest 0 0 0 0.0%
Sema.GetDistributedActorIDPropertyRequest 0 0 0 0.0%
Sema.GetDistributedActorImplicitCodableRequest 0 0 0 0.0%
Sema.GetDistributedActorInvocationDecoderRequest 0 0 0 0.0%
Sema.GetDistributedActorSystemPropertyRequest 0 0 0 0.0%
Sema.GetDistributedActorSystemRemoteCallFunctionRequest 0 0 0 0.0%
Sema.GetDistributedRemoteCallArgumentInitFunctionRequest 0 0 0 0.0%
Sema.GetDistributedRemoteCallTargetInitFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationDecoderDecodeNextArgumentFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationEncoderRecordArgumentFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationEncoderRecordErrorTypeFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationEncoderRecordReturnTypeFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationResultHandlerOnReturnFunctionRequest 0 0 0 0.0%
Sema.GetDistributedThunkRequest 0 0 0 0.0%
Sema.GetImplicitSendableRequest 296,093 296,315 222 0.07%
Sema.GetRuntimeDiscoverableAttributes 1,978,726 1,978,726 0 0.0%
Sema.GetSourceFileAsyncNode 110 110 0 0.0%
Sema.GlobalActorInstanceRequest 1,090 1,090 0 0.0%
Sema.HasCircularInheritedProtocolsRequest 16,489 16,489 0 0.0%
Sema.HasCircularRawValueRequest 19,130 19,130 0 0.0%
Sema.HasDefaultInitRequest 86,010 86,010 0 0.0%
Sema.HasDynamicMemberLookupAttributeRequest 492,644 492,385 -258 -0.05%
Sema.HasImportsMatchingFlagRequest 629,293 629,293 0 0.0%
Sema.HasIsolatedSelfRequest 12,578,156 12,511,160 -66,996 -0.53%
Sema.HasMemberwiseInitRequest 38,219 38,219 0 0.0%
Sema.HasMissingDesignatedInitializersRequest 29,154 29,154 0 0.0%
Sema.HasUserDefinedDesignatedInitRequest 86,020 86,020 0 0.0%
Sema.IDEInspectionFileRequest 0 0 0 0.0%
Sema.InferredGenericSignatureRequest 212,836 212,839 3 0.0%
Sema.InheritedDeclsReferencedRequest 5,979,244 6,038,920 59,675 1.0%
Sema.InheritedTypeRequest 409,672 409,973 300 0.07%
Sema.InheritsSuperclassInitializersRequest 38,260 38,260 0 0.0%
Sema.InitKindRequest 157,727 157,726 -1 -0.0%
Sema.InterfaceTypeRequest 18,907,894 18,933,322 25,428 0.13%
Sema.IsABICompatibleOverrideRequest 265,839 265,839 0 0.0%
Sema.IsAccessorTransparentRequest 485,547 485,547 0 0.0%
Sema.IsActorRequest 1,947,486 1,948,810 1,324 0.07%
Sema.IsCallAsFunctionNominalRequest 5,815 5,850 35 0.6%
Sema.IsDeclApplicableRequest 0 0 0 0.0%
Sema.IsDefaultActorRequest 55,143 55,143 0 0.0%
Sema.IsDistributedActorRequest 2,172,267 2,174,345 2,078 0.1%
Sema.IsDynamicRequest 2,652,472 2,653,116 644 0.02%
Sema.IsFinalRequest 4,001,210 4,009,050 7,840 0.2%
Sema.IsGetterMutatingRequest 660,410 660,402 -8 -0.0%
Sema.IsImplicitlyUnwrappedOptionalRequest 3,293,871 3,290,754 -3,117 -0.09%
Sema.IsMoveOnlyRequest 506,994 508,096 1,102 0.22%
Sema.IsObjCRequest 2,471,580 2,472,217 637 0.03%
Sema.IsSafeUseOfCxxDecl 0 0 0 0.0%
Sema.IsSetterMutatingRequest 583,471 583,471 0 0.0%
Sema.IsSingleValueStmtRequest 307,028 307,028 0 0.0%
Sema.IsStaticRequest 1,386,535 1,386,538 3 0.0%
Sema.LazyStoragePropertyRequest 2,348 2,348 0 0.0%
Sema.LocalDiscriminatorsRequest 432,111 432,111 0 0.0%
Sema.LookupAllConformancesInContextRequest 2,317,728 2,326,521 8,792 0.38%
Sema.LookupInModuleRequest 7,789,453 7,772,411 -17,041 -0.22%
Sema.LookupInfixOperatorRequest 65,753 65,752 -1 -0.0%
Sema.LookupPostfixOperatorRequest 74 74 0 0.0%
Sema.LookupPrecedenceGroupRequest 28,292 28,292 0 0.0%
Sema.LookupPrefixOperatorRequest 350 350 0 0.0%
Sema.MacroDefinitionRequest 0 0 0 0.0%
Sema.MangleLocalTypeDeclRequest 837 837 0 0.0%
Sema.ModuleImplicitImportsRequest 9,556 9,556 0 0.0%
Sema.ModuleLibraryLevelRequest 351 351 0 0.0%
Sema.ModuleQualifiedLookupRequest 3,007,360 2,990,311 -17,049 -0.57%
Sema.NamedLazyMemberLoadSuccessCount 31,863,126 31,774,752 -88,374 -0.28%
Sema.NamingPatternRequest 229,515 229,510 -5 -0.0%
Sema.NeedsNewVTableEntryRequest 900,406 900,406 0 0.0%
Sema.NumAccessorBodiesSynthesized 396,289 396,289 0 0.0%
Sema.NumAccessorsSynthesized 488,272 488,272 0 0.0%
Sema.NumConformancePathsRecorded 755,117 755,039 -78 -0.01%
Sema.NumCrossImportsChecked 0 0 0 0.0%
Sema.NumCrossImportsFound 0 0 0 0.0%
Sema.NumCyclicOneWayComponentsCollapsed 0 0 0 0.0%
Sema.NumDeclsDeserialized 79,657,825 79,853,152 195,327 0.25%
Sema.NumDeclsTypechecked 2,661,354 2,661,354 0 0.0%
Sema.NumLazyIterableDeclContexts 11,439,248 11,492,737 53,489 0.47%
Sema.NumLazyRequirementSignatures 962,419 962,738 319 0.03%
Sema.NumTypesDeserialized 22,550,109 22,569,539 19,430 0.09%
Sema.NumUnloadedLazyIterableDeclContexts 8,129,259 8,172,527 43,268 0.53%
Sema.ObjCInterfaceAndImplementationRequest 720,838 720,590 -248 -0.03%
Sema.OpaqueReadOwnershipRequest 427,926 427,926 0 0.0%
Sema.OpaqueResultTypeRequest 860 860 0 0.0%
Sema.OperatorPrecedenceGroupRequest 1,021 1,021 0 0.0%
Sema.OverriddenDeclsRequest 5,066,986 5,071,115 4,129 0.08%
Sema.ParamSpecifierRequest 1,851,827 1,851,813 -14 -0.0%
Sema.PatternBindingEntryRequest 652,843 652,838 -5 -0.0%
Sema.PatternTypeRequest 765,306 765,301 -5 -0.0%
Sema.PolymorphicEffectKindRequest 904,430 904,920 490 0.05%
Sema.PolymorphicEffectRequirementsRequest 7 7 0 0.0%
Sema.PreCheckResultBuilderRequest 1,038 1,038 0 0.0%
Sema.PreCheckReturnStmtRequest 477,612 477,612 0 0.0%
Sema.PrimaryAssociatedTypesRequest 6,998 6,998 0 0.0%
Sema.PrimarySourceFilesRequest 9,556 9,556 0 0.0%
Sema.PropertyWrapperAuxiliaryVariablesRequest 1,916,109 1,916,109 0 0.0%
Sema.PropertyWrapperBackingPropertyTypeRequest 23,952 23,952 0 0.0%
Sema.PropertyWrapperInitializerInfoRequest 559,938 559,938 0 0.0%
Sema.PropertyWrapperLValuenessRequest 2,878 2,878 0 0.0%
Sema.PropertyWrapperMutabilityRequest 656,343 656,339 -4 -0.0%
Sema.PropertyWrapperTypeInfoRequest 592 592 0 0.0%
Sema.ProtocolRequirementsRequest 69,523 69,651 127 0.18%
Sema.ProtocolRequiresClassRequest 42,948 42,967 18 0.04%
Sema.ProvideDefaultImplForRequest 10,961,357 11,007,436 46,079 0.42%
Sema.RangeInfoRequest 0 0 0 0.0%
Sema.RenamedDeclRequest 1,491 1,491 0 0.0%
Sema.RequirementRequest 170,447 170,445 -2 -0.0%
Sema.RequiresOpaqueAccessorsRequest 1,679,231 1,679,227 -4 -0.0%
Sema.RequiresOpaqueModifyCoroutineRequest 427,117 427,117 0 0.0%
Sema.ResolveEffectiveMemberwiseInitRequest 0 0 0 0.0%
Sema.ResolveMacroRequest 33,434 33,434 0 0.0%
Sema.ResolveProtocolNameRequest 0 0 0 0.0%
Sema.ResolveTypeEraserTypeRequest 0 0 0 0.0%
Sema.ResolveTypeRequest 4,800,888 4,762,776 -38,112 -0.79%
Sema.ResultBuilderTypeRequest 437,633 437,213 -420 -0.1%
Sema.ResultTypeRequest 1,048,982 1,048,978 -4 -0.0%
Sema.RootAndResultTypeOfKeypathDynamicMemberRequest 0 0 0 0.0%
Sema.RootTypeOfKeypathDynamicMemberRequest 0 0 0 0.0%
Sema.SPIGroupsRequest 6,900,741 6,895,313 -5,428 -0.08%
Sema.ScopedImportLookupRequest 626 626 0 0.0%
Sema.SelfAccessKindRequest 865,384 865,376 -8 -0.0%
Sema.SelfBoundsFromGenericSignatureRequest 64,022 63,764 -258 -0.4%
Sema.SelfBoundsFromWhereClauseRequest 1,703,414 1,699,966 -3,447 -0.2%
Sema.SemanticAvailableRangeAttrRequest 5,205 5,205 0 0.0%
Sema.SemanticUnavailableAttrRequest 148,794 148,794 0 0.0%
Sema.SetterAccessLevelRequest 228,917 228,914 -3 -0.0%
Sema.SimpleDidSetRequest 2,730,906 2,738,955 8,049 0.29%
Sema.SpecializeAttrTargetDeclRequest 2,997 2,997 0 0.0%
Sema.StorageImplInfoRequest 1,924,454 1,924,443 -11 -0.0%
Sema.StoredPropertiesAndMissingMembersRequest 59,138 59,137 -1 -0.0%
Sema.StoredPropertiesRequest 352,691 353,793 1,102 0.31%
Sema.StructuralRequirementsRequest 53,513 53,653 140 0.26%
Sema.StructuralTypeRequest 1,861 1,861 0 0.0%
Sema.SuperclassDeclRequest 488,527 487,246 -1,281 -0.26%
Sema.SynthesizeAccessorRequest 488,272 488,272 0 0.0%
Sema.SynthesizeDefaultInitRequest 9,598 9,598 0 0.0%
Sema.SynthesizeMainFunctionRequest 217,431 217,559 127 0.06%
Sema.SynthesizeMemberwiseInitRequest 7,852 7,852 0 0.0%
Sema.SynthesizeRuntimeMetadataAttrGenerator 0 0 0 0.0%
Sema.SynthesizeRuntimeMetadataAttrGeneratorBody 0 0 0 0.0%
Sema.TangentStoredPropertyRequest 0 0 0 0.0%
Sema.TypeAliasRequirementsRequest 53,513 53,653 140 0.26%
Sema.TypeCheckASTNodeAtLocRequest 0 0 0 0.0%
Sema.TypeCheckFunctionBodyRequest 825,759 825,759 0 0.0%
Sema.TypeCheckSourceFileRequest 51,134 51,134 0 0.0%
Sema.TypeDeclsFromWhereClauseRequest 50,878 50,878 0 0.0%
Sema.TypeEraserHasViableInitRequest 0 0 0 0.0%
Sema.TypeRelationCheckRequest 0 0 0 0.0%
Sema.TypeWitnessRequest 13,792 13,752 -40 -0.29%
Sema.USRGenerationRequest 12,321,367 12,367,440 46,073 0.37%
Sema.UnderlyingTypeRequest 50,655 50,644 -11 -0.02%
Sema.UnqualifiedLookupRequest 5,896,854 5,896,854 0 0.0%
Sema.ValidatePrecedenceGroupRequest 217,449 217,449 0 0.0%
Sema.ValueWitnessRequest 71,361 71,369 8 0.01%
TBDGen.APIGenRequest 0 0 0 0.0%
TBDGen.GenerateTBDRequest 0 0 0 0.0%
TBDGen.PublicSymbolsRequest 25,313 25,313 0 0.0%
TBDGen.SymbolSourceMapRequest 0 0 0 0.0%

Release

release brief

Regressed (0)
name old new delta delta_pct
Improved (1)
name old new delta delta_pct
Frontend.NumInstructionsExecuted 106,664,472,497,256 104,649,706,353,377 -2,014,766,143,878 -1.89% ✅
Unchanged (delta < 1.0% or delta < 100.0ms) (1)
name old new delta delta_pct
LLVM.NumLLVMBytesOutput 2,031,981,772 2,032,303,376 321,604 0.02%

release detailed

Regressed (8)
name old new delta delta_pct
Sema.InheritedDeclsReferencedRequest 1,249,080 1,284,675 35,595 2.85% ⛔
Sema.NumConformancesDeserialized 933,233 966,781 33,547 3.59% ⛔
Sema.NumLazyRequirementSignaturesLoaded 108,093 109,286 1,193 1.1% ⛔
Sema.NumRequirementMachineCompletionSteps 4,524,792 4,824,890 300,098 6.63% ⛔
Sema.NumRequirementMachineUnifiedConcreteTerms 354,953 358,636 3,683 1.04% ⛔
Sema.NumRequirementMachines 406,135 419,533 13,398 3.3% ⛔
Sema.ProtocolDependenciesRequest 101,004 107,403 6,398 6.33% ⛔
Sema.UnderlyingTypeDeclsReferencedRequest 62,869 65,784 2,914 4.64% ⛔
Improved (16)
name old new delta delta_pct
Frontend.NumInstructionsExecuted 106,664,472,497,256 104,649,706,353,377 -2,014,766,143,878 -1.89% ✅
Sema.CompareDeclSpecializationRequest 428,682 388,944 -39,738 -9.27% ✅
Sema.DefaultArgumentTypeRequest 9,388 9,115 -273 -2.91% ✅
Sema.DefaultTypeRequest 319,721 232,458 -87,263 -27.29% ✅
Sema.DirectLookupRequest 45,118,686 43,959,011 -1,159,674 -2.57% ✅
Sema.ExistentialConformsToSelfRequest 6,116 6,037 -79 -1.29% ✅
Sema.GenericParamListRequest 1,706,592 1,636,156 -70,436 -4.13% ✅
Sema.HasDynamicCallableAttributeRequest 10,756 10,637 -119 -1.11% ✅
Sema.IsDeclRefinementOfRequest 29,235 3,781 -25,454 -87.07% ✅
Sema.LookupConformanceInModuleRequest 53,345,797 47,513,376 -5,832,421 -10.93% ✅
Sema.NumConstraintScopes 37,991,609 18,453,097 -19,538,512 -51.43% ✅
Sema.NumConstraintsConsideredForEdgeContraction 1,797,971 1,237,162 -560,809 -31.19% ✅
Sema.NumLeafScopes 28,390,767 11,591,526 -16,799,240 -59.17% ✅
Sema.QualifiedLookupRequest 4,592,149 4,494,324 -97,825 -2.13% ✅
Sema.ResolveImplicitMemberRequest 468,597 442,478 -26,119 -5.57% ✅
Sema.ResolveTypeRequest 2,313,809 2,279,909 -33,900 -1.47% ✅
Unchanged (delta < 1.0% or delta < 100.0ms) (286)
name old new delta delta_pct
AST.ImportSetCacheHit 1,571,463 1,571,210 -253 -0.02%
AST.ImportSetCacheMiss 83,446 83,451 5 0.01%
AST.ImportSetFoldHit 42,171 42,173 2 0.0%
AST.ImportSetFoldMiss 41,275 41,278 3 0.01%
AST.ModuleShadowCacheHit 5,278 5,268 -10 -0.19%
AST.ModuleShadowCacheMiss 1,357 1,357 0 0.0%
AST.ModuleVisibilityCacheHit 8,168,310 8,167,982 -328 -0.0%
AST.ModuleVisibilityCacheMiss 30,359 30,359 0 0.0%
AST.NumASTBytesAllocated 11,953,107,872 11,964,162,287 11,054,415 0.09%
AST.NumASTScopeExpansions 3,305,294 3,305,294 0 0.0%
AST.NumASTScopeLookups 4,728,830 4,728,709 -121 -0.0%
AST.NumDecls 165,177 165,177 0 0.0%
AST.NumDependencies 55,521 55,521 0 0.0%
AST.NumIncrementalDependencies 58 58 0 0.0%
AST.NumLinkLibraries 0 0 0 0.0%
AST.NumLoadedModules 32,702 32,702 0 0.0%
AST.NumLocalTypeDecls 1,057 1,057 0 0.0%
AST.NumModuleLookupClassMember 6,694 6,694 0 0.0%
AST.NumModuleLookupValue 41,962,749 41,953,996 -8,753 -0.02%
AST.NumObjCMethods 33,770 33,770 0 0.0%
AST.NumOperators 512 512 0 0.0%
AST.NumPrecedenceGroups 88 88 0 0.0%
AST.NumReferencedDynamicNames 0 0 0 0.0%
AST.NumReferencedMemberNames 4,002 3,994 -8 -0.2%
AST.NumReferencedTopLevelNames 352 352 0 0.0%
AST.NumSourceBuffers 33,014 33,014 0 0.0%
AST.NumSourceLines 5,578,479 5,578,479 0 0.0%
AST.NumSourceLinesPerSecond 332,296 335,568 3,272 0.98%
AST.NumTotalClangImportedEntities 490,482 490,378 -104 -0.02%
Frontend.MaxMallocUsage 285,850,712,312 286,550,438,120 699,725,808 0.24%
Frontend.NumProcessFailures 8 8 0 0.0%
IRGen.IRGenRequest 12 12 0 0.0%
IRGen.OptimizedIRRequest 0 0 0 0.0%
IRGen.SymbolObjectCodeRequest 0 0 0 0.0%
IRModule.NumGOTEntries 231,647 231,631 -16 -0.01%
IRModule.NumIRAliases 165,245 165,245 0 0.0%
IRModule.NumIRBasicBlocks 5,290,987 5,282,505 -8,482 -0.16%
IRModule.NumIRComdatSymbols 0 0 0 0.0%
IRModule.NumIRFunctions 3,047,687 3,048,773 1,086 0.04%
IRModule.NumIRGlobals 3,311,822 3,311,875 53 0.0%
IRModule.NumIRIFuncs 0 0 0 0.0%
IRModule.NumIRInsts 51,088,813 51,097,494 8,681 0.02%
IRModule.NumIRNamedMetaData 128,437 128,437 0 0.0%
IRModule.NumIRValueSymbols 6,389,006 6,390,145 1,139 0.02%
LLVM.NumLLVMBytesOutput 2,031,981,772 2,032,303,376 321,604 0.02%
Parse.IDEInspectionSecondPassRequest 0 0 0 0.0%
Parse.NumFunctionsParsed 297,164 297,164 0 0.0%
Parse.NumIterableDeclContextParsed 113,773 113,773 0 0.0%
Parse.ParseAbstractFunctionBodyRequest 311,053 311,053 0 0.0%
Parse.ParseMembersRequest 14,598 14,598 0 0.0%
Parse.ParseSourceFileRequest 31,099 31,099 0 0.0%
Parse.ParseTopLevelDeclsRequest 31,099 31,099 0 0.0%
SILGen.ASTLoweringRequest 1,250 1,250 0 0.0%
SILGen.ParseSILModuleRequest 0 0 0 0.0%
SILModule.NumSILGenDefaultWitnessTables 830 830 0 0.0%
SILModule.NumSILGenFunctions 1,422,047 1,422,342 295 0.02%
SILModule.NumSILGenGlobalVariables 59,773 59,773 0 0.0%
SILModule.NumSILGenVtables 24,120 24,120 0 0.0%
SILModule.NumSILGenWitnessTables 80,025 80,025 0 0.0%
SILModule.NumSILOptDefaultWitnessTables 830 830 0 0.0%
SILModule.NumSILOptFunctions 1,247,410 1,247,925 515 0.04%
SILModule.NumSILOptGlobalVariables 56,238 56,334 96 0.17%
SILModule.NumSILOptVtables 28,355 28,355 0 0.0%
SILModule.NumSILOptWitnessTables 80,540 80,540 0 0.0%
SILOptimizer.ExecuteSILPipelineRequest 4,896 4,896 0 0.0%
SILOptimizer.LoweredSILRequest 0 0 0 0.0%
Sema.ABIMembersRequest 121,353 121,353 0 0.0%
Sema.AbstractGenericSignatureRequest 70,546 70,554 8 0.01%
Sema.AccessLevelRequest 2,942,402 2,945,957 3,555 0.12%
Sema.ActorIsolationRequest 2,099,226 2,080,692 -18,534 -0.88%
Sema.AllMembersRequest 96,478 96,478 0 0.0%
Sema.AnyObjectLookupRequest 236 236 0 0.0%
Sema.ApplyAccessNoteRequest 1,980,342 1,980,349 7 0.0%
Sema.AreAllStoredPropertiesDefaultInitableRequest 22,050 22,050 0 0.0%
Sema.AttachedPropertyWrapperTypeRequest 9,486 9,486 0 0.0%
Sema.AttachedPropertyWrappersRequest 4,420,461 4,418,648 -1,813 -0.04%
Sema.AttachedResultBuilderRequest 919,403 919,235 -168 -0.02%
Sema.BodyInitKindRequest 53,355 53,355 0 0.0%
Sema.BreakTargetRequest 4,399 4,399 0 0.0%
Sema.CXXNamespaceMemberLookup 0 0 0 0.0%
Sema.CallerSideDefaultArgExprRequest 239,298 239,298 0 0.0%
Sema.CheckDistributedFunctionRequest 0 0 0 0.0%
Sema.CheckInconsistentImplementationOnlyImportsRequest 1,258 1,258 0 0.0%
Sema.CheckInconsistentSPIOnlyImportsRequest 31,075 31,075 0 0.0%
Sema.CheckInconsistentWeakLinkedImportsRequest 1,258 1,258 0 0.0%
Sema.CheckRedeclarationRequest 1,182,991 1,182,991 0 0.0%
Sema.ClangCategoryLookupRequest 0 0 0 0.0%
Sema.ClangDirectLookupRequest 6,804 6,782 -22 -0.32%
Sema.ClangRecordMemberLookup 6,804 6,782 -22 -0.32%
Sema.ClassAncestryFlagsRequest 56,451 56,393 -58 -0.1%
Sema.ClosureEffectsRequest 103,378 103,378 0 0.0%
Sema.ClosureHasExplicitResultRequest 36,201 36,201 0 0.0%
Sema.CollectOverriddenDeclsRequest 1,052,530 1,058,284 5,754 0.55%
Sema.CompilerPluginLoadRequest 0 0 0 0.0%
Sema.ConditionalRequirementsRequest 225,272 225,017 -255 -0.11%
Sema.ConformanceHasEffectRequest 3 3 0 0.0%
Sema.ConstantValueInfoRequest 0 0 0 0.0%
Sema.ContinueTargetRequest 1,680 1,680 0 0.0%
Sema.CursorInfoRequest 0 0 0 0.0%
Sema.CustomAttrNominalRequest 9,123 9,123 0 0.0%
Sema.CustomAttrTypeRequest 1,323 1,323 0 0.0%
Sema.CustomRefCountingOperation 0 0 0 0.0%
Sema.CxxRecordSemantics 0 0 0 0.0%
Sema.DefaultAndMaxAccessLevelRequest 49,490 49,490 0 0.0%
Sema.DefaultArgumentExprRequest 45,819 45,819 0 0.0%
Sema.DefaultArgumentInitContextRequest 299 299 0 0.0%
Sema.DefaultDefinitionTypeRequest 3,221 3,221 0 0.0%
Sema.DerivativeAttrOriginalDeclRequest 0 0 0 0.0%
Sema.DifferentiableAttributeTypeCheckRequest 0 0 0 0.0%
Sema.DirectOperatorLookupRequest 1,429,974 1,429,834 -140 -0.01%
Sema.DirectPrecedenceGroupLookupRequest 623,012 623,012 0 0.0%
Sema.DistributedModuleIsAvailableRequest 0 0 0 0.0%
Sema.DynamicallyReplacedDeclRequest 2,271,913 2,253,681 -18,232 -0.8%
Sema.EnumRawTypeRequest 10,201 10,201 0 0.0%
Sema.EnumRawValuesRequest 10,458 10,458 0 0.0%
Sema.ExistentialRequiresAnyRequest 7,538 7,538 0 0.0%
Sema.ExpandAccessorMacros 666,097 666,094 -3 -0.0%
Sema.ExpandMacroExpansionDeclRequest 0 0 0 0.0%
Sema.ExpandMemberAttributeMacros 8,000,448 7,997,499 -2,949 -0.04%
Sema.ExpandPeerMacroRequest 839,435 839,435 0 0.0%
Sema.ExpandSynthesizedMemberMacroRequest 237,101 236,786 -315 -0.13%
Sema.ExtendedNominalRequest 53,902 53,902 0 0.0%
Sema.ExtendedTypeRequest 53,818 53,818 0 0.0%
Sema.ExternalMacroDefinitionRequest 0 0 0 0.0%
Sema.FragileFunctionKindRequest 1,195,324 1,195,611 287 0.02%
Sema.FunctionOperatorRequest 8,357 8,357 0 0.0%
Sema.GenericSignatureRequest 1,155,021 1,154,952 -69 -0.01%
Sema.GetDestructorRequest 25,348 25,348 0 0.0%
Sema.GetDistributedActorArgumentDecodingMethodRequest 0 0 0 0.0%
Sema.GetDistributedActorIDPropertyRequest 0 0 0 0.0%
Sema.GetDistributedActorImplicitCodableRequest 0 0 0 0.0%
Sema.GetDistributedActorInvocationDecoderRequest 0 0 0 0.0%
Sema.GetDistributedActorSystemPropertyRequest 0 0 0 0.0%
Sema.GetDistributedActorSystemRemoteCallFunctionRequest 0 0 0 0.0%
Sema.GetDistributedRemoteCallArgumentInitFunctionRequest 0 0 0 0.0%
Sema.GetDistributedRemoteCallTargetInitFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationDecoderDecodeNextArgumentFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationEncoderRecordArgumentFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationEncoderRecordErrorTypeFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationEncoderRecordReturnTypeFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationResultHandlerOnReturnFunctionRequest 0 0 0 0.0%
Sema.GetDistributedThunkRequest 0 0 0 0.0%
Sema.GetImplicitSendableRequest 68,133 68,351 218 0.32%
Sema.GetRuntimeDiscoverableAttributes 1,238,354 1,238,354 0 0.0%
Sema.GetSourceFileAsyncNode 54 54 0 0.0%
Sema.GlobalActorAttributeRequest 2,825,190 2,805,348 -19,842 -0.7%
Sema.GlobalActorInstanceRequest 232 232 0 0.0%
Sema.HasCircularInheritedProtocolsRequest 8,251 8,251 0 0.0%
Sema.HasCircularRawValueRequest 10,199 10,199 0 0.0%
Sema.HasDefaultInitRequest 39,836 39,836 0 0.0%
Sema.HasDynamicMemberLookupAttributeRequest 137,662 137,441 -221 -0.16%
Sema.HasImportsMatchingFlagRequest 61,868 61,868 0 0.0%
Sema.HasIsolatedSelfRequest 4,219,517 4,201,952 -17,565 -0.42%
Sema.HasMemberwiseInitRequest 15,260 15,260 0 0.0%
Sema.HasMissingDesignatedInitializersRequest 20,931 20,931 0 0.0%
Sema.HasUserDefinedDesignatedInitRequest 39,836 39,836 0 0.0%
Sema.IDEInspectionFileRequest 0 0 0 0.0%
Sema.InferredGenericSignatureRequest 86,475 86,475 0 0.0%
Sema.InheritedProtocolsRequest 123,234 124,317 1,083 0.88%
Sema.InheritedTypeRequest 204,709 204,712 3 0.0%
Sema.InheritsSuperclassInitializersRequest 20,910 20,910 0 0.0%
Sema.InitKindRequest 77,588 77,588 0 0.0%
Sema.InterfaceTypeRequest 5,207,870 5,207,680 -189 -0.0%
Sema.IsABICompatibleOverrideRequest 156,763 156,763 0 0.0%
Sema.IsAccessorTransparentRequest 272,772 272,772 0 0.0%
Sema.IsActorRequest 387,436 387,693 257 0.07%
Sema.IsCallAsFunctionNominalRequest 5,691 5,719 28 0.49%
Sema.IsDeclApplicableRequest 0 0 0 0.0%
Sema.IsDefaultActorRequest 32,806 32,806 0 0.0%
Sema.IsDistributedActorRequest 448,950 449,272 322 0.07%
Sema.IsDynamicRequest 1,472,271 1,472,556 285 0.02%
Sema.IsFinalRequest 1,455,662 1,456,503 841 0.06%
Sema.IsGetterMutatingRequest 400,637 400,637 0 0.0%
Sema.IsImplicitlyUnwrappedOptionalRequest 2,137,688 2,137,101 -587 -0.03%
Sema.IsMoveOnlyRequest 176,932 177,045 113 0.06%
Sema.IsObjCRequest 1,332,592 1,332,599 7 0.0%
Sema.IsSafeUseOfCxxDecl 0 0 0 0.0%
Sema.IsSetterMutatingRequest 389,266 389,266 0 0.0%
Sema.IsSingleValueStmtRequest 263,003 263,003 0 0.0%
Sema.IsStaticRequest 655,776 655,747 -29 -0.0%
Sema.LazyStoragePropertyRequest 562 562 0 0.0%
Sema.LocalDiscriminatorsRequest 313,456 313,456 0 0.0%
Sema.LookupAllConformancesInContextRequest 326,787 327,590 803 0.25%
Sema.LookupInModuleRequest 2,814,473 2,808,307 -6,166 -0.22%
Sema.LookupInfixOperatorRequest 55,527 55,527 0 0.0%
Sema.LookupPostfixOperatorRequest 37 37 0 0.0%
Sema.LookupPrecedenceGroupRequest 25,504 25,504 0 0.0%
Sema.LookupPrefixOperatorRequest 166 166 0 0.0%
Sema.MacroDefinitionRequest 0 0 0 0.0%
Sema.MangleLocalTypeDeclRequest 1,037 1,037 0 0.0%
Sema.ModuleImplicitImportsRequest 1,258 1,258 0 0.0%
Sema.ModuleLibraryLevelRequest 141 141 0 0.0%
Sema.ModuleQualifiedLookupRequest 638,594 632,534 -6,060 -0.95%
Sema.NamedLazyMemberLoadSuccessCount 12,026,998 11,997,685 -29,313 -0.24%
Sema.NamingPatternRequest 67,644 67,644 0 0.0%
Sema.NeedsNewVTableEntryRequest 616,327 616,327 0 0.0%
Sema.NumAccessorBodiesSynthesized 235,221 235,221 0 0.0%
Sema.NumAccessorsSynthesized 238,230 238,230 0 0.0%
Sema.NumConformancePathsRecorded 752,359 752,369 10 0.0%
Sema.NumCrossImportsChecked 0 0 0 0.0%
Sema.NumCrossImportsFound 0 0 0 0.0%
Sema.NumCyclicOneWayComponentsCollapsed 0 0 0 0.0%
Sema.NumDeclsDeserialized 15,547,218 15,556,710 9,491 0.06%
Sema.NumDeclsTypechecked 1,697,950 1,697,950 0 0.0%
Sema.NumLazyIterableDeclContexts 2,040,186 2,048,513 8,326 0.41%
Sema.NumLazyRequirementSignatures 147,711 147,846 134 0.09%
Sema.NumTypesDeserialized 6,226,879 6,225,701 -1,178 -0.02%
Sema.NumUnloadedLazyIterableDeclContexts 1,382,934 1,390,220 7,285 0.53%
Sema.ObjCInterfaceAndImplementationRequest 447,818 447,761 -57 -0.01%
Sema.OpaqueReadOwnershipRequest 204,934 204,934 0 0.0%
Sema.OpaqueResultTypeRequest 366 366 0 0.0%
Sema.OperatorPrecedenceGroupRequest 445 445 0 0.0%
Sema.OverriddenDeclsRequest 1,601,327 1,601,957 630 0.04%
Sema.ParamSpecifierRequest 918,613 918,613 0 0.0%
Sema.PatternBindingEntryRequest 347,392 347,392 0 0.0%
Sema.PatternTypeRequest 449,371 449,371 0 0.0%
Sema.PolymorphicEffectKindRequest 543,531 543,799 268 0.05%
Sema.PolymorphicEffectRequirementsRequest 5 5 0 0.0%
Sema.PreCheckResultBuilderRequest 954 954 0 0.0%
Sema.PreCheckReturnStmtRequest 415,623 415,623 0 0.0%
Sema.PrimaryAssociatedTypesRequest 6,928 6,928 0 0.0%
Sema.PrimarySourceFilesRequest 1,258 1,258 0 0.0%
Sema.PropertyWrapperAuxiliaryVariablesRequest 1,425,314 1,425,314 0 0.0%
Sema.PropertyWrapperBackingPropertyTypeRequest 9,486 9,486 0 0.0%
Sema.PropertyWrapperInitializerInfoRequest 389,660 389,660 0 0.0%
Sema.PropertyWrapperLValuenessRequest 1,439 1,439 0 0.0%
Sema.PropertyWrapperMutabilityRequest 398,939 398,939 0 0.0%
Sema.PropertyWrapperTypeInfoRequest 137 137 0 0.0%
Sema.ProtocolRequirementsRequest 17,502 17,502 0 0.0%
Sema.ProtocolRequiresClassRequest 9,318 9,322 4 0.04%
Sema.ProvideDefaultImplForRequest 1,052,530 1,058,284 5,754 0.55%
Sema.RangeInfoRequest 0 0 0 0.0%
Sema.RenamedDeclRequest 1,013 1,013 0 0.0%
Sema.RequirementRequest 87,751 87,751 0 0.0%
Sema.RequirementSignatureRequest 119,246 120,441 1,195 1.0%
Sema.RequiresOpaqueAccessorsRequest 1,293,434 1,293,434 0 0.0%
Sema.RequiresOpaqueModifyCoroutineRequest 204,603 204,603 0 0.0%
Sema.ResolveEffectiveMemberwiseInitRequest 0 0 0 0.0%
Sema.ResolveMacroRequest 17,222 17,222 0 0.0%
Sema.ResolveProtocolNameRequest 0 0 0 0.0%
Sema.ResolveTypeEraserTypeRequest 0 0 0 0.0%
Sema.ResultBuilderTypeRequest 359,691 359,477 -214 -0.06%
Sema.ResultTypeRequest 475,348 475,348 0 0.0%
Sema.RootAndResultTypeOfKeypathDynamicMemberRequest 0 0 0 0.0%
Sema.RootTypeOfKeypathDynamicMemberRequest 0 0 0 0.0%
Sema.SPIGroupsRequest 2,290,958 2,289,275 -1,683 -0.07%
Sema.ScopedImportLookupRequest 311 311 0 0.0%
Sema.SelfAccessKindRequest 358,978 358,966 -12 -0.0%
Sema.SelfBoundsFromGenericSignatureRequest 22,747 22,747 0 0.0%
Sema.SelfBoundsFromWhereClauseRequest 525,836 525,239 -597 -0.11%
Sema.SemanticAvailableRangeAttrRequest 2,493 2,493 0 0.0%
Sema.SemanticUnavailableAttrRequest 97,693 97,693 0 0.0%
Sema.SetterAccessLevelRequest 175,337 175,334 -3 -0.0%
Sema.SimpleDidSetRequest 560,868 562,400 1,532 0.27%
Sema.SpecializeAttrTargetDeclRequest 1,604 1,604 0 0.0%
Sema.StorageImplInfoRequest 1,439,990 1,439,987 -3 -0.0%
Sema.StoredPropertiesAndMissingMembersRequest 43,638 43,638 0 0.0%
Sema.StoredPropertiesRequest 143,943 144,005 62 0.04%
Sema.StructuralRequirementsRequest 11,166 11,168 2 0.02%
Sema.StructuralTypeRequest 532 532 0 0.0%
Sema.SuperclassDeclRequest 110,908 110,788 -120 -0.11%
Sema.SuperclassTypeRequest 30,470 30,374 -96 -0.32%
Sema.SynthesizeAccessorRequest 238,230 238,230 0 0.0%
Sema.SynthesizeDefaultInitRequest 3,748 3,748 0 0.0%
Sema.SynthesizeMainFunctionRequest 111,216 111,216 0 0.0%
Sema.SynthesizeMemberwiseInitRequest 3,295 3,295 0 0.0%
Sema.SynthesizeRuntimeMetadataAttrGenerator 0 0 0 0.0%
Sema.SynthesizeRuntimeMetadataAttrGeneratorBody 0 0 0 0.0%
Sema.TangentStoredPropertyRequest 0 0 0 0.0%
Sema.TypeAliasRequirementsRequest 11,166 11,168 2 0.02%
Sema.TypeCheckASTNodeAtLocRequest 0 0 0 0.0%
Sema.TypeCheckFunctionBodyRequest 603,000 603,000 0 0.0%
Sema.TypeCheckSourceFileRequest 31,075 31,075 0 0.0%
Sema.TypeDeclsFromWhereClauseRequest 28,965 28,965 0 0.0%
Sema.TypeEraserHasViableInitRequest 0 0 0 0.0%
Sema.TypeRelationCheckRequest 0 0 0 0.0%
Sema.TypeWitnessRequest 4,644 4,645 1 0.02%
Sema.USRGenerationRequest 1,547,778 1,554,038 6,260 0.4%
Sema.UnderlyingTypeRequest 26,349 26,349 0 0.0%
Sema.UnqualifiedLookupRequest 2,708,286 2,708,180 -106 -0.0%
Sema.ValidatePrecedenceGroupRequest 195,506 195,506 0 0.0%
Sema.ValueWitnessRequest 33,441 33,448 7 0.02%
TBDGen.APIGenRequest 0 0 0 0.0%
TBDGen.GenerateTBDRequest 0 0 0 0.0%
TBDGen.PublicSymbolsRequest 1,198 1,198 0 0.0%
TBDGen.SymbolSourceMapRequest 0 0 0 0.0%

@xedin xedin changed the title [CSSolver] Initial implementation of disjunction choice favoring algorithm [CSSolver] implementation of disjunction choice favoring algorithm Feb 17, 2023
@xedin xedin changed the title [CSSolver] implementation of disjunction choice favoring algorithm [CSSolver] Implementation of disjunction choice favoring algorithm Feb 17, 2023
@xedin
Copy link
Member Author

xedin commented Feb 17, 2023

@swift-ci please test source compatibility

@xedin
Copy link
Member Author

xedin commented Feb 17, 2023

@swift-ci please test source compatibility

@xedin
Copy link
Member Author

xedin commented Feb 18, 2023

@swift-ci please test source compatibility

@xedin
Copy link
Member Author

xedin commented Feb 18, 2023

@swift-ci please test compiler performance

@xedin
Copy link
Member Author

xedin commented Feb 18, 2023

Summary for main full

Regressions found (see below)

Debug-batch

debug-batch brief

Regressed (0)
name old new delta delta_pct
Improved (1)
name old new delta delta_pct
Frontend.NumInstructionsExecuted 87,509,068,046,604 84,865,246,054,675 -2,643,821,991,928 -3.02% ✅
Unchanged (delta < 1.0% or delta < 100.0ms) (1)
name old new delta delta_pct
LLVM.NumLLVMBytesOutput 1,967,713,484 1,969,251,488 1,538,004 0.08%

debug-batch detailed

Regressed (7)
name old new delta delta_pct
Sema.InheritedProtocolsRequest 727,073 736,451 9,378 1.29% ⛔
Sema.NumConformancesDeserialized 4,835,180 4,894,027 58,846 1.22% ⛔
Sema.NumRequirementMachineCompletionSteps 22,499,291 24,496,412 1,997,121 8.88% ⛔
Sema.NumRequirementMachineUnifiedConcreteTerms 969,667 998,581 28,914 2.98% ⛔
Sema.NumRequirementMachines 1,884,685 1,962,763 78,078 4.14% ⛔
Sema.ProtocolDependenciesRequest 560,686 603,851 43,165 7.7% ⛔
Sema.UnderlyingTypeDeclsReferencedRequest 293,495 297,846 4,351 1.48% ⛔
Improved (18)
name old new delta delta_pct
Frontend.NumInstructionsExecuted 87,509,068,046,604 84,865,246,054,675 -2,643,821,991,928 -3.02% ✅
Sema.ActorIsolationRequest 5,686,952 5,597,220 -89,731 -1.58% ✅
Sema.CompareDeclSpecializationRequest 637,008 589,402 -47,606 -7.47% ✅
Sema.DefaultArgumentTypeRequest 19,534 19,233 -301 -1.54% ✅
Sema.DefaultTypeRequest 394,165 291,181 -102,984 -26.13% ✅
Sema.DirectLookupRequest 56,677,349 55,374,045 -1,303,304 -2.3% ✅
Sema.DynamicallyReplacedDeclRequest 6,066,567 5,977,827 -88,740 -1.46% ✅
Sema.ExistentialConformsToSelfRequest 25,422 24,250 -1,172 -4.61% ✅
Sema.GenericParamListRequest 5,799,760 5,663,712 -136,048 -2.35% ✅
Sema.GlobalActorAttributeRequest 7,236,512 7,143,166 -93,346 -1.29% ✅
Sema.HasDynamicCallableAttributeRequest 24,473 24,179 -294 -1.2% ✅
Sema.IsDeclRefinementOfRequest 52,971 6,353 -46,618 -88.01% ✅
Sema.LookupConformanceInModuleRequest 71,704,555 63,277,740 -8,426,815 -11.75% ✅
Sema.NumConstraintScopes 49,054,676 22,405,289 -26,649,387 -54.33% ✅
Sema.NumConstraintsConsideredForEdgeContraction 1,845,847 1,160,973 -684,874 -37.1% ✅
Sema.NumLeafScopes 37,007,359 14,364,329 -22,643,029 -61.19% ✅
Sema.QualifiedLookupRequest 7,823,520 7,703,379 -120,141 -1.54% ✅
Sema.ResolveImplicitMemberRequest 745,928 717,279 -28,649 -3.84% ✅
Unchanged (delta < 1.0% or delta < 100.0ms) (285)
name old new delta delta_pct
AST.ImportSetCacheHit 2,974,389 2,974,300 -89 -0.0%
AST.ImportSetCacheMiss 674,415 674,440 25 0.0%
AST.ImportSetFoldHit 342,551 342,562 11 0.0%
AST.ImportSetFoldMiss 331,864 331,878 14 0.0%
AST.ModuleShadowCacheHit 7,767 7,757 -10 -0.13%
AST.ModuleShadowCacheMiss 2,413 2,413 0 0.0%
AST.ModuleVisibilityCacheHit 16,809,170 16,808,918 -252 -0.0%
AST.ModuleVisibilityCacheMiss 144,379 144,379 0 0.0%
AST.NumASTBytesAllocated 48,592,999,121 48,652,329,890 59,330,769 0.12%
AST.NumASTScopeExpansions 6,824,498 6,825,146 648 0.01%
AST.NumASTScopeLookups 7,564,599 7,564,691 92 0.0%
AST.NumDecls 287,613 287,613 0 0.0%
AST.NumDependencies 374,970 374,970 0 0.0%
AST.NumIncrementalDependencies 17,791 17,791 0 0.0%
AST.NumLinkLibraries 0 0 0 0.0%
AST.NumLoadedModules 276,684 276,684 0 0.0%
AST.NumLocalTypeDecls 1,894 1,894 0 0.0%
AST.NumModuleLookupClassMember 6,820 6,820 0 0.0%
AST.NumModuleLookupValue 83,459,851 83,433,364 -26,487 -0.03%
AST.NumObjCMethods 67,500 67,500 0 0.0%
AST.NumOperators 1,022 1,022 0 0.0%
AST.NumPrecedenceGroups 172 172 0 0.0%
AST.NumReferencedDynamicNames 159 159 0 0.0%
AST.NumReferencedMemberNames 11,324,447 11,301,609 -22,838 -0.2%
AST.NumReferencedTopLevelNames 1,089,397 1,088,847 -550 -0.05%
AST.NumSourceBuffers 323,047 323,047 0 0.0%
AST.NumSourceLines 9,843,082 9,843,082 0 0.0%
AST.NumSourceLinesPerSecond 5,150,333 5,178,421 28,088 0.55%
AST.NumTotalClangImportedEntities 1,629,642 1,628,120 -1,522 -0.09%
Frontend.MaxMallocUsage 811,583,969,648 816,564,674,464 4,980,704,816 0.61%
Frontend.NumProcessFailures 34 34 0 0.0%
IRGen.IRGenRequest 25,299 25,299 0 0.0%
IRGen.OptimizedIRRequest 0 0 0 0.0%
IRGen.SymbolObjectCodeRequest 0 0 0 0.0%
IRModule.NumGOTEntries 243,986 244,101 115 0.05%
IRModule.NumIRAliases 197,237 197,237 0 0.0%
IRModule.NumIRBasicBlocks 6,868,778 6,887,361 18,583 0.27%
IRModule.NumIRComdatSymbols 0 0 0 0.0%
IRModule.NumIRFunctions 3,642,355 3,646,933 4,578 0.13%
IRModule.NumIRGlobals 3,587,291 3,588,927 1,636 0.05%
IRModule.NumIRIFuncs 0 0 0 0.0%
IRModule.NumIRInsts 83,456,734 83,522,477 65,743 0.08%
IRModule.NumIRNamedMetaData 125,495 125,495 0 0.0%
IRModule.NumIRValueSymbols 7,282,487 7,288,697 6,210 0.09%
LLVM.NumLLVMBytesOutput 1,967,713,484 1,969,251,488 1,538,004 0.08%
Parse.IDEInspectionSecondPassRequest 0 0 0 0.0%
Parse.NumFunctionsParsed 316,020 316,020 0 0.0%
Parse.NumIterableDeclContextParsed 643,373 643,306 -67 -0.01%
Parse.ParseAbstractFunctionBodyRequest 540,762 540,770 8 0.0%
Parse.ParseMembersRequest 497,094 497,027 -67 -0.01%
Parse.ParseSourceFileRequest 316,761 316,761 0 0.0%
Parse.ParseTopLevelDeclsRequest 316,761 316,761 0 0.0%
SILGen.ASTLoweringRequest 26,491 26,491 0 0.0%
SILGen.ParseSILModuleRequest 0 0 0 0.0%
SILModule.NumSILGenDefaultWitnessTables 0 0 0 0.0%
SILModule.NumSILGenFunctions 2,721,058 2,721,513 455 0.02%
SILModule.NumSILGenGlobalVariables 114,833 114,833 0 0.0%
SILModule.NumSILGenVtables 34,449 34,449 0 0.0%
SILModule.NumSILGenWitnessTables 144,406 144,450 44 0.03%
SILModule.NumSILOptDefaultWitnessTables 0 0 0 0.0%
SILModule.NumSILOptFunctions 3,200,449 3,202,433 1,984 0.06%
SILModule.NumSILOptGlobalVariables 116,590 116,588 -2 -0.0%
SILModule.NumSILOptVtables 34,724 34,720 -4 -0.01%
SILModule.NumSILOptWitnessTables 177,031 177,242 211 0.12%
SILOptimizer.ExecuteSILPipelineRequest 103,608 103,608 0 0.0%
SILOptimizer.LoweredSILRequest 0 0 0 0.0%
Sema.ABIMembersRequest 251,191 251,290 99 0.04%
Sema.AbstractGenericSignatureRequest 123,476 123,615 139 0.11%
Sema.AccessLevelRequest 14,682,111 14,744,335 62,224 0.42%
Sema.AllMembersRequest 93,859 93,859 0 0.0%
Sema.AnyObjectLookupRequest 234 234 0 0.0%
Sema.ApplyAccessNoteRequest 3,563,798 3,564,391 592 0.02%
Sema.AreAllStoredPropertiesDefaultInitableRequest 39,537 39,537 0 0.0%
Sema.AttachedPropertyWrapperTypeRequest 23,952 23,952 0 0.0%
Sema.AttachedPropertyWrappersRequest 18,110,893 18,138,501 27,608 0.15%
Sema.AttachedResultBuilderRequest 1,553,015 1,552,533 -482 -0.03%
Sema.BodyInitKindRequest 70,234 70,238 4 0.01%
Sema.BreakTargetRequest 5,248 5,248 0 0.0%
Sema.CXXNamespaceMemberLookup 0 0 0 0.0%
Sema.CallerSideDefaultArgExprRequest 276,951 276,951 0 0.0%
Sema.CheckDistributedFunctionRequest 0 0 0 0.0%
Sema.CheckInconsistentImplementationOnlyImportsRequest 9,556 9,556 0 0.0%
Sema.CheckInconsistentSPIOnlyImportsRequest 51,134 51,134 0 0.0%
Sema.CheckInconsistentWeakLinkedImportsRequest 9,556 9,556 0 0.0%
Sema.CheckRedeclarationRequest 1,879,444 1,879,444 0 0.0%
Sema.ClangCategoryLookupRequest 0 0 0 0.0%
Sema.ClangDirectLookupRequest 13,011 12,932 -79 -0.61%
Sema.ClangRecordMemberLookup 13,011 12,932 -79 -0.61%
Sema.ClassAncestryFlagsRequest 129,672 129,420 -252 -0.19%
Sema.ClosureEffectsRequest 113,085 113,085 0 0.0%
Sema.ClosureHasExplicitResultRequest 40,634 40,634 0 0.0%
Sema.CollectOverriddenDeclsRequest 10,984,981 11,027,963 42,982 0.39%
Sema.CompilerPluginLoadRequest 0 0 0 0.0%
Sema.ConditionalRequirementsRequest 692,128 691,932 -196 -0.03%
Sema.ConformanceHasEffectRequest 4 4 0 0.0%
Sema.ConstantValueInfoRequest 0 0 0 0.0%
Sema.ContinueTargetRequest 1,886 1,886 0 0.0%
Sema.CursorInfoRequest 0 0 0 0.0%
Sema.CustomAttrNominalRequest 22,469 22,469 0 0.0%
Sema.CustomAttrTypeRequest 3,355 3,355 0 0.0%
Sema.CustomRefCountingOperation 0 0 0 0.0%
Sema.CxxRecordSemantics 0 0 0 0.0%
Sema.DefaultAndMaxAccessLevelRequest 100,387 100,387 0 0.0%
Sema.DefaultArgumentExprRequest 87,254 87,254 0 0.0%
Sema.DefaultArgumentInitContextRequest 791 791 0 0.0%
Sema.DefaultDefinitionTypeRequest 7,199 7,192 -7 -0.1%
Sema.DerivativeAttrOriginalDeclRequest 0 0 0 0.0%
Sema.DifferentiableAttributeTypeCheckRequest 0 0 0 0.0%
Sema.DirectOperatorLookupRequest 1,884,226 1,883,745 -481 -0.03%
Sema.DirectPrecedenceGroupLookupRequest 733,019 733,019 0 0.0%
Sema.DistributedModuleIsAvailableRequest 0 0 0 0.0%
Sema.EnumRawTypeRequest 33,553 33,563 10 0.03%
Sema.EnumRawValuesRequest 18,944 18,944 0 0.0%
Sema.ExistentialRequiresAnyRequest 14,983 14,983 0 0.0%
Sema.ExpandAccessorMacros 1,054,081 1,054,105 24 0.0%
Sema.ExpandMacroExpansionDeclRequest 0 0 0 0.0%
Sema.ExpandMemberAttributeMacros 33,490,407 33,535,803 45,396 0.14%
Sema.ExpandPeerMacroRequest 3,397,396 3,397,525 129 0.0%
Sema.ExpandSynthesizedMemberMacroRequest 855,085 853,098 -1,987 -0.23%
Sema.ExtendedNominalRequest 571,948 571,948 0 0.0%
Sema.ExtendedTypeRequest 175,947 175,938 -9 -0.01%
Sema.ExternalMacroDefinitionRequest 0 0 0 0.0%
Sema.FragileFunctionKindRequest 2,203,039 2,203,571 532 0.02%
Sema.FunctionOperatorRequest 16,964 16,964 0 0.0%
Sema.GenericSignatureRequest 3,000,313 2,999,279 -1,034 -0.03%
Sema.GetDestructorRequest 40,981 40,980 -1 -0.0%
Sema.GetDistributedActorArgumentDecodingMethodRequest 0 0 0 0.0%
Sema.GetDistributedActorIDPropertyRequest 0 0 0 0.0%
Sema.GetDistributedActorImplicitCodableRequest 0 0 0 0.0%
Sema.GetDistributedActorInvocationDecoderRequest 0 0 0 0.0%
Sema.GetDistributedActorSystemPropertyRequest 0 0 0 0.0%
Sema.GetDistributedActorSystemRemoteCallFunctionRequest 0 0 0 0.0%
Sema.GetDistributedRemoteCallArgumentInitFunctionRequest 0 0 0 0.0%
Sema.GetDistributedRemoteCallTargetInitFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationDecoderDecodeNextArgumentFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationEncoderRecordArgumentFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationEncoderRecordErrorTypeFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationEncoderRecordReturnTypeFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationResultHandlerOnReturnFunctionRequest 0 0 0 0.0%
Sema.GetDistributedThunkRequest 0 0 0 0.0%
Sema.GetImplicitSendableRequest 296,525 296,598 72 0.02%
Sema.GetRuntimeDiscoverableAttributes 1,978,834 1,978,834 0 0.0%
Sema.GetSourceFileAsyncNode 110 110 0 0.0%
Sema.GlobalActorInstanceRequest 1,090 1,090 0 0.0%
Sema.HasCircularInheritedProtocolsRequest 16,489 16,489 0 0.0%
Sema.HasCircularRawValueRequest 19,134 19,134 0 0.0%
Sema.HasDefaultInitRequest 86,014 86,014 0 0.0%
Sema.HasDynamicMemberLookupAttributeRequest 492,764 492,478 -286 -0.06%
Sema.HasImportsMatchingFlagRequest 629,293 629,293 0 0.0%
Sema.HasIsolatedSelfRequest 12,586,999 12,509,693 -77,306 -0.61%
Sema.HasMemberwiseInitRequest 38,223 38,223 0 0.0%
Sema.HasMissingDesignatedInitializersRequest 29,154 29,154 0 0.0%
Sema.HasUserDefinedDesignatedInitRequest 86,024 86,024 0 0.0%
Sema.IDEInspectionFileRequest 0 0 0 0.0%
Sema.InferredGenericSignatureRequest 212,841 212,841 0 0.0%
Sema.InheritedDeclsReferencedRequest 5,987,801 6,041,108 53,307 0.89%
Sema.InheritedTypeRequest 409,677 409,862 185 0.05%
Sema.InheritsSuperclassInitializersRequest 38,260 38,261 1 0.0%
Sema.InitKindRequest 157,735 157,738 3 0.0%
Sema.InterfaceTypeRequest 18,929,373 18,949,947 20,574 0.11%
Sema.IsABICompatibleOverrideRequest 265,863 265,863 0 0.0%
Sema.IsAccessorTransparentRequest 485,567 485,567 0 0.0%
Sema.IsActorRequest 1,948,323 1,949,605 1,281 0.07%
Sema.IsCallAsFunctionNominalRequest 5,815 5,781 -34 -0.58%
Sema.IsDeclApplicableRequest 0 0 0 0.0%
Sema.IsDefaultActorRequest 55,143 55,152 9 0.02%
Sema.IsDistributedActorRequest 2,175,155 2,177,150 1,995 0.09%
Sema.IsDynamicRequest 2,652,600 2,653,143 543 0.02%
Sema.IsFinalRequest 4,003,327 4,010,728 7,401 0.18%
Sema.IsGetterMutatingRequest 660,438 660,434 -4 -0.0%
Sema.IsImplicitlyUnwrappedOptionalRequest 3,294,145 3,290,974 -3,171 -0.1%
Sema.IsMoveOnlyRequest 605,948 607,302 1,354 0.22%
Sema.IsObjCRequest 2,471,936 2,472,529 592 0.02%
Sema.IsSafeUseOfCxxDecl 0 0 0 0.0%
Sema.IsSetterMutatingRequest 583,497 583,497 0 0.0%
Sema.IsSingleValueStmtRequest 307,034 307,034 0 0.0%
Sema.IsStaticRequest 1,386,685 1,386,766 81 0.01%
Sema.LazyStoragePropertyRequest 2,348 2,348 0 0.0%
Sema.LocalDiscriminatorsRequest 432,133 432,133 0 0.0%
Sema.LookupAllConformancesInContextRequest 2,321,185 2,330,217 9,032 0.39%
Sema.LookupInModuleRequest 7,786,508 7,769,642 -16,865 -0.22%
Sema.LookupInfixOperatorRequest 65,755 65,755 0 0.0%
Sema.LookupPostfixOperatorRequest 74 74 0 0.0%
Sema.LookupPrecedenceGroupRequest 28,292 28,292 0 0.0%
Sema.LookupPrefixOperatorRequest 350 350 0 0.0%
Sema.MacroDefinitionRequest 0 0 0 0.0%
Sema.MangleLocalTypeDeclRequest 837 837 0 0.0%
Sema.ModuleImplicitImportsRequest 9,556 9,556 0 0.0%
Sema.ModuleLibraryLevelRequest 351 351 0 0.0%
Sema.ModuleQualifiedLookupRequest 3,007,665 2,990,660 -17,005 -0.57%
Sema.NamedLazyMemberLoadSuccessCount 31,868,507 31,782,006 -86,501 -0.27%
Sema.NamingPatternRequest 229,520 229,518 -2 -0.0%
Sema.NeedsNewVTableEntryRequest 900,448 900,448 0 0.0%
Sema.NumAccessorBodiesSynthesized 396,321 396,321 0 0.0%
Sema.NumAccessorsSynthesized 488,304 488,304 0 0.0%
Sema.NumConformancePathsRecorded 756,462 756,389 -72 -0.01%
Sema.NumCrossImportsChecked 0 0 0 0.0%
Sema.NumCrossImportsFound 0 0 0 0.0%
Sema.NumCyclicOneWayComponentsCollapsed 0 0 0 0.0%
Sema.NumDeclsDeserialized 79,805,284 79,993,196 187,912 0.24%
Sema.NumDeclsTypechecked 2,661,506 2,661,506 0 0.0%
Sema.NumLazyIterableDeclContexts 11,447,467 11,490,113 42,646 0.37%
Sema.NumLazyRequirementSignatures 962,948 963,069 120 0.01%
Sema.NumLazyRequirementSignaturesLoaded 656,669 662,076 5,407 0.82%
Sema.NumTypesDeserialized 22,697,821 22,726,723 28,902 0.13%
Sema.NumUnloadedLazyIterableDeclContexts 8,130,414 8,162,219 31,805 0.39%
Sema.ObjCInterfaceAndImplementationRequest 721,124 721,796 672 0.09%
Sema.OpaqueReadOwnershipRequest 427,950 427,954 4 0.0%
Sema.OpaqueResultTypeRequest 860 860 0 0.0%
Sema.OperatorPrecedenceGroupRequest 1,021 1,021 0 0.0%
Sema.OverriddenDeclsRequest 5,069,560 5,073,263 3,703 0.07%
Sema.ParamSpecifierRequest 1,851,922 1,851,915 -7 -0.0%
Sema.PatternBindingEntryRequest 652,872 652,870 -2 -0.0%
Sema.PatternTypeRequest 765,335 765,333 -2 -0.0%
Sema.PolymorphicEffectKindRequest 904,450 904,896 446 0.05%
Sema.PolymorphicEffectRequirementsRequest 7 7 0 0.0%
Sema.PreCheckResultBuilderRequest 1,038 1,038 0 0.0%
Sema.PreCheckReturnStmtRequest 477,636 477,636 0 0.0%
Sema.PrimaryAssociatedTypesRequest 6,998 6,998 0 0.0%
Sema.PrimarySourceFilesRequest 9,556 9,556 0 0.0%
Sema.PropertyWrapperAuxiliaryVariablesRequest 1,916,227 1,916,227 0 0.0%
Sema.PropertyWrapperBackingPropertyTypeRequest 23,952 23,952 0 0.0%
Sema.PropertyWrapperInitializerInfoRequest 559,966 559,966 0 0.0%
Sema.PropertyWrapperLValuenessRequest 2,878 2,878 0 0.0%
Sema.PropertyWrapperMutabilityRequest 656,371 656,371 0 0.0%
Sema.PropertyWrapperTypeInfoRequest 592 592 0 0.0%
Sema.ProtocolRequirementsRequest 69,525 69,624 99 0.14%
Sema.ProtocolRequiresClassRequest 42,943 42,901 -42 -0.1%
Sema.ProvideDefaultImplForRequest 10,984,981 11,027,963 42,982 0.39%
Sema.RangeInfoRequest 0 0 0 0.0%
Sema.RenamedDeclRequest 1,491 1,491 0 0.0%
Sema.RequirementRequest 170,448 170,445 -3 -0.0%
Sema.RequirementSignatureRequest 710,044 715,514 5,469 0.77%
Sema.RequiresOpaqueAccessorsRequest 1,679,299 1,679,309 10 0.0%
Sema.RequiresOpaqueModifyCoroutineRequest 427,141 427,151 10 0.0%
Sema.ResolveEffectiveMemberwiseInitRequest 0 0 0 0.0%
Sema.ResolveMacroRequest 29,838 29,838 0 0.0%
Sema.ResolveProtocolNameRequest 0 0 0 0.0%
Sema.ResolveTypeEraserTypeRequest 0 0 0 0.0%
Sema.ResolveTypeRequest 4,801,034 4,761,445 -39,589 -0.82%
Sema.ResultBuilderTypeRequest 437,645 436,989 -656 -0.15%
Sema.ResultTypeRequest 1,049,021 1,049,014 -7 -0.0%
Sema.RootAndResultTypeOfKeypathDynamicMemberRequest 0 0 0 0.0%
Sema.RootTypeOfKeypathDynamicMemberRequest 0 0 0 0.0%
Sema.SPIGroupsRequest 6,903,458 6,898,031 -5,427 -0.08%
Sema.ScopedImportLookupRequest 626 626 0 0.0%
Sema.SelfAccessKindRequest 865,490 865,445 -44 -0.01%
Sema.SelfBoundsFromGenericSignatureRequest 64,022 63,764 -258 -0.4%
Sema.SelfBoundsFromWhereClauseRequest 1,704,344 1,700,294 -4,050 -0.24%
Sema.SemanticAvailableRangeAttrRequest 5,205 5,205 0 0.0%
Sema.SemanticUnavailableAttrRequest 148,794 148,794 0 0.0%
Sema.SetterAccessLevelRequest 228,937 228,934 -3 -0.0%
Sema.SimpleDidSetRequest 2,737,203 2,743,398 6,195 0.23%
Sema.SpecializeAttrTargetDeclRequest 2,997 2,997 0 0.0%
Sema.StorageImplInfoRequest 1,924,546 1,924,574 28 0.0%
Sema.StoredPropertiesAndMissingMembersRequest 59,140 59,149 9 0.02%
Sema.StoredPropertiesRequest 354,569 355,812 1,243 0.35%
Sema.StructuralRequirementsRequest 53,512 53,574 62 0.12%
Sema.StructuralTypeRequest 1,861 1,861 0 0.0%
Sema.SuperclassDeclRequest 488,712 487,355 -1,357 -0.28%
Sema.SuperclassTypeRequest 64,101 63,800 -301 -0.47%
Sema.SynthesizeAccessorRequest 488,304 488,304 0 0.0%
Sema.SynthesizeDefaultInitRequest 9,598 9,598 0 0.0%
Sema.SynthesizeMainFunctionRequest 217,445 217,544 99 0.05%
Sema.SynthesizeMemberwiseInitRequest 7,852 7,852 0 0.0%
Sema.SynthesizeRuntimeMetadataAttrGenerator 0 0 0 0.0%
Sema.SynthesizeRuntimeMetadataAttrGeneratorBody 0 0 0 0.0%
Sema.TangentStoredPropertyRequest 0 0 0 0.0%
Sema.TypeAliasRequirementsRequest 53,512 53,574 62 0.12%
Sema.TypeCheckASTNodeAtLocRequest 0 0 0 0.0%
Sema.TypeCheckFunctionBodyRequest 825,815 825,819 4 0.0%
Sema.TypeCheckSourceFileRequest 51,134 51,134 0 0.0%
Sema.TypeDeclsFromWhereClauseRequest 50,878 50,878 0 0.0%
Sema.TypeEraserHasViableInitRequest 0 0 0 0.0%
Sema.TypeRelationCheckRequest 0 0 0 0.0%
Sema.TypeWitnessRequest 13,793 13,752 -41 -0.3%
Sema.USRGenerationRequest 12,346,924 12,388,370 41,446 0.34%
Sema.UnderlyingTypeRequest 50,656 50,645 -11 -0.02%
Sema.UnqualifiedLookupRequest 5,893,634 5,893,759 125 0.0%
Sema.ValidatePrecedenceGroupRequest 217,479 217,479 0 0.0%
Sema.ValueWitnessRequest 71,361 71,422 61 0.09%
TBDGen.APIGenRequest 0 0 0 0.0%
TBDGen.GenerateTBDRequest 0 0 0 0.0%
TBDGen.PublicSymbolsRequest 25,313 25,313 0 0.0%
TBDGen.SymbolSourceMapRequest 0 0 0 0.0%

Release

release brief

Regressed (0)
name old new delta delta_pct
Improved (1)
name old new delta delta_pct
Frontend.NumInstructionsExecuted 107,670,748,684,366 105,661,408,560,537 -2,009,340,123,828 -1.87% ✅
Unchanged (delta < 1.0% or delta < 100.0ms) (1)
name old new delta delta_pct
LLVM.NumLLVMBytesOutput 2,038,050,856 2,038,545,500 494,644 0.02%

release detailed

Regressed (6)
name old new delta delta_pct
Sema.InheritedDeclsReferencedRequest 1,249,014 1,285,608 36,594 2.93% ⛔
Sema.NumConformancesDeserialized 934,817 968,781 33,964 3.63% ⛔
Sema.NumRequirementMachineCompletionSteps 4,637,169 4,896,788 259,619 5.6% ⛔
Sema.NumRequirementMachines 411,721 422,966 11,244 2.73% ⛔
Sema.ProtocolDependenciesRequest 101,009 106,554 5,544 5.49% ⛔
Sema.UnderlyingTypeDeclsReferencedRequest 62,867 65,824 2,957 4.7% ⛔
Improved (17)
name old new delta delta_pct
Frontend.NumInstructionsExecuted 107,670,748,684,366 105,661,408,560,537 -2,009,340,123,828 -1.87% ✅
Sema.ActorIsolationRequest 2,099,262 2,078,078 -21,184 -1.01% ✅
Sema.CompareDeclSpecializationRequest 428,678 386,570 -42,108 -9.82% ✅
Sema.DefaultArgumentTypeRequest 9,388 9,115 -273 -2.91% ✅
Sema.DefaultTypeRequest 319,723 220,179 -99,544 -31.13% ✅
Sema.DirectLookupRequest 45,195,489 44,032,676 -1,162,813 -2.57% ✅
Sema.ExistentialConformsToSelfRequest 6,116 5,676 -440 -7.2% ✅
Sema.GenericParamListRequest 1,706,641 1,634,989 -71,652 -4.2% ✅
Sema.HasDynamicCallableAttributeRequest 10,756 10,637 -119 -1.11% ✅
Sema.IsDeclRefinementOfRequest 29,235 3,427 -25,808 -88.28% ✅
Sema.LookupConformanceInModuleRequest 53,717,574 47,603,556 -6,114,018 -11.38% ✅
Sema.NumConstraintScopes 37,992,217 17,997,474 -19,994,743 -52.63% ✅
Sema.NumConstraintsConsideredForEdgeContraction 1,797,971 1,212,505 -585,466 -32.56% ✅
Sema.NumLeafScopes 28,391,208 11,210,303 -17,180,905 -60.51% ✅
Sema.QualifiedLookupRequest 4,592,431 4,493,652 -98,779 -2.15% ✅
Sema.ResolveImplicitMemberRequest 468,615 442,429 -26,186 -5.59% ✅
Sema.ResolveTypeRequest 2,313,855 2,278,602 -35,253 -1.52% ✅
Unchanged (delta < 1.0% or delta < 100.0ms) (287)
name old new delta delta_pct
AST.ImportSetCacheHit 1,568,370 1,568,129 -241 -0.02%
AST.ImportSetCacheMiss 83,424 83,440 16 0.02%
AST.ImportSetFoldHit 42,149 42,158 9 0.02%
AST.ImportSetFoldMiss 41,275 41,282 7 0.02%
AST.ModuleShadowCacheHit 5,278 5,268 -10 -0.19%
AST.ModuleShadowCacheMiss 1,357 1,357 0 0.0%
AST.ModuleVisibilityCacheHit 8,171,899 8,171,728 -171 -0.0%
AST.ModuleVisibilityCacheMiss 30,359 30,359 0 0.0%
AST.NumASTBytesAllocated 11,981,110,015 11,988,914,309 7,804,294 0.07%
AST.NumASTScopeExpansions 3,305,426 3,305,426 0 0.0%
AST.NumASTScopeLookups 4,729,022 4,728,899 -123 -0.0%
AST.NumDecls 165,179 165,179 0 0.0%
AST.NumDependencies 55,521 55,521 0 0.0%
AST.NumIncrementalDependencies 58 58 0 0.0%
AST.NumLinkLibraries 0 0 0 0.0%
AST.NumLoadedModules 32,702 32,702 0 0.0%
AST.NumLocalTypeDecls 1,057 1,057 0 0.0%
AST.NumModuleLookupClassMember 6,694 6,694 0 0.0%
AST.NumModuleLookupValue 41,838,206 41,830,359 -7,847 -0.02%
AST.NumObjCMethods 33,770 33,770 0 0.0%
AST.NumOperators 512 512 0 0.0%
AST.NumPrecedenceGroups 88 88 0 0.0%
AST.NumReferencedDynamicNames 0 0 0 0.0%
AST.NumReferencedMemberNames 4,002 3,990 -12 -0.3%
AST.NumReferencedTopLevelNames 352 352 0 0.0%
AST.NumSourceBuffers 33,014 33,014 0 0.0%
AST.NumSourceLines 5,578,823 5,578,823 0 0.0%
AST.NumSourceLinesPerSecond 376,838 375,066 -1,772 -0.47%
AST.NumTotalClangImportedEntities 490,508 490,424 -84 -0.02%
Frontend.MaxMallocUsage 289,229,743,312 289,810,636,360 580,893,048 0.2%
Frontend.NumProcessFailures 8 8 0 0.0%
IRGen.IRGenRequest 12 12 0 0.0%
IRGen.OptimizedIRRequest 0 0 0 0.0%
IRGen.SymbolObjectCodeRequest 0 0 0 0.0%
IRModule.NumGOTEntries 231,775 231,836 61 0.03%
IRModule.NumIRAliases 165,263 165,263 0 0.0%
IRModule.NumIRBasicBlocks 5,296,784 5,289,039 -7,745 -0.15%
IRModule.NumIRComdatSymbols 0 0 0 0.0%
IRModule.NumIRFunctions 3,049,328 3,050,649 1,320 0.04%
IRModule.NumIRGlobals 3,313,139 3,313,883 744 0.02%
IRModule.NumIRIFuncs 0 0 0 0.0%
IRModule.NumIRInsts 51,134,297 51,146,427 12,130 0.02%
IRModule.NumIRNamedMetaData 128,438 128,438 0 0.0%
IRModule.NumIRValueSymbols 6,391,964 6,394,029 2,064 0.03%
LLVM.NumLLVMBytesOutput 2,038,050,856 2,038,545,500 494,644 0.02%
Parse.IDEInspectionSecondPassRequest 0 0 0 0.0%
Parse.NumFunctionsParsed 297,172 297,172 0 0.0%
Parse.NumIterableDeclContextParsed 113,779 113,779 0 0.0%
Parse.ParseAbstractFunctionBodyRequest 311,077 311,085 8 0.0%
Parse.ParseMembersRequest 14,598 14,598 0 0.0%
Parse.ParseSourceFileRequest 31,099 31,099 0 0.0%
Parse.ParseTopLevelDeclsRequest 31,099 31,099 0 0.0%
SILGen.ASTLoweringRequest 1,250 1,250 0 0.0%
SILGen.ParseSILModuleRequest 0 0 0 0.0%
SILModule.NumSILGenDefaultWitnessTables 830 830 0 0.0%
SILModule.NumSILGenFunctions 1,422,105 1,422,493 388 0.03%
SILModule.NumSILGenGlobalVariables 59,773 59,773 0 0.0%
SILModule.NumSILGenVtables 24,120 24,120 0 0.0%
SILModule.NumSILGenWitnessTables 80,037 80,081 44 0.05%
SILModule.NumSILOptDefaultWitnessTables 830 830 0 0.0%
SILModule.NumSILOptFunctions 1,250,363 1,250,999 636 0.05%
SILModule.NumSILOptGlobalVariables 56,254 56,350 96 0.17%
SILModule.NumSILOptVtables 28,355 28,357 2 0.01%
SILModule.NumSILOptWitnessTables 80,552 80,596 44 0.05%
SILOptimizer.ExecuteSILPipelineRequest 4,896 4,896 0 0.0%
SILOptimizer.LoweredSILRequest 0 0 0 0.0%
Sema.ABIMembersRequest 121,359 121,359 0 0.0%
Sema.AbstractGenericSignatureRequest 70,541 70,498 -43 -0.06%
Sema.AccessLevelRequest 2,943,343 2,942,742 -601 -0.02%
Sema.AllMembersRequest 96,484 96,484 0 0.0%
Sema.AnyObjectLookupRequest 236 236 0 0.0%
Sema.ApplyAccessNoteRequest 1,980,438 1,980,431 -7 -0.0%
Sema.AreAllStoredPropertiesDefaultInitableRequest 22,050 22,050 0 0.0%
Sema.AttachedPropertyWrapperTypeRequest 9,486 9,486 0 0.0%
Sema.AttachedPropertyWrappersRequest 4,420,450 4,415,813 -4,637 -0.1%
Sema.AttachedResultBuilderRequest 919,443 919,271 -172 -0.02%
Sema.BodyInitKindRequest 53,359 53,363 4 0.01%
Sema.BreakTargetRequest 4,399 4,399 0 0.0%
Sema.CXXNamespaceMemberLookup 0 0 0 0.0%
Sema.CallerSideDefaultArgExprRequest 239,314 239,314 0 0.0%
Sema.CheckDistributedFunctionRequest 0 0 0 0.0%
Sema.CheckInconsistentImplementationOnlyImportsRequest 1,258 1,258 0 0.0%
Sema.CheckInconsistentSPIOnlyImportsRequest 31,075 31,075 0 0.0%
Sema.CheckInconsistentWeakLinkedImportsRequest 1,258 1,258 0 0.0%
Sema.CheckRedeclarationRequest 1,183,047 1,183,047 0 0.0%
Sema.ClangCategoryLookupRequest 0 0 0 0.0%
Sema.ClangDirectLookupRequest 6,804 6,784 -20 -0.29%
Sema.ClangRecordMemberLookup 6,804 6,784 -20 -0.29%
Sema.ClassAncestryFlagsRequest 56,442 56,382 -60 -0.11%
Sema.ClosureEffectsRequest 103,378 103,378 0 0.0%
Sema.ClosureHasExplicitResultRequest 36,201 36,201 0 0.0%
Sema.CollectOverriddenDeclsRequest 1,052,308 1,055,012 2,703 0.26%
Sema.CompilerPluginLoadRequest 0 0 0 0.0%
Sema.ConditionalRequirementsRequest 225,292 224,285 -1,007 -0.45%
Sema.ConformanceHasEffectRequest 3 3 0 0.0%
Sema.ConstantValueInfoRequest 0 0 0 0.0%
Sema.ContinueTargetRequest 1,680 1,680 0 0.0%
Sema.CursorInfoRequest 0 0 0 0.0%
Sema.CustomAttrNominalRequest 9,123 9,123 0 0.0%
Sema.CustomAttrTypeRequest 1,323 1,323 0 0.0%
Sema.CustomRefCountingOperation 0 0 0 0.0%
Sema.CxxRecordSemantics 0 0 0 0.0%
Sema.DefaultAndMaxAccessLevelRequest 49,492 49,492 0 0.0%
Sema.DefaultArgumentExprRequest 45,831 45,831 0 0.0%
Sema.DefaultArgumentInitContextRequest 299 299 0 0.0%
Sema.DefaultDefinitionTypeRequest 3,221 3,221 0 0.0%
Sema.DerivativeAttrOriginalDeclRequest 0 0 0 0.0%
Sema.DifferentiableAttributeTypeCheckRequest 0 0 0 0.0%
Sema.DirectOperatorLookupRequest 1,429,984 1,429,852 -132 -0.01%
Sema.DirectPrecedenceGroupLookupRequest 623,012 623,012 0 0.0%
Sema.DistributedModuleIsAvailableRequest 0 0 0 0.0%
Sema.DynamicallyReplacedDeclRequest 2,271,966 2,251,089 -20,877 -0.92%
Sema.EnumRawTypeRequest 10,203 10,203 0 0.0%
Sema.EnumRawValuesRequest 10,460 10,460 0 0.0%
Sema.ExistentialRequiresAnyRequest 7,538 7,538 0 0.0%
Sema.ExpandAccessorMacros 666,122 666,119 -3 -0.0%
Sema.ExpandMacroExpansionDeclRequest 0 0 0 0.0%
Sema.ExpandMemberAttributeMacros 8,001,008 7,993,242 -7,766 -0.1%
Sema.ExpandPeerMacroRequest 1,728,667 1,728,667 0 0.0%
Sema.ExpandSynthesizedMemberMacroRequest 237,099 236,745 -354 -0.15%
Sema.ExtendedNominalRequest 53,904 53,904 0 0.0%
Sema.ExtendedTypeRequest 53,820 53,820 0 0.0%
Sema.ExternalMacroDefinitionRequest 0 0 0 0.0%
Sema.FragileFunctionKindRequest 1,195,366 1,195,676 310 0.03%
Sema.FunctionOperatorRequest 8,357 8,357 0 0.0%
Sema.GenericSignatureRequest 1,155,080 1,155,019 -61 -0.01%
Sema.GetDestructorRequest 25,349 25,349 0 0.0%
Sema.GetDistributedActorArgumentDecodingMethodRequest 0 0 0 0.0%
Sema.GetDistributedActorIDPropertyRequest 0 0 0 0.0%
Sema.GetDistributedActorImplicitCodableRequest 0 0 0 0.0%
Sema.GetDistributedActorInvocationDecoderRequest 0 0 0 0.0%
Sema.GetDistributedActorSystemPropertyRequest 0 0 0 0.0%
Sema.GetDistributedActorSystemRemoteCallFunctionRequest 0 0 0 0.0%
Sema.GetDistributedRemoteCallArgumentInitFunctionRequest 0 0 0 0.0%
Sema.GetDistributedRemoteCallTargetInitFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationDecoderDecodeNextArgumentFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationEncoderRecordArgumentFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationEncoderRecordErrorTypeFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationEncoderRecordReturnTypeFunctionRequest 0 0 0 0.0%
Sema.GetDistributedTargetInvocationResultHandlerOnReturnFunctionRequest 0 0 0 0.0%
Sema.GetDistributedThunkRequest 0 0 0 0.0%
Sema.GetImplicitSendableRequest 68,122 68,374 252 0.37%
Sema.GetRuntimeDiscoverableAttributes 1,238,412 1,238,412 0 0.0%
Sema.GetSourceFileAsyncNode 54 54 0 0.0%
Sema.GlobalActorAttributeRequest 2,825,238 2,802,729 -22,509 -0.8%
Sema.GlobalActorInstanceRequest 232 232 0 0.0%
Sema.HasCircularInheritedProtocolsRequest 8,251 8,251 0 0.0%
Sema.HasCircularRawValueRequest 10,201 10,201 0 0.0%
Sema.HasDefaultInitRequest 39,838 39,838 0 0.0%
Sema.HasDynamicMemberLookupAttributeRequest 137,662 137,466 -196 -0.14%
Sema.HasImportsMatchingFlagRequest 61,868 61,868 0 0.0%
Sema.HasIsolatedSelfRequest 4,219,570 4,198,369 -21,201 -0.5%
Sema.HasMemberwiseInitRequest 15,262 15,262 0 0.0%
Sema.HasMissingDesignatedInitializersRequest 20,931 20,931 0 0.0%
Sema.HasUserDefinedDesignatedInitRequest 39,838 39,838 0 0.0%
Sema.IDEInspectionFileRequest 0 0 0 0.0%
Sema.InferredGenericSignatureRequest 86,475 86,475 0 0.0%
Sema.InheritedProtocolsRequest 123,238 124,093 854 0.69%
Sema.InheritedTypeRequest 204,708 204,711 3 0.0%
Sema.InheritsSuperclassInitializersRequest 20,910 20,911 1 0.0%
Sema.InitKindRequest 77,592 77,596 4 0.01%
Sema.InterfaceTypeRequest 5,207,962 5,203,658 -4,304 -0.08%
Sema.IsABICompatibleOverrideRequest 156,775 156,775 0 0.0%
Sema.IsAccessorTransparentRequest 272,790 272,790 0 0.0%
Sema.IsActorRequest 387,416 387,623 206 0.05%
Sema.IsCallAsFunctionNominalRequest 5,691 5,657 -34 -0.6%
Sema.IsDeclApplicableRequest 0 0 0 0.0%
Sema.IsDefaultActorRequest 32,775 32,775 0 0.0%
Sema.IsDistributedActorRequest 450,106 450,338 231 0.05%
Sema.IsDynamicRequest 1,472,333 1,472,658 325 0.02%
Sema.IsFinalRequest 1,455,751 1,456,225 474 0.03%
Sema.IsGetterMutatingRequest 400,651 400,655 4 0.0%
Sema.IsImplicitlyUnwrappedOptionalRequest 2,137,795 2,137,195 -600 -0.03%
Sema.IsMoveOnlyRequest 189,805 189,892 87 0.05%
Sema.IsObjCRequest 1,332,664 1,332,657 -7 -0.0%
Sema.IsSafeUseOfCxxDecl 0 0 0 0.0%
Sema.IsSetterMutatingRequest 389,280 389,280 0 0.0%
Sema.IsSingleValueStmtRequest 263,009 263,009 0 0.0%
Sema.IsStaticRequest 655,806 655,782 -24 -0.0%
Sema.LazyStoragePropertyRequest 562 562 0 0.0%
Sema.LocalDiscriminatorsRequest 313,472 313,472 0 0.0%
Sema.LookupAllConformancesInContextRequest 326,756 326,995 239 0.07%
Sema.LookupInModuleRequest 2,811,173 2,805,313 -5,860 -0.21%
Sema.LookupInfixOperatorRequest 55,529 55,529 0 0.0%
Sema.LookupPostfixOperatorRequest 37 37 0 0.0%
Sema.LookupPrecedenceGroupRequest 25,504 25,504 0 0.0%
Sema.LookupPrefixOperatorRequest 166 166 0 0.0%
Sema.MacroDefinitionRequest 0 0 0 0.0%
Sema.MangleLocalTypeDeclRequest 1,037 1,037 0 0.0%
Sema.ModuleImplicitImportsRequest 1,258 1,258 0 0.0%
Sema.ModuleLibraryLevelRequest 141 141 0 0.0%
Sema.ModuleQualifiedLookupRequest 638,382 632,612 -5,770 -0.9%
Sema.NamedLazyMemberLoadSuccessCount 12,027,442 11,997,216 -30,226 -0.25%
Sema.NamingPatternRequest 67,644 67,644 0 0.0%
Sema.NeedsNewVTableEntryRequest 616,359 616,359 0 0.0%
Sema.NumAccessorBodiesSynthesized 235,237 235,237 0 0.0%
Sema.NumAccessorsSynthesized 238,246 238,246 0 0.0%
Sema.NumConformancePathsRecorded 767,695 767,726 31 0.0%
Sema.NumCrossImportsChecked 0 0 0 0.0%
Sema.NumCrossImportsFound 0 0 0 0.0%
Sema.NumCyclicOneWayComponentsCollapsed 0 0 0 0.0%
Sema.NumDeclsDeserialized 15,570,273 15,571,671 1,398 0.01%
Sema.NumDeclsTypechecked 1,698,030 1,698,030 0 0.0%
Sema.NumLazyIterableDeclContexts 2,040,489 2,048,195 7,705 0.38%
Sema.NumLazyRequirementSignatures 147,720 147,848 127 0.09%
Sema.NumLazyRequirementSignaturesLoaded 108,093 109,070 977 0.9%
Sema.NumRequirementMachineUnifiedConcreteTerms 355,063 358,441 3,377 0.95%
Sema.NumTypesDeserialized 6,370,841 6,370,579 -262 -0.0%
Sema.NumUnloadedLazyIterableDeclContexts 1,381,709 1,388,809 7,100 0.51%
Sema.ObjCInterfaceAndImplementationRequest 445,998 446,146 148 0.03%
Sema.OpaqueReadOwnershipRequest 204,946 204,950 4 0.0%
Sema.OpaqueResultTypeRequest 366 366 0 0.0%
Sema.OperatorPrecedenceGroupRequest 445 445 0 0.0%
Sema.OverriddenDeclsRequest 1,601,349 1,601,797 448 0.03%
Sema.ParamSpecifierRequest 918,653 918,661 8 0.0%
Sema.PatternBindingEntryRequest 347,404 347,404 0 0.0%
Sema.PatternTypeRequest 449,383 449,383 0 0.0%
Sema.PolymorphicEffectKindRequest 543,531 543,807 276 0.05%
Sema.PolymorphicEffectRequirementsRequest 5 5 0 0.0%
Sema.PreCheckResultBuilderRequest 954 954 0 0.0%
Sema.PreCheckReturnStmtRequest 415,641 415,641 0 0.0%
Sema.PrimaryAssociatedTypesRequest 6,928 6,928 0 0.0%
Sema.PrimarySourceFilesRequest 1,258 1,258 0 0.0%
Sema.PropertyWrapperAuxiliaryVariablesRequest 1,425,390 1,425,390 0 0.0%
Sema.PropertyWrapperBackingPropertyTypeRequest 9,486 9,486 0 0.0%
Sema.PropertyWrapperInitializerInfoRequest 389,674 389,674 0 0.0%
Sema.PropertyWrapperLValuenessRequest 1,439 1,439 0 0.0%
Sema.PropertyWrapperMutabilityRequest 398,953 398,957 4 0.0%
Sema.PropertyWrapperTypeInfoRequest 137 137 0 0.0%
Sema.ProtocolRequirementsRequest 17,502 17,502 0 0.0%
Sema.ProtocolRequiresClassRequest 9,312 9,316 4 0.04%
Sema.ProvideDefaultImplForRequest 1,052,308 1,055,012 2,703 0.26%
Sema.RangeInfoRequest 0 0 0 0.0%
Sema.RenamedDeclRequest 1,013 1,013 0 0.0%
Sema.RequirementRequest 87,751 87,751 0 0.0%
Sema.RequirementSignatureRequest 119,241 120,220 979 0.82%
Sema.RequiresOpaqueAccessorsRequest 1,293,488 1,293,494 6 0.0%
Sema.RequiresOpaqueModifyCoroutineRequest 204,615 204,617 2 0.0%
Sema.ResolveEffectiveMemberwiseInitRequest 0 0 0 0.0%
Sema.ResolveMacroRequest 14,064 14,064 0 0.0%
Sema.ResolveProtocolNameRequest 0 0 0 0.0%
Sema.ResolveTypeEraserTypeRequest 0 0 0 0.0%
Sema.ResultBuilderTypeRequest 359,701 359,334 -367 -0.1%
Sema.ResultTypeRequest 475,364 475,364 0 0.0%
Sema.RootAndResultTypeOfKeypathDynamicMemberRequest 0 0 0 0.0%
Sema.RootTypeOfKeypathDynamicMemberRequest 0 0 0 0.0%
Sema.SPIGroupsRequest 2,290,927 2,288,954 -1,973 -0.09%
Sema.ScopedImportLookupRequest 311 311 0 0.0%
Sema.SelfAccessKindRequest 358,991 358,983 -8 -0.0%
Sema.SelfBoundsFromGenericSignatureRequest 22,747 22,747 0 0.0%
Sema.SelfBoundsFromWhereClauseRequest 525,778 525,146 -632 -0.12%
Sema.SemanticAvailableRangeAttrRequest 2,493 2,493 0 0.0%
Sema.SemanticUnavailableAttrRequest 97,693 97,693 0 0.0%
Sema.SetterAccessLevelRequest 175,351 175,348 -3 -0.0%
Sema.SimpleDidSetRequest 560,863 561,808 944 0.17%
Sema.SpecializeAttrTargetDeclRequest 1,604 1,604 0 0.0%
Sema.StorageImplInfoRequest 1,440,055 1,440,056 1 0.0%
Sema.StoredPropertiesAndMissingMembersRequest 43,609 43,609 0 0.0%
Sema.StoredPropertiesRequest 145,108 145,144 36 0.02%
Sema.StructuralRequirementsRequest 11,161 11,163 2 0.02%
Sema.StructuralTypeRequest 532 532 0 0.0%
Sema.SuperclassDeclRequest 110,901 110,752 -149 -0.13%
Sema.SuperclassTypeRequest 30,470 30,491 20 0.07%
Sema.SynthesizeAccessorRequest 238,246 238,246 0 0.0%
Sema.SynthesizeDefaultInitRequest 3,748 3,748 0 0.0%
Sema.SynthesizeMainFunctionRequest 111,222 111,222 0 0.0%
Sema.SynthesizeMemberwiseInitRequest 3,295 3,295 0 0.0%
Sema.SynthesizeRuntimeMetadataAttrGenerator 0 0 0 0.0%
Sema.SynthesizeRuntimeMetadataAttrGeneratorBody 0 0 0 0.0%
Sema.TangentStoredPropertyRequest 0 0 0 0.0%
Sema.TypeAliasRequirementsRequest 11,161 11,163 2 0.02%
Sema.TypeCheckASTNodeAtLocRequest 0 0 0 0.0%
Sema.TypeCheckFunctionBodyRequest 603,032 603,036 4 0.0%
Sema.TypeCheckSourceFileRequest 31,075 31,075 0 0.0%
Sema.TypeDeclsFromWhereClauseRequest 28,965 28,965 0 0.0%
Sema.TypeEraserHasViableInitRequest 0 0 0 0.0%
Sema.TypeRelationCheckRequest 0 0 0 0.0%
Sema.TypeWitnessRequest 4,644 4,645 1 0.02%
Sema.USRGenerationRequest 1,547,574 1,550,872 3,297 0.21%
Sema.UnderlyingTypeRequest 26,349 26,349 0 0.0%
Sema.UnqualifiedLookupRequest 2,705,206 2,705,116 -90 -0.0%
Sema.ValidatePrecedenceGroupRequest 195,536 195,536 0 0.0%
Sema.ValueWitnessRequest 33,441 33,502 61 0.18%
TBDGen.APIGenRequest 0 0 0 0.0%
TBDGen.GenerateTBDRequest 0 0 0 0.0%
TBDGen.PublicSymbolsRequest 1,198 1,198 0 0.0%
TBDGen.SymbolSourceMapRequest 0 0 0 0.0%

@xedin
Copy link
Member Author

xedin commented Feb 18, 2023

Slightly better - 60% reduction in NumLeafScopes and there are only two diagnostic regressions now related to old favoring been more aggressive than necessary.

@xedin
Copy link
Member Author

xedin commented Feb 21, 2023

@swift-ci please test source compatibility

1 similar comment
@xedin
Copy link
Member Author

xedin commented Feb 21, 2023

@swift-ci please test source compatibility

@xedin
Copy link
Member Author

xedin commented Feb 23, 2023

@swift-ci please test compiler performance

@xedin
Copy link
Member Author

xedin commented Feb 23, 2023

@swift-ci please test source compatibility release

@xedin
Copy link
Member Author

xedin commented Feb 24, 2023

Summary for main full

Regressions found (see below)

Debug-batch

debug-batch brief

Regressed (0)
name old new delta delta_pct
Improved (1)
name old new delta delta_pct
Frontend.NumInstructionsExecuted 91,322,049,186,043 87,616,546,563,888 -3,705,502,622,155 -4.06% ✅
Unchanged (delta < 1.0% or delta < 100.0ms) (1)
name old new delta delta_pct
LLVM.NumLLVMBytesOutput 2,105,453,848 2,107,148,960 1,695,112 0.08%

debug-batch detailed

Regressed (13)
name old new delta delta_pct
AST.NumSourceLinesPerSecond 4,650,048 4,702,138 52,089 1.12% ⛔
Sema.CollectOverriddenDeclsRequest 11,527,983 11,648,868 120,885 1.05% ⛔
Sema.InheritedDeclsReferencedRequest 6,288,051 6,379,038 90,987 1.45% ⛔
Sema.InheritedProtocolsRequest 766,190 776,549 10,359 1.35% ⛔
Sema.NumConformancesDeserialized 5,100,601 5,187,330 86,728 1.7% ⛔
Sema.NumLazyRequirementSignaturesLoaded 694,714 702,348 7,634 1.1% ⛔
Sema.NumRequirementMachineCompletionSteps 23,808,060 25,954,503 2,146,443 9.02% ⛔
Sema.NumRequirementMachineUnifiedConcreteTerms 1,036,415 1,069,472 33,057 3.19% ⛔
Sema.NumRequirementMachines 1,987,121 2,074,871 87,750 4.42% ⛔
Sema.ProtocolDependenciesRequest 593,254 640,037 46,782 7.89% ⛔
Sema.ProvideDefaultImplForRequest 11,527,983 11,648,868 120,885 1.05% ⛔
Sema.RequirementSignatureRequest 749,585 757,377 7,792 1.04% ⛔
Sema.UnderlyingTypeDeclsReferencedRequest 306,591 312,119 5,527 1.8% ⛔
Improved (19)
name old new delta delta_pct
Frontend.NumInstructionsExecuted 91,322,049,186,043 87,616,546,563,888 -3,705,502,622,155 -4.06% ✅
Sema.ActorIsolationRequest 6,019,669 5,926,207 -93,462 -1.55% ✅
Sema.CompareDeclSpecializationRequest 681,854 632,634 -49,220 -7.22% ✅
Sema.ConditionalRequirementsRequest 742,764 728,727 -14,036 -1.89% ✅
Sema.DefaultArgumentTypeRequest 20,107 19,808 -299 -1.49% ✅
Sema.DefaultTypeRequest 413,101 307,893 -105,208 -25.47% ✅
Sema.DirectLookupRequest 60,814,226 59,441,502 -1,372,724 -2.26% ✅
Sema.DynamicallyReplacedDeclRequest 6,417,645 6,325,196 -92,449 -1.44% ✅
Sema.ExistentialConformsToSelfRequest 26,620 25,447 -1,173 -4.41% ✅
Sema.GenericParamListRequest 6,100,002 5,963,209 -136,793 -2.24% ✅
Sema.GlobalActorAttributeRequest 7,670,292 7,573,431 -96,861 -1.26% ✅
Sema.HasDynamicCallableAttributeRequest 27,581 27,272 -309 -1.12% ✅
Sema.IsDeclRefinementOfRequest 54,982 3,763 -51,219 -93.16% ✅
Sema.LookupConformanceInModuleRequest 76,509,282 49,575,547 -26,933,735 -35.2% ✅
Sema.NumConstraintScopes 52,791,011 24,255,828 -28,535,183 -54.05% ✅
Sema.NumConstraintsConsideredForEdgeContraction 1,860,809 1,177,940 -682,869 -36.7% ✅
Sema.NumLeafScopes 39,749,822 15,271,224 -24,478,598 -61.58% ✅
Sema.QualifiedLookupRequest 8,375,896 8,247,317 -128,579 -1.54% ✅
Sema.ResolveImplicitMemberRequest 790,445 759,543 -30,902 -3.91% ✅
Unchanged (delta < 1.0% or delta < 100.0ms) (278)
name old new delta delta_pct
AST.ImportSetCacheHit 3,195,806 3,195,993 187 0.01%
AST.ImportSetCacheMiss 703,807 703,873 66 0.01%
AST.ImportSetFoldHit 353,813 353,853 40 0.01%
AST.ImportSetFoldMiss 349,993 350,020 26 0.01%
AST.ModuleShadowCacheHit 8,451 8,441 -10 -0.12%
AST.ModuleShadowCacheMiss 2,515 2,515 0 0.0%
AST.ModuleVisibilityCacheHit 18,011,634 18,011,368 -266 -0.0%
AST.ModuleVisibilityCacheMiss 150,306 150,307 1 0.0%
AST.NumASTBytesAllocated 51,259,915,228 51,400,663,454 140,748,226 0.27%
AST.NumASTScopeExpansions 7,233,165 7,233,903 737 0.01%
AST.NumASTScopeLookups 8,044,030 8,044,604 574 0.01%
AST.NumDecls 303,831 303,831 0 0.0%
AST.NumDependencies 408,350 408,350 0 0.0%
AST.NumIncrementalDependencies 21,346 21,346 0 0.0%
AST.NumLinkLibraries 0 0 0 0.0%
AST.NumLoadedModules 293,404 293,404 0 0.0%
AST.NumLocalTypeDecls 2,438 2,438 0 0.0%
AST.NumModuleLookupClassMember 6,820 6,820 0 0.0%
AST.NumModuleLookupValue 88,708,100 88,692,641 -15,459 -0.02%
AST.NumObjCMethods 73,374 73,374 0 0.0%
AST.NumOperators 1,022 1,022 0 0.0%
AST.NumPrecedenceGroups 172 172 0 0.0%
AST.NumReferencedDynamicNames 159 159 0 0.0%
AST.NumReferencedMemberNames 12,039,891 12,015,563 -24,328 -0.2%
AST.NumReferencedTopLevelNames 1,158,599 1,158,017 -582 -0.05%
AST.NumSourceBuffers 337,466 337,466 0 0.0%
AST.NumSourceLines 10,454,980 10,454,980 0 0.0%
AST.NumTotalClangImportedEntities 1,688,763 1,689,187 424 0.03%
Frontend.MaxMallocUsage 845,486,257,848 851,471,456,920 5,985,199,072 0.71%
Frontend.NumProcessFailures 31 31 0 0.0%
IRGen.IRGenRequest 26,420 26,420 0 0.0%
IRGen.OptimizedIRRequest 0 0 0 0.0%
IRGen.SymbolObjectCodeRequest 0 0 0 0.0%
IRModule.NumGOTEntries 258,051 258,166 115 0.04%
IRModule.NumIRAliases 208,756 208,756 0 0.0%
IRModule.NumIRBasicBlocks 7,345,710 7,365,599 19,889 0.27%
IRModule.NumIRComdatSymbols 0 0 0 0.0%
IRModule.NumIRFunctions 3,883,677 3,888,552 4,875 0.13%
IRModule.NumIRGlobals 3,778,783 3,780,503 1,720 0.05%
IRModule.NumIRIFuncs 0 0 0 0.0%
IRModule.NumIRInsts 89,939,968 90,011,821 71,853 0.08%
IRModule.NumIRNamedMetaData 131,016 131,016 0 0.0%
IRModule.NumIRValueSymbols 7,719,129 7,725,720 6,591 0.09%
LLVM.NumLLVMBytesOutput 2,105,453,848 2,107,148,960 1,695,112 0.08%
Parse.IDEInspectionSecondPassRequest 0 0 0 0.0%
Parse.NumFunctionsParsed 336,168 336,168 0 0.0%
Parse.NumIterableDeclContextParsed 681,612 681,549 -63 -0.01%
Parse.ParseAbstractFunctionBodyRequest 573,787 573,795 8 0.0%
Parse.ParseMembersRequest 524,837 524,774 -63 -0.01%
Parse.ParseSourceFileRequest 330,254 330,254 0 0.0%
Parse.ParseTopLevelDeclsRequest 330,254 330,254 0 0.0%
SILGen.ASTLoweringRequest 27,685 27,685 0 0.0%
SILGen.ParseSILModuleRequest 0 0 0 0.0%
SILModule.NumSILGenDefaultWitnessTables 0 0 0 0.0%
SILModule.NumSILGenFunctions 2,921,099 2,921,614 515 0.02%
SILModule.NumSILGenGlobalVariables 120,991 120,991 0 0.0%
SILModule.NumSILGenVtables 36,437 36,437 0 0.0%
SILModule.NumSILGenWitnessTables 156,320 156,364 44 0.03%
SILModule.NumSILOptDefaultWitnessTables 0 0 0 0.0%
SILModule.NumSILOptFunctions 3,437,816 3,440,021 2,205 0.06%
SILModule.NumSILOptGlobalVariables 122,803 122,801 -2 -0.0%
SILModule.NumSILOptVtables 36,738 36,734 -4 -0.01%
SILModule.NumSILOptWitnessTables 191,707 191,914 207 0.11%
SILOptimizer.ExecuteSILPipelineRequest 108,238 108,238 0 0.0%
SILOptimizer.LoweredSILRequest 0 0 0 0.0%
Sema.ABIMembersRequest 266,787 266,898 111 0.04%
Sema.AbstractGenericSignatureRequest 129,501 129,835 334 0.26%
Sema.AccessLevelRequest 15,468,448 15,604,935 136,487 0.88%
Sema.AllMembersRequest 99,990 99,990 0 0.0%
Sema.AnyObjectLookupRequest 234 234 0 0.0%
Sema.ApplyAccessNoteRequest 3,765,711 3,766,775 1,064 0.03%
Sema.AreAllStoredPropertiesDefaultInitableRequest 41,424 41,424 0 0.0%
Sema.AttachedPropertyWrapperTypeRequest 24,829 24,829 0 0.0%
Sema.AttachedPropertyWrappersRequest 19,129,383 19,211,963 82,579 0.43%
Sema.AttachedResultBuilderRequest 1,642,349 1,641,866 -483 -0.03%
Sema.BodyInitKindRequest 75,303 75,307 4 0.01%
Sema.BreakTargetRequest 5,633 5,633 0 0.0%
Sema.CXXNamespaceMemberLookup 0 0 0 0.0%
Sema.CallerSideDefaultArgExprRequest 325,726 325,726 0 0.0%
Sema.CheckDistributedFunctionRequest 80 80 0 0.0%
Sema.CheckInconsistentImplementationOnlyImportsRequest 10,066 10,066 0 0.0%
Sema.CheckInconsistentSPIOnlyImportsRequest 53,356 53,356 0 0.0%
Sema.CheckInconsistentWeakLinkedImportsRequest 10,066 10,066 0 0.0%
Sema.CheckRedeclarationRequest 1,993,667 1,993,667 0 0.0%
Sema.ClangCategoryLookupRequest 0 0 0 0.0%
Sema.ClangDirectLookupRequest 13,483 13,399 -84 -0.62%
Sema.ClangRecordMemberLookup 13,483 13,399 -84 -0.62%
Sema.ClassAncestryFlagsRequest 136,630 136,420 -210 -0.15%
Sema.ClosureEffectsRequest 121,343 121,343 0 0.0%
Sema.ClosureHasExplicitResultRequest 43,880 43,880 0 0.0%
Sema.CompilerPluginLoadRequest 0 0 0 0.0%
Sema.ConformanceHasEffectRequest 51 51 0 0.0%
Sema.ConstantValueInfoRequest 0 0 0 0.0%
Sema.ContinueTargetRequest 1,975 1,975 0 0.0%
Sema.CursorInfoRequest 0 0 0 0.0%
Sema.CustomAttrNominalRequest 22,529 22,529 0 0.0%
Sema.CustomAttrTypeRequest 3,396 3,396 0 0.0%
Sema.CustomRefCountingOperation 0 0 0 0.0%
Sema.CxxRecordSemantics 0 0 0 0.0%
Sema.DefaultAndMaxAccessLevelRequest 105,770 105,769 -1 -0.0%
Sema.DefaultArgumentExprRequest 91,786 91,786 0 0.0%
Sema.DefaultArgumentInitContextRequest 844 844 0 0.0%
Sema.DefaultDefinitionTypeRequest 7,637 7,626 -11 -0.14%
Sema.DerivativeAttrOriginalDeclRequest 0 0 0 0.0%
Sema.DifferentiableAttributeTypeCheckRequest 0 0 0 0.0%
Sema.DirectOperatorLookupRequest 1,972,108 1,971,654 -454 -0.02%
Sema.DirectPrecedenceGroupLookupRequest 763,517 763,517 0 0.0%
Sema.DistributedModuleIsAvailableRequest 67 67 0 0.0%
Sema.EnumRawTypeRequest 35,771 35,788 17 0.05%
Sema.EnumRawValuesRequest 20,360 20,360 0 0.0%
Sema.ExistentialRequiresAnyRequest 15,370 15,370 0 0.0%
Sema.ExpandAccessorMacros 1,123,911 1,123,936 25 0.0%
Sema.ExpandMacroExpansionDeclRequest 0 0 0 0.0%
Sema.ExpandMemberAttributeMacros 35,347,671 35,489,764 142,093 0.4%
Sema.ExpandPeerMacroRequest 3,600,457 3,600,603 146 0.0%
Sema.ExpandSynthesizedMemberMacroRequest 908,330 906,392 -1,938 -0.21%
Sema.ExtendedNominalRequest 605,379 605,379 0 0.0%
Sema.ExtendedTypeRequest 185,823 185,815 -8 -0.0%
Sema.ExternalMacroDefinitionRequest 0 0 0 0.0%
Sema.FragileFunctionKindRequest 2,354,698 2,355,285 587 0.02%
Sema.FunctionOperatorRequest 17,583 17,583 0 0.0%
Sema.GenericSignatureRequest 3,160,022 3,160,315 293 0.01%
Sema.GetDestructorRequest 42,987 42,986 -1 -0.0%
Sema.GetDistributedActorArgumentDecodingMethodRequest 19 19 0 0.0%
Sema.GetDistributedActorIDPropertyRequest 72 72 0 0.0%
Sema.GetDistributedActorImplicitCodableRequest 117 117 0 0.0%
Sema.GetDistributedActorInvocationDecoderRequest 19 19 0 0.0%
Sema.GetDistributedActorSystemPropertyRequest 56 56 0 0.0%
Sema.GetDistributedActorSystemRemoteCallFunctionRequest 46 46 0 0.0%
Sema.GetDistributedRemoteCallArgumentInitFunctionRequest 19 19 0 0.0%
Sema.GetDistributedRemoteCallTargetInitFunctionRequest 19 19 0 0.0%
Sema.GetDistributedTargetInvocationDecoderDecodeNextArgumentFunctionRequest 22 22 0 0.0%
Sema.GetDistributedTargetInvocationEncoderRecordArgumentFunctionRequest 20 20 0 0.0%
Sema.GetDistributedTargetInvocationEncoderRecordErrorTypeFunctionRequest 11 11 0 0.0%
Sema.GetDistributedTargetInvocationEncoderRecordReturnTypeFunctionRequest 16 16 0 0.0%
Sema.GetDistributedTargetInvocationResultHandlerOnReturnFunctionRequest 2 2 0 0.0%
Sema.GetDistributedThunkRequest 80 80 0 0.0%
Sema.GetImplicitSendableRequest 307,202 308,734 1,532 0.5%
Sema.GetRuntimeDiscoverableAttributes 2,098,768 2,098,768 0 0.0%
Sema.GetSourceFileAsyncNode 142 142 0 0.0%
Sema.GlobalActorInstanceRequest 1,116 1,116 0 0.0%
Sema.HasCircularInheritedProtocolsRequest 17,042 17,042 0 0.0%
Sema.HasCircularRawValueRequest 20,716 20,716 0 0.0%
Sema.HasDefaultInitRequest 91,112 91,112 0 0.0%
Sema.HasDynamicMemberLookupAttributeRequest 521,552 521,020 -532 -0.1%
Sema.HasImportsMatchingFlagRequest 655,187 655,187 0 0.0%
Sema.HasIsolatedSelfRequest 13,297,860 13,244,328 -53,532 -0.4%
Sema.HasMemberwiseInitRequest 41,072 41,072 0 0.0%
Sema.HasMissingDesignatedInitializersRequest 30,652 30,652 0 0.0%
Sema.HasUserDefinedDesignatedInitRequest 91,122 91,122 0 0.0%
Sema.IDEInspectionFileRequest 0 0 0 0.0%
Sema.InferredGenericSignatureRequest 219,347 219,358 11 0.01%
Sema.InheritedTypeRequest 427,066 427,342 275 0.06%
Sema.InheritsSuperclassInitializersRequest 39,252 39,253 1 0.0%
Sema.InitKindRequest 166,303 166,306 3 0.0%
Sema.InterfaceTypeRequest 19,932,057 20,017,446 85,388 0.43%
Sema.IsABICompatibleOverrideRequest 280,611 280,611 0 0.0%
Sema.IsAccessorTransparentRequest 511,389 511,389 0 0.0%
Sema.IsActorRequest 2,043,846 2,047,758 3,911 0.19%
Sema.IsCallAsFunctionNominalRequest 6,205 6,168 -37 -0.6%
Sema.IsDeclApplicableRequest 0 0 0 0.0%
Sema.IsDefaultActorRequest 58,198 58,207 9 0.02%
Sema.IsDistributedActorRequest 2,285,876 2,291,168 5,292 0.23%
Sema.IsDynamicRequest 2,825,752 2,826,350 598 0.02%
Sema.IsFinalRequest 4,232,858 4,249,381 16,523 0.39%
Sema.IsGetterMutatingRequest 700,416 700,409 -7 -0.0%
Sema.IsImplicitlyUnwrappedOptionalRequest 3,493,470 3,490,418 -3,051 -0.09%
Sema.IsMoveOnlyRequest 649,395 650,903 1,508 0.23%
Sema.IsObjCRequest 2,620,411 2,621,475 1,064 0.04%
Sema.IsSafeUseOfCxxDecl 0 0 0 0.0%
Sema.IsSetterMutatingRequest 621,156 621,156 0 0.0%
Sema.IsSingleValueStmtRequest 323,924 323,924 0 0.0%
Sema.IsStaticRequest 1,459,534 1,459,832 297 0.02%
Sema.LazyStoragePropertyRequest 2,423 2,423 0 0.0%
Sema.LocalDiscriminatorsRequest 463,787 463,787 0 0.0%
Sema.LookupAllConformancesInContextRequest 2,437,290 2,459,305 22,014 0.9%
Sema.LookupInModuleRequest 8,275,858 8,264,873 -10,985 -0.13%
Sema.LookupInfixOperatorRequest 69,637 69,637 0 0.0%
Sema.LookupPostfixOperatorRequest 74 74 0 0.0%
Sema.LookupPrecedenceGroupRequest 29,583 29,583 0 0.0%
Sema.LookupPrefixOperatorRequest 352 352 0 0.0%
Sema.MacroDefinitionRequest 0 0 0 0.0%
Sema.MangleLocalTypeDeclRequest 1,108 1,108 0 0.0%
Sema.ModuleImplicitImportsRequest 10,066 10,066 0 0.0%
Sema.ModuleLibraryLevelRequest 351 351 0 0.0%
Sema.ModuleQualifiedLookupRequest 3,204,906 3,193,313 -11,592 -0.36%
Sema.NamedLazyMemberLoadSuccessCount 33,826,104 33,740,180 -85,924 -0.25%
Sema.NamingPatternRequest 241,065 241,064 -1 -0.0%
Sema.NeedsNewVTableEntryRequest 948,694 948,694 0 0.0%
Sema.NumAccessorBodiesSynthesized 417,421 417,421 0 0.0%
Sema.NumAccessorsSynthesized 512,119 512,119 0 0.0%
Sema.NumConformancePathsRecorded 845,658 845,694 36 0.0%
Sema.NumCrossImportsChecked 0 0 0 0.0%
Sema.NumCrossImportsFound 0 0 0 0.0%
Sema.NumCyclicOneWayComponentsCollapsed 0 0 0 0.0%
Sema.NumDeclsDeserialized 84,491,714 84,925,280 433,565 0.51%
Sema.NumDeclsTypechecked 2,826,208 2,826,208 0 0.0%
Sema.NumLazyIterableDeclContexts 12,085,729 12,151,976 66,247 0.55%
Sema.NumLazyRequirementSignatures 1,018,830 1,019,917 1,087 0.11%
Sema.NumTypesDeserialized 24,080,139 24,160,906 80,766 0.34%
Sema.NumUnloadedLazyIterableDeclContexts 8,582,575 8,621,899 39,324 0.46%
Sema.ObjCInterfaceAndImplementationRequest 752,203 752,877 674 0.09%
Sema.OpaqueReadOwnershipRequest 447,818 447,822 4 0.0%
Sema.OpaqueResultTypeRequest 862 862 0 0.0%
Sema.OperatorPrecedenceGroupRequest 1,021 1,021 0 0.0%
Sema.OverriddenDeclsRequest 5,341,632 5,353,691 12,059 0.23%
Sema.ParamSpecifierRequest 1,954,880 1,954,875 -5 -0.0%
Sema.PatternBindingEntryRequest 692,778 692,777 -1 -0.0%
Sema.PatternTypeRequest 812,269 812,268 -1 -0.0%
Sema.PolymorphicEffectKindRequest 977,009 977,511 502 0.05%
Sema.PolymorphicEffectRequirementsRequest 60 60 0 0.0%
Sema.PreCheckResultBuilderRequest 1,041 1,041 0 0.0%
Sema.PreCheckReturnStmtRequest 505,807 505,807 0 0.0%
Sema.PrimaryAssociatedTypesRequest 7,231 7,231 0 0.0%
Sema.PrimarySourceFilesRequest 10,066 10,066 0 0.0%
Sema.PropertyWrapperAuxiliaryVariablesRequest 2,050,284 2,050,284 0 0.0%
Sema.PropertyWrapperBackingPropertyTypeRequest 24,829 24,829 0 0.0%
Sema.PropertyWrapperInitializerInfoRequest 596,686 596,686 0 0.0%
Sema.PropertyWrapperLValuenessRequest 2,912 2,912 0 0.0%
Sema.PropertyWrapperMutabilityRequest 696,097 696,095 -2 -0.0%
Sema.PropertyWrapperTypeInfoRequest 626 626 0 0.0%
Sema.ProtocolRequirementsRequest 73,379 73,490 111 0.15%
Sema.ProtocolRequiresClassRequest 44,037 44,094 57 0.13%
Sema.RangeInfoRequest 0 0 0 0.0%
Sema.RenamedDeclRequest 4,225 4,226 1 0.02%
Sema.RequirementRequest 175,260 175,263 3 0.0%
Sema.RequiresOpaqueAccessorsRequest 1,789,897 1,789,907 10 0.0%
Sema.RequiresOpaqueModifyCoroutineRequest 449,554 449,564 10 0.0%
Sema.ResolveEffectiveMemberwiseInitRequest 0 0 0 0.0%
Sema.ResolveMacroRequest 29,891 29,891 0 0.0%
Sema.ResolveProtocolNameRequest 0 0 0 0.0%
Sema.ResolveTypeEraserTypeRequest 0 0 0 0.0%
Sema.ResolveTypeRequest 5,026,472 4,983,075 -43,397 -0.86%
Sema.ResultBuilderTypeRequest 466,129 465,469 -660 -0.14%
Sema.ResultTypeRequest 1,103,607 1,103,604 -3 -0.0%
Sema.RootAndResultTypeOfKeypathDynamicMemberRequest 0 0 0 0.0%
Sema.RootTypeOfKeypathDynamicMemberRequest 0 0 0 0.0%
Sema.SPIGroupsRequest 7,330,656 7,333,567 2,911 0.04%
Sema.ScopedImportLookupRequest 810 810 0 0.0%
Sema.SelfAccessKindRequest 910,673 910,806 132 0.01%
Sema.SelfBoundsFromGenericSignatureRequest 67,205 66,908 -297 -0.44%
Sema.SelfBoundsFromWhereClauseRequest 1,757,256 1,755,735 -1,521 -0.09%
Sema.SemanticAvailableRangeAttrRequest 5,391 5,391 0 0.0%
Sema.SemanticUnavailableAttrRequest 148,904 148,904 0 0.0%
Sema.SetterAccessLevelRequest 245,443 245,440 -3 -0.0%
Sema.SimpleDidSetRequest 2,861,302 2,885,336 24,033 0.84%
Sema.SpecializeAttrTargetDeclRequest 3,084 3,084 0 0.0%
Sema.StorageImplInfoRequest 2,049,712 2,049,741 29 0.0%
Sema.StoredPropertiesAndMissingMembersRequest 62,670 62,679 9 0.01%
Sema.StoredPropertiesRequest 381,608 382,942 1,334 0.35%
Sema.StructuralRequirementsRequest 55,030 55,188 158 0.29%
Sema.StructuralTypeRequest 1,934 1,934 0 0.0%
Sema.SuperclassDeclRequest 515,945 514,725 -1,220 -0.24%
Sema.SuperclassTypeRequest 67,115 66,797 -317 -0.47%
Sema.SynthesizeAccessorRequest 512,119 512,119 0 0.0%
Sema.SynthesizeDefaultInitRequest 10,545 10,545 0 0.0%
Sema.SynthesizeMainFunctionRequest 230,065 230,176 111 0.05%
Sema.SynthesizeMemberwiseInitRequest 8,291 8,291 0 0.0%
Sema.SynthesizeRuntimeMetadataAttrGenerator 0 0 0 0.0%
Sema.SynthesizeRuntimeMetadataAttrGeneratorBody 0 0 0 0.0%
Sema.TangentStoredPropertyRequest 0 0 0 0.0%
Sema.TypeAliasRequirementsRequest 55,030 55,188 158 0.29%
Sema.TypeCheckASTNodeAtLocRequest 0 0 0 0.0%
Sema.TypeCheckFunctionBodyRequest 876,188 876,192 4 0.0%
Sema.TypeCheckSourceFileRequest 53,356 53,356 0 0.0%
Sema.TypeDeclsFromWhereClauseRequest 52,723 52,723 0 0.0%
Sema.TypeEraserHasViableInitRequest 0 0 0 0.0%
Sema.TypeRelationCheckRequest 0 0 0 0.0%
Sema.TypeWitnessRequest 14,544 14,503 -41 -0.28%
Sema.USRGenerationRequest 13,001,820 13,125,063 123,242 0.95%
Sema.UnderlyingTypeRequest 54,232 54,222 -10 -0.02%
Sema.UnqualifiedLookupRequest 6,220,559 6,221,166 607 0.01%
Sema.ValidatePrecedenceGroupRequest 232,656 232,656 0 0.0%
Sema.ValueWitnessRequest 72,893 72,954 61 0.08%
TBDGen.APIGenRequest 0 0 0 0.0%
TBDGen.GenerateTBDRequest 0 0 0 0.0%
TBDGen.PublicSymbolsRequest 26,434 26,434 0 0.0%
TBDGen.SymbolSourceMapRequest 0 0 0 0.0%

Release

release brief

Regressed (1)
name old new delta delta_pct
Frontend.NumInstructionsExecuted 112,336,194,110,931 205,258,061,071,979 92,921,866,961,048 82.72% ⛔
Improved (0)
name old new delta delta_pct
Unchanged (delta < 1.0% or delta < 100.0ms) (1)
name old new delta delta_pct
LLVM.NumLLVMBytesOutput 2,174,412,612 2,194,459,940 20,047,328 0.92%

release detailed

Regressed (25)
name old new delta delta_pct
AST.NumLocalTypeDecls 1,133 1,330 197 17.39% ⛔
AST.NumModuleLookupValue 44,072,335 44,763,791 691,456 1.57% ⛔
AST.NumObjCMethods 35,968 36,707 739 2.05% ⛔
Frontend.NumInstructionsExecuted 112,336,194,110,931 205,258,061,071,979 92,921,866,961,048 82.72% ⛔
IRModule.NumIRFunctions 3,247,426 3,280,745 33,318 1.03% ⛔
SILModule.NumSILGenFunctions 1,513,068 1,528,674 15,606 1.03% ⛔
SILModule.NumSILOptFunctions 1,336,038 1,350,988 14,950 1.12% ⛔
Sema.CallerSideDefaultArgExprRequest 270,536 281,968 11,432 4.23% ⛔
Sema.ClosureEffectsRequest 108,890 110,194 1,304 1.2% ⛔
Sema.ClosureHasExplicitResultRequest 38,347 38,896 549 1.43% ⛔
Sema.CollectOverriddenDeclsRequest 1,075,825 1,092,193 16,368 1.52% ⛔
Sema.HasMissingDesignatedInitializersRequest 21,802 22,035 233 1.07% ⛔
Sema.InheritedDeclsReferencedRequest 1,306,997 1,354,617 47,620 3.64% ⛔
Sema.MangleLocalTypeDeclRequest 1,113 1,310 197 17.7% ⛔
Sema.NumConformancesDeserialized 987,950 1,028,914 40,964 4.15% ⛔
Sema.NumLazyRequirementSignaturesLoaded 114,382 115,738 1,356 1.19% ⛔
Sema.NumRequirementMachineCompletionSteps 4,905,335 5,190,791 285,456 5.82% ⛔
Sema.NumRequirementMachineUnifiedConcreteTerms 375,009 379,084 4,075 1.09% ⛔
Sema.NumRequirementMachines 431,664 444,796 13,132 3.04% ⛔
Sema.ProtocolDependenciesRequest 106,820 112,846 6,026 5.64% ⛔
Sema.ProvideDefaultImplForRequest 1,075,825 1,092,193 16,368 1.52% ⛔
Sema.RequirementSignatureRequest 125,814 127,189 1,375 1.09% ⛔
Sema.SynthesizeDefaultInitRequest 4,035 4,187 152 3.77% ⛔
Sema.USRGenerationRequest 1,606,458 1,627,773 21,315 1.33% ⛔
Sema.UnderlyingTypeDeclsReferencedRequest 65,652 69,185 3,533 5.38% ⛔
Improved (14)
name old new delta delta_pct
Sema.CompareDeclSpecializationRequest 456,398 415,248 -41,150 -9.02% ✅
Sema.ConditionalRequirementsRequest 240,180 236,579 -3,601 -1.5% ✅
Sema.DefaultArgumentTypeRequest 9,659 9,397 -262 -2.71% ✅
Sema.DefaultTypeRequest 332,255 232,445 -99,810 -30.04% ✅
Sema.ExistentialConformsToSelfRequest 6,374 5,950 -424 -6.65% ✅
Sema.GenericParamListRequest 1,786,439 1,717,162 -69,277 -3.88% ✅
Sema.IsDeclRefinementOfRequest 30,237 2,303 -27,934 -92.38% ✅
Sema.LookupConformanceInModuleRequest 57,528,470 36,687,439 -20,841,031 -36.23% ✅
Sema.NumConstraintScopes 41,241,689 19,917,676 -21,324,013 -51.7% ✅
Sema.NumConstraintsConsideredForEdgeContraction 1,807,899 1,226,419 -581,480 -32.16% ✅
Sema.NumLeafScopes 30,789,023 12,264,329 -18,524,694 -60.17% ✅
Sema.QualifiedLookupRequest 4,866,135 4,797,390 -68,745 -1.41% ✅
Sema.ResolveImplicitMemberRequest 492,083 466,817 -25,266 -5.13% ✅
Sema.ResolveTypeRequest 2,410,428 2,380,419 -30,009 -1.24% ✅
Unchanged (delta < 1.0% or delta < 100.0ms) (271)
name old new delta delta_pct
AST.ImportSetCacheHit 1,670,534 1,683,493 12,959 0.78%
AST.ImportSetCacheMiss 86,581 86,720 139 0.16%
AST.ImportSetFoldHit 43,082 43,138 56 0.13%
AST.ImportSetFoldMiss 43,499 43,582 83 0.19%
AST.ModuleShadowCacheHit 5,882 5,914 32 0.54%
AST.ModuleShadowCacheMiss 1,411 1,415 4 0.28%
AST.ModuleVisibilityCacheHit 8,708,527 8,708,487 -40 -0.0%
AST.ModuleVisibilityCacheMiss 31,564 31,584 20 0.06%
AST.NumASTBytesAllocated 12,649,135,280 12,721,136,611 72,001,331 0.57%
AST.NumASTScopeExpansions 3,480,535 3,497,927 17,392 0.5%
AST.NumASTScopeLookups 4,986,206 5,020,340 34,134 0.68%
AST.NumDecls 172,934 173,287 353 0.2%
AST.NumDependencies 60,241 60,314 73 0.12%
AST.NumIncrementalDependencies 58 58 0 0.0%
AST.NumLinkLibraries 0 0 0 0.0%
AST.NumLoadedModules 34,765 34,817 52 0.15%
AST.NumModuleLookupClassMember 6,694 6,694 0 0.0%
AST.NumOperators 512 512 0 0.0%
AST.NumPrecedenceGroups 88 88 0 0.0%
AST.NumReferencedDynamicNames 0 0 0 0.0%
AST.NumReferencedMemberNames 4,002 3,990 -12 -0.3%
AST.NumReferencedTopLevelNames 352 352 0 0.0%
AST.NumSourceBuffers 34,315 34,399 84 0.24%
AST.NumSourceLines 5,859,735 5,884,772 25,037 0.43%
AST.NumSourceLinesPerSecond 340,870 339,972 -898 -0.26%
AST.NumTotalClangImportedEntities 509,651 510,623 972 0.19%
Frontend.MaxMallocUsage 297,934,667,160 299,975,922,176 2,041,255,016 0.69%
Frontend.NumProcessFailures 7 7 0 0.0%
IRGen.IRGenRequest 12 12 0 0.0%
IRGen.OptimizedIRRequest 0 0 0 0.0%
IRGen.SymbolObjectCodeRequest 0 0 0 0.0%
IRModule.NumGOTEntries 247,278 248,342 1,064 0.43%
IRModule.NumIRAliases 174,362 175,172 810 0.46%
IRModule.NumIRBasicBlocks 5,700,026 5,741,004 40,978 0.72%
IRModule.NumIRComdatSymbols 0 0 0 0.0%
IRModule.NumIRGlobals 3,487,786 3,511,917 24,131 0.69%
IRModule.NumIRIFuncs 0 0 0 0.0%
IRModule.NumIRInsts 55,039,329 55,505,092 465,763 0.85%
IRModule.NumIRNamedMetaData 133,846 134,181 335 0.25%
IRModule.NumIRValueSymbols 6,766,544 6,824,301 57,756 0.85%
LLVM.NumLLVMBytesOutput 2,174,412,612 2,194,459,940 20,047,328 0.92%
Parse.IDEInspectionSecondPassRequest 0 0 0 0.0%
Parse.NumFunctionsParsed 312,688 314,058 1,370 0.44%
Parse.NumIterableDeclContextParsed 119,217 119,598 381 0.32%
Parse.ParseAbstractFunctionBodyRequest 324,907 326,246 1,339 0.41%
Parse.ParseMembersRequest 14,649 14,649 0 0.0%
Parse.ParseSourceFileRequest 32,143 32,210 67 0.21%
Parse.ParseTopLevelDeclsRequest 32,143 32,210 67 0.21%
SILGen.ASTLoweringRequest 1,322 1,323 1 0.08%
SILGen.ParseSILModuleRequest 0 0 0 0.0%
SILModule.NumSILGenDefaultWitnessTables 830 830 0 0.0%
SILModule.NumSILGenGlobalVariables 62,889 62,929 40 0.06%
SILModule.NumSILGenVtables 24,903 25,131 228 0.92%
SILModule.NumSILGenWitnessTables 85,376 86,140 764 0.89%
SILModule.NumSILOptDefaultWitnessTables 830 830 0 0.0%
SILModule.NumSILOptGlobalVariables 58,745 59,073 328 0.56%
SILModule.NumSILOptVtables 29,653 29,925 272 0.92%
SILModule.NumSILOptWitnessTables 85,891 86,655 764 0.89%
SILOptimizer.ExecuteSILPipelineRequest 5,184 5,188 4 0.08%
SILOptimizer.LoweredSILRequest 0 0 0 0.0%
Sema.ABIMembersRequest 127,864 128,279 415 0.32%
Sema.AbstractGenericSignatureRequest 73,360 73,616 256 0.35%
Sema.AccessLevelRequest 3,046,940 3,068,801 21,861 0.72%
Sema.ActorIsolationRequest 2,212,694 2,200,397 -12,297 -0.56%
Sema.AllMembersRequest 102,229 102,608 379 0.37%
Sema.AnyObjectLookupRequest 236 236 0 0.0%
Sema.ApplyAccessNoteRequest 2,075,173 2,084,609 9,436 0.45%
Sema.AreAllStoredPropertiesDefaultInitableRequest 22,704 22,907 203 0.89%
Sema.AttachedPropertyWrapperTypeRequest 9,853 9,864 11 0.11%
Sema.AttachedPropertyWrappersRequest 4,634,856 4,653,319 18,463 0.4%
Sema.AttachedResultBuilderRequest 962,737 966,145 3,408 0.35%
Sema.BodyInitKindRequest 56,485 56,854 369 0.65%
Sema.BreakTargetRequest 4,743 4,751 8 0.17%
Sema.CXXNamespaceMemberLookup 0 0 0 0.0%
Sema.CheckDistributedFunctionRequest 42 42 0 0.0%
Sema.CheckInconsistentImplementationOnlyImportsRequest 1,329 1,330 1 0.08%
Sema.CheckInconsistentSPIOnlyImportsRequest 32,119 32,186 67 0.21%
Sema.CheckInconsistentWeakLinkedImportsRequest 1,329 1,330 1 0.08%
Sema.CheckRedeclarationRequest 1,241,009 1,247,842 6,833 0.55%
Sema.ClangCategoryLookupRequest 0 0 0 0.0%
Sema.ClangDirectLookupRequest 7,014 7,035 21 0.3%
Sema.ClangRecordMemberLookup 7,014 7,035 21 0.3%
Sema.ClassAncestryFlagsRequest 59,001 59,279 278 0.47%
Sema.CompilerPluginLoadRequest 0 0 0 0.0%
Sema.ConformanceHasEffectRequest 41 41 0 0.0%
Sema.ConstantValueInfoRequest 0 0 0 0.0%
Sema.ContinueTargetRequest 1,760 1,764 4 0.23%
Sema.CursorInfoRequest 0 0 0 0.0%
Sema.CustomAttrNominalRequest 9,148 9,148 0 0.0%
Sema.CustomAttrTypeRequest 1,338 1,338 0 0.0%
Sema.CustomRefCountingOperation 0 0 0 0.0%
Sema.CxxRecordSemantics 0 0 0 0.0%
Sema.DefaultAndMaxAccessLevelRequest 51,693 51,746 53 0.1%
Sema.DefaultArgumentExprRequest 47,861 48,039 178 0.37%
Sema.DefaultArgumentInitContextRequest 326 326 0 0.0%
Sema.DefaultDefinitionTypeRequest 3,377 3,379 2 0.06%
Sema.DerivativeAttrOriginalDeclRequest 0 0 0 0.0%
Sema.DifferentiableAttributeTypeCheckRequest 0 0 0 0.0%
Sema.DirectLookupRequest 48,241,384 47,757,431 -483,952 -1.0%
Sema.DirectOperatorLookupRequest 1,485,340 1,496,071 10,731 0.72%
Sema.DirectPrecedenceGroupLookupRequest 644,109 647,319 3,210 0.5%
Sema.DistributedModuleIsAvailableRequest 33 33 0 0.0%
Sema.DynamicallyReplacedDeclRequest 2,390,418 2,378,867 -11,551 -0.48%
Sema.EnumRawTypeRequest 10,960 11,001 41 0.37%
Sema.EnumRawValuesRequest 11,130 11,171 41 0.37%
Sema.ExistentialRequiresAnyRequest 7,761 7,763 2 0.03%
Sema.ExpandAccessorMacros 706,074 710,042 3,968 0.56%
Sema.ExpandMacroExpansionDeclRequest 0 0 0 0.0%
Sema.ExpandMemberAttributeMacros 8,378,641 8,411,214 32,573 0.39%
Sema.ExpandPeerMacroRequest 1,817,241 1,827,703 10,462 0.58%
Sema.ExpandSynthesizedMemberMacroRequest 250,310 250,687 377 0.15%
Sema.ExtendedNominalRequest 56,550 56,604 54 0.1%
Sema.ExtendedTypeRequest 56,448 56,502 54 0.1%
Sema.ExternalMacroDefinitionRequest 0 0 0 0.0%
Sema.FragileFunctionKindRequest 1,266,628 1,278,184 11,556 0.91%
Sema.FunctionOperatorRequest 8,640 8,642 2 0.02%
Sema.GenericSignatureRequest 1,207,939 1,212,340 4,401 0.36%
Sema.GetDestructorRequest 26,017 26,240 223 0.86%
Sema.GetDistributedActorArgumentDecodingMethodRequest 19 19 0 0.0%
Sema.GetDistributedActorIDPropertyRequest 32 32 0 0.0%
Sema.GetDistributedActorImplicitCodableRequest 56 56 0 0.0%
Sema.GetDistributedActorInvocationDecoderRequest 19 19 0 0.0%
Sema.GetDistributedActorSystemPropertyRequest 28 28 0 0.0%
Sema.GetDistributedActorSystemRemoteCallFunctionRequest 8 8 0 0.0%
Sema.GetDistributedRemoteCallArgumentInitFunctionRequest 5 5 0 0.0%
Sema.GetDistributedRemoteCallTargetInitFunctionRequest 5 5 0 0.0%
Sema.GetDistributedTargetInvocationDecoderDecodeNextArgumentFunctionRequest 5 5 0 0.0%
Sema.GetDistributedTargetInvocationEncoderRecordArgumentFunctionRequest 5 5 0 0.0%
Sema.GetDistributedTargetInvocationEncoderRecordErrorTypeFunctionRequest 3 3 0 0.0%
Sema.GetDistributedTargetInvocationEncoderRecordReturnTypeFunctionRequest 4 4 0 0.0%
Sema.GetDistributedTargetInvocationResultHandlerOnReturnFunctionRequest 1 1 0 0.0%
Sema.GetDistributedThunkRequest 42 42 0 0.0%
Sema.GetImplicitSendableRequest 70,710 71,287 577 0.82%
Sema.GetRuntimeDiscoverableAttributes 1,299,053 1,305,947 6,894 0.53%
Sema.GetSourceFileAsyncNode 69 69 0 0.0%
Sema.GlobalActorAttributeRequest 2,978,370 2,969,497 -8,873 -0.3%
Sema.GlobalActorInstanceRequest 243 243 0 0.0%
Sema.HasCircularInheritedProtocolsRequest 8,493 8,495 2 0.02%
Sema.HasCircularRawValueRequest 10,951 10,992 41 0.37%
Sema.HasDefaultInitRequest 41,662 41,944 282 0.68%
Sema.HasDynamicCallableAttributeRequest 11,572 11,488 -84 -0.73%
Sema.HasDynamicMemberLookupAttributeRequest 145,361 145,590 229 0.16%
Sema.HasImportsMatchingFlagRequest 63,872 64,006 134 0.21%
Sema.HasIsolatedSelfRequest 4,433,541 4,433,782 241 0.01%
Sema.HasMemberwiseInitRequest 16,347 16,401 54 0.33%
Sema.HasUserDefinedDesignatedInitRequest 41,662 41,944 282 0.68%
Sema.IDEInspectionFileRequest 0 0 0 0.0%
Sema.InferredGenericSignatureRequest 88,661 88,698 37 0.04%
Sema.InheritedProtocolsRequest 129,757 130,848 1,091 0.84%
Sema.InheritedTypeRequest 211,842 212,176 334 0.16%
Sema.InheritsSuperclassInitializersRequest 21,223 21,282 59 0.28%
Sema.InitKindRequest 80,937 81,353 416 0.51%
Sema.InterfaceTypeRequest 5,442,138 5,465,340 23,202 0.43%
Sema.IsABICompatibleOverrideRequest 163,956 164,341 385 0.23%
Sema.IsAccessorTransparentRequest 286,317 287,054 737 0.26%
Sema.IsActorRequest 404,957 406,328 1,371 0.34%
Sema.IsCallAsFunctionNominalRequest 5,994 5,971 -23 -0.38%
Sema.IsDeclApplicableRequest 0 0 0 0.0%
Sema.IsDefaultActorRequest 34,409 34,691 282 0.82%
Sema.IsDistributedActorRequest 471,935 473,480 1,545 0.33%
Sema.IsDynamicRequest 1,554,317 1,563,043 8,726 0.56%
Sema.IsFinalRequest 1,529,025 1,539,297 10,272 0.67%
Sema.IsGetterMutatingRequest 422,061 425,133 3,072 0.73%
Sema.IsImplicitlyUnwrappedOptionalRequest 2,250,697 2,260,033 9,336 0.41%
Sema.IsMoveOnlyRequest 202,323 203,139 816 0.4%
Sema.IsObjCRequest 1,402,230 1,409,598 7,368 0.53%
Sema.IsSafeUseOfCxxDecl 0 0 0 0.0%
Sema.IsSetterMutatingRequest 410,662 413,722 3,060 0.75%
Sema.IsSingleValueStmtRequest 274,979 275,968 989 0.36%
Sema.IsStaticRequest 686,044 688,691 2,647 0.39%
Sema.LazyStoragePropertyRequest 593 593 0 0.0%
Sema.LocalDiscriminatorsRequest 331,865 333,803 1,938 0.58%
Sema.LookupAllConformancesInContextRequest 335,883 338,640 2,757 0.82%
Sema.LookupInModuleRequest 2,981,585 2,991,281 9,696 0.33%
Sema.LookupInfixOperatorRequest 58,279 58,478 199 0.34%
Sema.LookupPostfixOperatorRequest 37 37 0 0.0%
Sema.LookupPrecedenceGroupRequest 26,476 26,535 59 0.22%
Sema.LookupPrefixOperatorRequest 167 167 0 0.0%
Sema.MacroDefinitionRequest 0 0 0 0.0%
Sema.ModuleImplicitImportsRequest 1,329 1,330 1 0.08%
Sema.ModuleLibraryLevelRequest 141 141 0 0.0%
Sema.ModuleQualifiedLookupRequest 693,274 689,933 -3,341 -0.48%
Sema.NamedLazyMemberLoadSuccessCount 12,643,029 12,705,356 62,327 0.49%
Sema.NamingPatternRequest 71,221 71,280 59 0.08%
Sema.NeedsNewVTableEntryRequest 647,180 649,592 2,412 0.37%
Sema.NumAccessorBodiesSynthesized 245,104 245,773 669 0.27%
Sema.NumAccessorsSynthesized 248,131 248,804 673 0.27%
Sema.NumConformancePathsRecorded 835,519 837,706 2,187 0.26%
Sema.NumCrossImportsChecked 0 0 0 0.0%
Sema.NumCrossImportsFound 0 0 0 0.0%
Sema.NumCyclicOneWayComponentsCollapsed 0 0 0 0.0%
Sema.NumDeclsDeserialized 16,533,655 16,592,985 59,330 0.36%
Sema.NumDeclsTypechecked 1,783,713 1,793,861 10,148 0.57%
Sema.NumLazyIterableDeclContexts 2,156,757 2,170,226 13,469 0.62%
Sema.NumLazyRequirementSignatures 156,379 156,778 399 0.26%
Sema.NumTypesDeserialized 6,829,638 6,851,209 21,571 0.32%
Sema.NumUnloadedLazyIterableDeclContexts 1,453,919 1,463,695 9,776 0.67%
Sema.ObjCInterfaceAndImplementationRequest 463,960 465,170 1,210 0.26%
Sema.OpaqueReadOwnershipRequest 213,611 214,042 431 0.2%
Sema.OpaqueResultTypeRequest 367 367 0 0.0%
Sema.OperatorPrecedenceGroupRequest 445 445 0 0.0%
Sema.OverriddenDeclsRequest 1,678,585 1,688,791 10,206 0.61%
Sema.ParamSpecifierRequest 964,810 968,460 3,650 0.38%
Sema.PatternBindingEntryRequest 366,262 368,794 2,532 0.69%
Sema.PatternTypeRequest 473,365 476,622 3,257 0.69%
Sema.PolymorphicEffectKindRequest 580,502 585,284 4,782 0.82%
Sema.PolymorphicEffectRequirementsRequest 28 28 0 0.0%
Sema.PreCheckResultBuilderRequest 957 957 0 0.0%
Sema.PreCheckReturnStmtRequest 435,899 437,376 1,477 0.34%
Sema.PrimaryAssociatedTypesRequest 7,163 7,165 2 0.03%
Sema.PrimarySourceFilesRequest 1,329 1,330 1 0.08%
Sema.PropertyWrapperAuxiliaryVariablesRequest 1,506,837 1,514,877 8,040 0.53%
Sema.PropertyWrapperBackingPropertyTypeRequest 9,853 9,864 11 0.11%
Sema.PropertyWrapperInitializerInfoRequest 410,755 413,791 3,036 0.74%
Sema.PropertyWrapperLValuenessRequest 1,456 1,456 0 0.0%
Sema.PropertyWrapperMutabilityRequest 420,280 423,352 3,072 0.73%
Sema.PropertyWrapperTypeInfoRequest 146 146 0 0.0%
Sema.ProtocolRequirementsRequest 18,458 18,487 29 0.16%
Sema.ProtocolRequiresClassRequest 9,543 9,562 19 0.2%
Sema.RangeInfoRequest 0 0 0 0.0%
Sema.RenamedDeclRequest 2,805 2,806 1 0.04%
Sema.RequirementRequest 89,593 89,607 14 0.02%
Sema.RequiresOpaqueAccessorsRequest 1,365,180 1,372,343 7,163 0.52%
Sema.RequiresOpaqueModifyCoroutineRequest 214,287 214,773 486 0.23%
Sema.ResolveEffectiveMemberwiseInitRequest 0 0 0 0.0%
Sema.ResolveMacroRequest 14,082 14,082 0 0.0%
Sema.ResolveProtocolNameRequest 0 0 0 0.0%
Sema.ResolveTypeEraserTypeRequest 0 0 0 0.0%
Sema.ResultBuilderTypeRequest 379,129 380,694 1,565 0.41%
Sema.ResultTypeRequest 496,570 498,337 1,767 0.36%
Sema.RootAndResultTypeOfKeypathDynamicMemberRequest 0 0 0 0.0%
Sema.RootTypeOfKeypathDynamicMemberRequest 0 0 0 0.0%
Sema.SPIGroupsRequest 2,422,011 2,430,270 8,259 0.34%
Sema.ScopedImportLookupRequest 403 403 0 0.0%
Sema.SelfAccessKindRequest 375,035 376,416 1,381 0.37%
Sema.SelfBoundsFromGenericSignatureRequest 23,669 23,849 180 0.76%
Sema.SelfBoundsFromWhereClauseRequest 537,389 537,379 -10 -0.0%
Sema.SemanticAvailableRangeAttrRequest 2,583 2,583 0 0.0%
Sema.SemanticUnavailableAttrRequest 97,745 97,745 0 0.0%
Sema.SetterAccessLevelRequest 185,344 186,357 1,013 0.55%
Sema.SimpleDidSetRequest 582,130 585,966 3,836 0.66%
Sema.SpecializeAttrTargetDeclRequest 1,658 1,658 0 0.0%
Sema.StorageImplInfoRequest 1,518,915 1,526,598 7,683 0.51%
Sema.StoredPropertiesAndMissingMembersRequest 46,542 46,900 358 0.77%
Sema.StoredPropertiesRequest 154,831 155,444 613 0.4%
Sema.StructuralRequirementsRequest 11,447 11,466 19 0.17%
Sema.StructuralTypeRequest 550 550 0 0.0%
Sema.SuperclassDeclRequest 116,304 116,517 213 0.18%
Sema.SuperclassTypeRequest 31,504 31,769 265 0.84%
Sema.SynthesizeAccessorRequest 248,131 248,804 673 0.27%
Sema.SynthesizeMainFunctionRequest 116,891 117,270 379 0.32%
Sema.SynthesizeMemberwiseInitRequest 3,478 3,484 6 0.17%
Sema.SynthesizeRuntimeMetadataAttrGenerator 0 0 0 0.0%
Sema.SynthesizeRuntimeMetadataAttrGeneratorBody 0 0 0 0.0%
Sema.TangentStoredPropertyRequest 0 0 0 0.0%
Sema.TypeAliasRequirementsRequest 11,447 11,466 19 0.17%
Sema.TypeCheckASTNodeAtLocRequest 0 0 0 0.0%
Sema.TypeCheckFunctionBodyRequest 632,358 635,412 3,054 0.48%
Sema.TypeCheckSourceFileRequest 32,119 32,186 67 0.21%
Sema.TypeDeclsFromWhereClauseRequest 29,788 29,800 12 0.04%
Sema.TypeEraserHasViableInitRequest 0 0 0 0.0%
Sema.TypeRelationCheckRequest 0 0 0 0.0%
Sema.TypeWitnessRequest 4,880 4,883 3 0.06%
Sema.UnderlyingTypeRequest 27,442 27,674 232 0.85%
Sema.UnqualifiedLookupRequest 2,834,483 2,847,743 13,260 0.47%
Sema.ValidatePrecedenceGroupRequest 206,653 207,578 925 0.45%
Sema.ValueWitnessRequest 34,078 34,142 64 0.19%
TBDGen.APIGenRequest 0 0 0 0.0%
TBDGen.GenerateTBDRequest 0 0 0 0.0%
TBDGen.PublicSymbolsRequest 1,270 1,271 1 0.08%
TBDGen.SymbolSourceMapRequest 0 0 0 0.0%

@xedin
Copy link
Member Author

xedin commented Mar 30, 2023

@swift-ci please test source compatibility

1 similar comment
@xedin
Copy link
Member Author

xedin commented Mar 30, 2023

@swift-ci please test source compatibility

@xedin
Copy link
Member Author

xedin commented Mar 31, 2023

@swift-ci please build toolchain macOS

1 similar comment
@xedin
Copy link
Member Author

xedin commented May 26, 2023

@swift-ci please build toolchain macOS

@xedin
Copy link
Member Author

xedin commented Oct 10, 2023

@swift-ci please test source compatibility

@xedin
Copy link
Member Author

xedin commented Oct 11, 2023

@swift-ci please test source compatibility

@xedin
Copy link
Member Author

xedin commented Oct 11, 2023

@swift-ci please test source compatibility

xedin and others added 17 commits January 16, 2024 17:07
…lgorithm

This algorithm attempts to ensure that the solver always picks a disjunction
it knows the most about given the previously deduced type information.

For example in chains of operators like: `let _: (Double) -> Void = { 1 * 2 + $0 - 5 }`

The solver is going to start from `2 + $0` because `$0` is known to be `Double` and
then proceed to `1 * ...` and only after that to `... - 5`.

The algorithm is pretty simple:

- Collect "candidate" types for each argument
  - If argument is bound then the set going to be represented by just one type
  - Otherwise:
    - Collect all the possible bindings
    - Add default literal type (if any)

- Collect "candidate" types for result

- For each disjunction in the current scope:
  - Compute a favoring score for each viable* overload choice:
    - Compute score for each parameter:
      - Match parameter flags to argument flags
      - Match parameter types to a set of candidate argument types
        - If it's an exact match
          - Concrete type: score = 1.0
          - Literal default: score = 0.3
        - Highest scored candidate type wins.
      - If none of the candidates match and they are all non-literal
        remove overload choice from consideration.

    - Average the score by dividing it by the number of parameters
      to avoid disfavoring disjunctions with fewer arguments.

    - Match result type to a set of candidates; add 1 to the score
      if one of the candidate types matches exactly.

  - The best choice score becomes a disjunction score

- Compute disjunction scores for all of the disjunctions in scope.

- Pick disjunction with the best overall score and favor choices with
  the best local candidate scores (if some candidates have equal scores).

- Viable overloads include:
  - non-disfavored
  - non-disabled
  - available
  - non-generic (with current exception to SIMD)
…eter relationships

This helps to find defaulted parameter positions as well.
…of no-impact conversions

Candidate is viable (with some score) if:

- Candidate is exactly equal to a parameter type
- Candidate type differs from a parameter type only in optionality
- Parameter is a generic parameter type and all conformances are matched by a candidate type
- Candidate tuples matches a parameter tuple on arity
- Candidate is an `Array<T>` and parameter is an `Unsafe*Pointer`
- Candidate is a subclass of a parameter class type
- Candidate is a concrete type and parameter is its existential value (except Any)
Since old favoring mechanism has been removed this is dead code
now because nothing is going to equate disjunction constraints.
Dependent members just like generic parameter types could
have associated protocol conformances which give us a glimpse
into whether arguments could possibly match.
Since erasure of a concrete type into an existential value yields
score of 1, we need to bump the score in cases where a type
passed to a generic parameter satisfies all of its protocol
conformance requirements and that parameter represents an
opaque type.
@xedin
Copy link
Member Author

xedin commented Jan 17, 2024

@swift-ci please build toolchain macOS

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.

None yet

2 participants