Skip to content

Conversation

@hvitved
Copy link
Contributor

@hvitved hvitved commented Jan 10, 2022

Evaluation of FromImportOfMutableAttribute.ql on https://github.com/FiacreT/M-moire:

Before

Stopped during this pipeline:

[2022-01-11 20:06:33] (91497s) Tuple counts for MRO::reverse_step#fff#reorder_1_2_0/3@i132#49c0994w after 55m58s:
                      20646       ~0%     {3} r1 = JOIN MRO::needs_reversing#f#prev_delta WITH MRO::Empty#f CARTESIAN PRODUCT OUTPUT Rhs.0, Lhs.0 'remainder', Lhs.0 'remainder'
                      
                      40425683500 ~2%     {4} r2 = JOIN MRO::Cons#fff#prev_delta WITH MRO::Cons#fff#prev ON FIRST 1 OUTPUT Lhs.2, Rhs.1, Lhs.1 'remainder', Rhs.2 'reversed'
                      0           ~0%     {3} r3 = JOIN r2 WITH MRO::reverse_step#fff#reorder_1_2_0#prev ON FIRST 2 OUTPUT Lhs.3 'reversed', Rhs.2 'lst', Lhs.2 'remainder'
                      
                      20646       ~0%     {3} r4 = r1 UNION r3
                      
                      40333997500 ~1%     {4} r5 = JOIN MRO::Cons#fff#prev_delta WITH MRO::Cons#fff#prev ON FIRST 1 OUTPUT Rhs.2 'reversed', Lhs.1 'remainder', Lhs.2, Rhs.1
                      21978       ~4%     {3} r6 = JOIN r5 WITH MRO::reverse_step#fff#reorder_1_2_0#prev ON FIRST 2 OUTPUT Lhs.2 'reversed', Rhs.2 'lst', Lhs.3 'remainder'
                      
                      0           ~0%     {3} r7 = SCAN MRO::reverse_step#fff#reorder_1_2_0#prev_delta OUTPUT In.0, In.2 'lst', In.1
                      0           ~0%     {4} r8 = JOIN r7 WITH MRO::Cons#fff#reorder_2_0_1#prev ON FIRST 1 OUTPUT Rhs.1, Lhs.2, Lhs.1 'lst', Rhs.2 'remainder'
                      0           ~0%     {3} r9 = JOIN r8 WITH MRO::Cons#fff#prev ON FIRST 2 OUTPUT Rhs.2 'reversed', Lhs.2 'lst', Lhs.3 'remainder'
                      
                      21978       ~4%     {3} r10 = r6 UNION r9
                      42624       ~6%     {3} r11 = r4 UNION r10
                      41958       ~6%     {3} r12 = r11 AND NOT MRO::reverse_step#fff#reorder_1_2_0#prev(Lhs.2 'remainder', Lhs.0 'reversed', Lhs.1 'lst')
                      41958       ~0%     {3} r13 = SCAN r12 OUTPUT In.2 'remainder', In.0 'reversed', In.1 'lst'
                                          return r13

After

[2022-02-02 17:11:20] (564s) Query done
[2022-02-02 17:11:20] (564s) Total timings for execution:
[2022-02-02 17:11:20] (564s) 	- Extensionals: 0ms
[2022-02-02 17:11:20] (564s) 	- Intensionals: 9min1.304s ... of which ...
[2022-02-02 17:11:20] (564s) 		- Nonrecursive intensionals: 8.492s
[2022-02-02 17:11:20] (564s) 		- Recursive intensionals: 8min52.811s
[2022-02-02 17:11:20] (564s) 	- Building results: 0ms
[2022-02-02 17:11:20] (564s) Clause timing report:
[2022-02-02 17:11:20] (564s) 
[2022-02-02 17:11:20] 
	FromImportOfMutableAttribute.ql-9:MRO::ClassList::containsSpecial#fb .............................................. 35s (942 evaluations with max 104ms in MRO::ClassList::containsSpecial#fb/2@i841#c7b656w1)
	FromImportOfMutableAttribute.ql-9:MRO::ClassList::lookup_dispred#ffff ............................................. 33.3s (943 evaluations with max 1.7s in MRO::ClassList::lookup_dispred#ffff/4@i848#c7b65d6w)
	FromImportOfMutableAttribute.ql-9:MRO::ClassListList::removedClassParts#fffff#reorder_2_3_4_0_1 ................... 28.3s (975 evaluations with max 66ms in MRO::ClassListList::removedClassParts#fffff#reorder_2_3_4_0_1/5@i716#c7b65xy1)
	FromImportOfMutableAttribute.ql-9:MRO::ClassList::findDeclaringClassAttribute#fff#reorder_1_2_0 ................... 27s (804 evaluations with max 1.6s in MRO::ClassList::findDeclaringClassAttribute#fff#reorder_1_2_0/3@i847#c7b65lw1)
	FromImportOfMutableAttribute.ql-9:MRO::ClassList::findDeclaringClass#fff .......................................... 23.9s (996 evaluations with max 1.4s in MRO::ClassList::findDeclaringClass#fff/3@i845#c7b65j3w)
	FromImportOfMutableAttribute.ql-9:MRO::ClassList::firstIndex#2#ffff#reorder_2_1_0_3 ............................... 22.5s (1091 evaluations with max 791ms in MRO::ClassList::firstIndex#2#ffff#reorder_2_1_0_3/4@i806#c7b6515w)
	FromImportOfMutableAttribute.ql-9:MRO::ClassListList::bestMergeCandidate#2#fff .................................... 17.4s (954 evaluations with max 43ms in MRO::ClassListList::bestMergeCandidate#2#fff/3@i548#c7b6583w)
	FromImportOfMutableAttribute.ql-9:PointsTo::InterProceduralPointsTo::scope_entry_value_transfer_from_earlier#ffff . 17.3s (531 evaluations with max 138ms in PointsTo::InterProceduralPointsTo::scope_entry_value_transfer_from_earlier#ffff/4@i2#c7b65a5w)
	FromImportOfMutableAttribute.ql-9:PointsTo::Expressions::equalityEvaluatesTo#fffff ................................ 14.8s (639 evaluations with max 40ms in PointsTo::Expressions::equalityEvaluatesTo#fffff/5@i355#c7b65t7w)
	FromImportOfMutableAttribute.ql-9:MRO::ClassList::findDeclaringClass_dispred#fff .................................. 9.4s (804 evaluations with max 1.1s in MRO::ClassList::findDeclaringClass_dispred#fff/3@i810#c7b65h3w)
	FromImportOfMutableAttribute.ql-9:PointsTo::Expressions::inequalityEvaluatesTo#fffff .............................. 9.1s (532 evaluations with max 33ms in PointsTo::Expressions::inequalityEvaluatesTo#fffff/5@i355#c7b65u7w)
	FromImportOfMutableAttribute.ql-9:MRO::list_of_linearization_of_bases_plus_bases#2#fbf#reorder_1_2_0 .............. 8.1s (762 evaluations with max 173ms in MRO::list_of_linearization_of_bases_plus_bases#2#fbf#reorder_1_2_0/3@i357#c7b65m2w)
	FromImportOfMutableAttribute.ql-9:MRO::flatten_list#fff ........................................................... 8.1s (963 evaluations with max 29ms in MRO::flatten_list#fff/3@i706#c7b65a3w)
	FromImportOfMutableAttribute.ql-9:MRO::ClassList::firstIndex#2#ffff#reorder_0_2_3_1 ............................... 7.7s (1083 evaluations with max 640ms in MRO::ClassList::firstIndex#2#ffff#reorder_0_2_3_1/4@i806#c7b655y1)
	FromImportOfMutableAttribute.ql-9:MRO::bases#2#bff ................................................................ 7s (817 evaluations with max 1.1s in MRO::bases#2#bff/3@i650#c7b6553w)
	FromImportOfMutableAttribute.ql-9:Instances::InstanceObject::initializer_dispred#fbf .............................. 6.1s (730 evaluations with max 20ms in Instances::InstanceObject::initializer_dispred#fbf/3@i128#c7b65f4w)
	FromImportOfMutableAttribute.ql-9:dom#MRO::Cons#ff ................................................................ 5.7s (1170 evaluations with max 45ms in dom#MRO::Cons#ff/2@i56#c7b65v1w)
	FromImportOfMutableAttribute.ql-9:PointsTo::Types::getBase#fff .................................................... 5.4s (904 evaluations with max 15ms in PointsTo::Types::getBase#fff/3@i36#c7b65yw1)
	FromImportOfMutableAttribute.ql-9:MRO::ClassListList::legalMergeCandidateNonEmpty#ffff ............................ 5.3s (1026 evaluations with max 225ms in MRO::ClassListList::legalMergeCandidateNonEmpty#ffff/4@i584#c7b65l7w)
	FromImportOfMutableAttribute.ql-9:PointsTo::AttributePointsTo::variableAttributePointsTo#fffff .................... 5.3s (902 evaluations with max 1.3s in PointsTo::AttributePointsTo::variableAttributePointsTo#fffff/5@i128#c7b6558w)
	FromImportOfMutableAttribute.ql-9:PointsTo::PointsToInternal::points_to_candidate#ffff ............................ 4.9s (952 evaluations with max 183ms in PointsTo::PointsToInternal::points_to_candidate#ffff/4@i3#c7b65v4w)
	FromImportOfMutableAttribute.ql-9:MRO::bases#2#fbf ................................................................ 4.6s (817 evaluations with max 728ms in MRO::bases#2#fbf/3@i650#c7b6563w)
	FromImportOfMutableAttribute.ql-9:PointsTo::PointsToInternal::pointsTo#ffff ....................................... 4.5s (925 evaluations with max 234ms in PointsTo::PointsToInternal::pointsTo#ffff/4@i4#c7b65ix1)
	FromImportOfMutableAttribute.ql-10:Flow::ControlFlowNode::toString_dispred#ff ..................................... 4.2s
	FromImportOfMutableAttribute.ql-9:MRO::ClassList::deduplicateCons#ffff ............................................ 4.2s (1170 evaluations with max 127ms in MRO::ClassList::deduplicateCons#ffff/4@i833#c7b6586w)
	FromImportOfMutableAttribute.ql-9:PointsTo::PointsToInternal::multi_assignment_points_to#ffff ..................... 4s (906 evaluations with max 26ms in PointsTo::PointsToInternal::multi_assignment_points_to#ffff/4@i43#c7b65e5w)
	FromImportOfMutableAttribute.ql-9:MRO::ClassList::deduplicate#2#fff ............................................... 3.6s (1175 evaluations with max 114ms in MRO::ClassList::deduplicate#2#fff/3@i825#c7b6543w)
	FromImportOfMutableAttribute.ql-9:PointsTo::PointsToInternal::iteration_points_to#ffff ............................ 3.6s (906 evaluations with max 19ms in PointsTo::PointsToInternal::iteration_points_to#ffff/4@i117#c7b65n4w)
	FromImportOfMutableAttribute.ql-9:MRO::ClassList::startingAt#fff .................................................. 3.5s (941 evaluations with max 143ms in MRO::ClassList::startingAt#fff/3@i825#c7b65e4w)
	FromImportOfMutableAttribute.ql-9:Instances::SuperInstance::lookup_dispred#ffff ................................... 3.3s (985 evaluations with max 61ms in Instances::SuperInstance::lookup_dispred#ffff/4@i357#c7b65g6w)
	FromImportOfMutableAttribute.ql-9:PointsTo::InterModulePointsTo::import_points_to#ffff ............................ 3.3s (444 evaluations with max 257ms in PointsTo::InterModulePointsTo::import_points_to#ffff/4@i2#c7b65r4w)
	FromImportOfMutableAttribute.ql-9:TObject::self_parameter#fff ..................................................... 3.3s (446 evaluations with max 76ms in TObject::self_parameter#fff/3@i2#c7b65p2w)
	FromImportOfMutableAttribute.ql-10:ObjectInternal::ObjectInternal::toString_dispred#ff ............................ 2.8s (12 evaluations with max 1.6s in ObjectInternal::ObjectInternal::toString_dispred#ff/2@i1#92bf9yrd)
	FromImportOfMutableAttribute.ql-9:Instances::SpecificInstanceInternal::binds#ffff ................................. 2.7s (792 evaluations with max 20ms in Instances::SpecificInstanceInternal::binds#ffff/4@i61#c7b65y6w)
	FromImportOfMutableAttribute.ql-9:PointsTo::Types::getInheritedMetaclass#2#bff#reorder_1_0_2 ...................... 2.7s (632 evaluations with max 44ms in PointsTo::Types::getInheritedMetaclass#2#bff#reorder_1_0_2/3@i2#c7b65n2w)
	FromImportOfMutableAttribute.ql-9:PointsTo::Expressions::builtinCallPointsTo#fffff ................................ 2.7s (902 evaluations with max 44ms in PointsTo::Expressions::builtinCallPointsTo#fffff/5@i39#c7b65y7w)
	FromImportOfMutableAttribute.ql-9:PointsTo::InterProceduralPointsTo::callsite_points_to#ffff ...................... 2.5s (914 evaluations with max 19ms in PointsTo::InterProceduralPointsTo::callsite_points_to#ffff/4@i9#c7b65u5w)
	FromImportOfMutableAttribute.ql-9:PointsTo::PointsToInternal::reachableEdge#fff ................................... 2.5s (914 evaluations with max 28ms in PointsTo::PointsToInternal::reachableEdge#fff/3@i113#c7b65bw1)
	FromImportOfMutableAttribute.ql-9:PointsTo::InterProceduralPointsTo::call_points_to_from_callee#ffff .............. 2.4s (868 evaluations with max 30ms in PointsTo::InterProceduralPointsTo::call_points_to_from_callee#ffff/4@i8#c7b65u4w)
	FromImportOfMutableAttribute.ql-9:Instances::SelfInstanceInternal::binds#ffff ..................................... 2.3s (701 evaluations with max 20ms in Instances::SelfInstanceInternal::binds#ffff/4@i62#c7b65v6w)
	FromImportOfMutableAttribute.ql-9:Callables::PythonFunctionObjectInternal::descriptorGetClass#ffff ................ 2.3s (583 evaluations with max 10ms in Callables::PythonFunctionObjectInternal::descriptorGetClass#ffff/4@i450#c7b6547w)
	FromImportOfMutableAttribute.ql-9:MRO::ClassList::getItem#fff ..................................................... 2.3s (941 evaluations with max 122ms in MRO::ClassList::getItem#fff/3@i825#c7b6513w)
	FromImportOfMutableAttribute.ql-9:Classes::PythonClassObjectInternal::lookup_dispred#ffff ......................... 2.3s (860 evaluations with max 311ms in Classes::PythonClassObjectInternal::lookup_dispred#ffff/4@i59#c7b65e6w)
	FromImportOfMutableAttribute.ql-9:dom#TObject::TProperty#fff ...................................................... 2.2s (902 evaluations with max 9ms in dom#TObject::TProperty#fff/3@i7#c7b65g2w)
	FromImportOfMutableAttribute.ql-9:Modules::PackageObjectInternal::attribute#ffff .................................. 2.2s (540 evaluations with max 18ms in Modules::PackageObjectInternal::attribute#ffff/4@i4#c7b65o6w)
	FromImportOfMutableAttribute.ql-9:MRO::list_of_linearization_of_bases_plus_bases#2#bff#reorder_1_0_2 .............. 2.2s (762 evaluations with max 280ms in MRO::list_of_linearization_of_bases_plus_bases#2#bff#reorder_1_0_2/3@i301#c7b65l2w)
	FromImportOfMutableAttribute.ql-9:TObject::super_noargs#ffff ...................................................... 2.1s (903 evaluations with max 4ms in TObject::super_noargs#ffff/4@i535#c7b6505w)
	FromImportOfMutableAttribute.ql-9:MRO::ClassListList::legalMergeCandidateNonEmpty_dispred#ffff#reorder_3_1_0_2 .... 2.1s (927 evaluations with max 231ms in MRO::ClassListList::legalMergeCandidateNonEmpty_dispred#ffff#reorder_3_1_0_2/4@i585#c7b65i7w)
	FromImportOfMutableAttribute.ql-9:PointsTo::Types::getInheritedMetaclass#ff ....................................... 2.1s (632 evaluations with max 33ms in PointsTo::Types::getInheritedMetaclass#ff/2@i2#c7b65y1w)
	FromImportOfMutableAttribute.ql-9:Constants::ConstantObjectInternal::attribute#ffff ............................... 2.1s (797 evaluations with max 8ms in Constants::ConstantObjectInternal::attribute#ffff/4@i2#c7b658y1)
[2022-02-02 17:11:20] CSV_CACHE_DIFF: #select#query#ffffffffffffffffffffffff (FromImportOfMutableAttribute.ql),6.469,25.42,0,0.584,0.448,0.072,0,0,0,0,0,0,0

@hvitved hvitved force-pushed the python/points-to-perf branch 3 times, most recently from 5bdfed0 to 976accd Compare January 10, 2022 16:49
@hvitved hvitved marked this pull request as ready for review January 11, 2022 07:39
@hvitved hvitved requested a review from a team as a code owner January 11, 2022 07:39
Copy link
Contributor

@tausbn tausbn left a comment

Choose a reason for hiding this comment

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

A few minor comments, but otherwise this looks correct to me. Had to stare a bit at the rewrite of the "legal merge candidate" stuff to convince myself that it was behaviour-preserving. (I'm still only ~90% sure.)

Also, I think we should hold off on merging until the performance checks are in. My main worry is that some other project now has bad performance because of these changes.

tausbn
tausbn previously approved these changes Jan 11, 2022
@hvitved
Copy link
Contributor Author

hvitved commented Jan 12, 2022

This PR needs more work:

Query execution time comparisons (from CodeQL logs) (data/hvitved/pr-7549-218fe21__nightly__nightly)

Variants:

v1: [email protected]=fd60c6e1ad
v2: 7fa2eb5@points-to-perf=218fe214f3

v1 stddev v2 stddev diff relative
Overall (excl. partials!) 19722 20632 910 1.046
brave__brave-core (1, 1) 193 0 184 0 -9 0.953
lonero-team__decentralized-internet (2, 2) 190 22.63 182 4.243 -8 0.958
dumb-stuff__improvmx_py (1, 1) 191 0 186 0 -5 0.974
18f__piipan (1, 1) 39 0 38 0 -1 0.974
osgeo__grass (1, 1) 399 0 395 0 -4 0.99
umahari__depend (1, 1) 266 0 267 0 1 1.004
FreeCAD__FreeCAD (1, 1) 3229 0 3248 0 19 1.006
bentoml__bentoml (1, 1) 629 0 635 0 6 1.010
strawberry-graphql__strawberry (1, 1) 519 0 526 0 7 1.013
ytdl-org__youtube-dl (1, 1) 294 0 298 0 4 1.014
lafranceinsoumise__actionpopulaire.fr (3, 3) 214 17.69 218 23.39 4 1.019
wekan__wekan (1, 1) 156 0 159 0 3 1.019
pennydreadfulmtg__penny-dreadful-tools (1, 1) 204 0 208 0 4 1.020
PowerShell__PowerShell (1, 1) 136 0 139 0 3 1.022
vim__vim (2, 2) 168.5 14.85 172.5 9.192 4 1.024
aws__aws-parallelcluster (1, 1) 259 0 266 0 7 1.027
ministryofjustice__opg-use-an-lpa (1, 1) 140 0 144 0 4 1.029
netflix__dispatch (1, 1) 938 0 966 0 28 1.030
jaegertracing__jaeger (1, 1) 161 0 166 0 5 1.031
modularhistory__modularhistory (1, 1) 191 0 197 0 6 1.031
danmar__cppcheck (1, 1) 217 0 224 0 7 1.032
weblateorg__weblate (2, 2) 245 0 253.5 7.778 8.5 1.035
inrupt__solid-client-authn-js (1, 1) 169 0 175 0 6 1.036
languagetool-org__languagetool (1, 1) 137 0 142 0 5 1.036
biosimulations__biosimulations (2, 2) 158.5 27.58 164.5 21.92 6 1.038
pallets__flask (2, 2) 210.5 34.65 218.5 30.41 8 1.038
bookwyrm-social__bookwyrm (1, 1) 353 0 367 0 14 1.040
nginxinc__kubernetes-ingress (1, 1) 149 0 155 0 6 1.040
nhsdigital__electronic-prescription-service-api (2, 2) 216 4.243 225 7.071 9 1.042
aevann1__drama (1, 1) 619 0 645 0 26 1.042
mozilla__fxa (2, 2) 149 15.56 155.5 20.51 6.5 1.044
chia-network__chia-blockchain (1, 1) 366 0 382 0 16 1.044
mergifyio__mergify-engine (1, 1) 360 0 378 0 18 1.050
grafana__grafana (3, 3) 144.7 20.43 152.3 21.36 7.667 1.053
ddnet__ddnet (3, 3) 161 23.07 169.7 19.6 8.667 1.054
onsdigital__eq-questionnaire-runner (3, 3) 202.7 23.18 214 25.63 11.33 1.056
magma__magma (3, 3) 265.7 38.08 282.7 43.1 17 1.064
hongbo-miao__hongbomiao.com (3, 3) 161 11.79 171.7 15.28 10.67 1.066
goauthentik__authentik (3, 3) 194.3 21.46 208 23.64 13.67 1.070
ictu__quality-time (3, 3) 157.7 6.807 169 7.55 11.33 1.072
openstack__nova (3, 3) 1198 37.4 1285 41.49 87.33 1.073
microsoft__vscode-jupyter (3, 3) 190.3 12.5 206 5.568 15.67 1.082
gluster__redant (3, 3) 500.7 81.77 542 75.94 41.33 1.083
python__cpython (3, 3) 1506 61.91 1639 59 133 1.088
collaboraonline__online (3, 3) 144.7 17.16 157.7 14.01 13 1.090
apache__airflow (3, 3) 739 14.8 807.7 44.5 68.67 1.093
saltstack__salt (2, 2) 1293 14.14 1429 19.8 136 1.105
django__django (3, 3) 602.7 2.887 673.7 20.23 71 1.118
svthalia__concrexit (3, 3) 394.7 40.13 444.3 42.1 49.67 1.126

@hvitved hvitved marked this pull request as draft February 2, 2022 14:18
@hvitved hvitved force-pushed the python/points-to-perf branch from 218fe21 to a6bedf8 Compare February 2, 2022 16:18
@hvitved hvitved changed the base branch from codeql-cli-2.7.5 to main February 2, 2022 16:19
@hvitved hvitved dismissed tausbn’s stale review February 2, 2022 16:19

The base branch was changed.

@hvitved hvitved marked this pull request as ready for review February 3, 2022 07:51
@hvitved
Copy link
Contributor Author

hvitved commented Feb 3, 2022

The new performance numbers look much better:

v1 stddev v2 stddev diff relative
Overall (excl. partials!) 62642 53949 -8693 0.861
FiacreT__M-moire (3, 2) 11034 1886 3042 9.899 -7992 0.276
FreeCAD__FreeCAD (3, 3) 3786 222 2788 216.1 -998 0.736
mergifyio__mergify-engine (1, 1) 870 0 845 0 -25 0.971
brave__brave-core (1, 1) 679 0 662 0 -17 0.975
openstack__nova (1, 1) 2311 0 2259 0 -52 0.977
dumb-stuff__improvmx_py (1, 1) 820 0 803 0 -17 0.979
nginxinc__kubernetes-ingress (1, 1) 701 0 688 0 -13 0.981
osgeo__grass (1, 1) 934 0 917 0 -17 0.982
gluster__redant (1, 1) 993 0 981 0 -12 0.988
magma__magma (1, 1) 909 0 899 0 -10 0.989
pallets__flask (1, 1) 767 0 759 0 -8 0.99
lafranceinsoumise__actionpopulaire.fr (1, 1) 842 0 835 0 -7 0.992
PowerShell__PowerShell (1, 1) 734 0 728 0 -6 0.992
aws__aws-parallelcluster (1, 1) 856 0 850 0 -6 0.993
weblateorg__weblate (1, 1) 907 0 901 0 -6 0.993
ministryofjustice__opg-use-an-lpa (1, 1) 784 0 779 0 -5 0.994
onsdigital__eq-questionnaire-runner (1, 1) 820 0 816 0 -4 0.995
danmar__cppcheck (1, 1) 874 0 870 0 -4 0.995
collaboraonline__online (1, 1) 757 0 754 0 -3 0.996
vim__vim (1, 1) 771 0 768 0 -3 0.996
bentoml__bentoml (1, 1) 1457 0 1452 0 -5 0.997
mozilla__fxa (1, 1) 750 0 748 0 -2 0.997
django__django (1, 1) 1132 0 1131 0 -1 0.999
grafana__grafana (1, 1) 632 0 632 0 0 1
saltstack__salt (1, 1) 2272 0 2274 0 2 1.001
strawberry-graphql__strawberry (1, 1) 1328 0 1330 0 2 1.002
aevann1__drama (1, 1) 1204 0 1207 0 3 1.002
microsoft__vscode-jupyter (1, 1) 857 0 860 0 3 1.004
chia-network__chia-blockchain (1, 1) 944 0 948 0 4 1.004
inrupt__solid-client-authn-js (1, 1) 643 0 647 0 4 1.006
lonero-team__decentralized-internet (1, 1) 797 0 802 0 5 1.006
ddnet__ddnet (1, 1) 825 0 831 0 6 1.007
biosimulations__biosimulations (1, 1) 866 0 873 0 7 1.008
python__cpython (1, 1) 2396 0 2431 0 35 1.015
umahari__depend (1, 1) 939 0 955 0 16 1.017
jaegertracing__jaeger (1, 1) 771 0 787 0 16 1.021
netflix__dispatch (1, 1) 2069 0 2115 0 46 1.022
modularhistory__modularhistory (1, 1) 620 0 634 0 14 1.023
hongbo-miao__hongbomiao.com (1, 1) 768 0 786 0 18 1.023
svthalia__concrexit (1, 1) 1172 0 1201 0 29 1.025
languagetool-org__languagetool (1, 1) 645 0 661 0 16 1.025
nhsdigital__electronic-prescription-service-api (1, 1) 866 0 888 0 22 1.025
18f__piipan (1, 1) 596 0 612 0 16 1.027
bookwyrm-social__bookwyrm (2, 2) 1096 16.26 1125 55.15 29.5 1.027
wekan__wekan (1, 1) 651 0 669 0 18 1.028
ytdl-org__youtube-dl (1, 1) 822 0 845 0 23 1.028
goauthentik__authentik (1, 1) 880 0 906 0 26 1.030
pennydreadfulmtg__penny-dreadful-tools (1, 1) 934 0 962 0 28 1.030
ictu__quality-time (2, 2) 693 80.61 714 59.4 21 1.030
apache__airflow (1, 1) 1868 0 1979 0 111 1.059

@hvitved hvitved force-pushed the python/points-to-perf branch from a6bedf8 to 58d90c7 Compare February 10, 2022 09:29
@hvitved
Copy link
Contributor Author

hvitved commented Feb 28, 2022

@tausbn : Could you take another look at this PR, please?

@tausbn
Copy link
Contributor

tausbn commented Feb 28, 2022

@tausbn : Could you take another look at this PR, please?

I'm on it. Some of these changes are not immediately trivial, however, so it's taking some time to chew my way through it. 🙂

@hvitved
Copy link
Contributor Author

hvitved commented Feb 28, 2022

I'm on it.

Thanks, no rush; just wanted to check that it had not slipped through the cracks.

tausbn
tausbn previously approved these changes Feb 28, 2022
Copy link
Contributor

@tausbn tausbn left a comment

Choose a reason for hiding this comment

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

Okay, I think I've convinced myself that this ought to preserve behaviour. Let's :shipit: and see how it goes.

(Modulo the one minor suggested change.)

@hvitved hvitved added the no-change-note-required This PR does not need a change note label Mar 1, 2022
@hvitved hvitved requested a review from tausbn March 1, 2022 14:26
@tausbn tausbn merged commit 8460ab4 into github:main Mar 1, 2022
@hvitved hvitved deleted the python/points-to-perf branch March 2, 2022 07:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

no-change-note-required This PR does not need a change note Python

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants