Evarconv: save keys#19611
Conversation
|
@coqbot run full ci |
|
started a bench manually to have the mathcomp overlay |
|
FYI, I started porting lemma-overloading to recent versions of Coq and MathComp. I think this is a good stress test for this PR. (I don't think I will finish it quickly though.) |
|
🏁 Bench results: INFO: failed to install coq-mathcomp-odd-order (dependency coq-mathcomp-character failed) 🐢 Top 25 slow downs┌─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ │ TOP 25 SLOW DOWNS │ │ │ │ OLD NEW DIFF %DIFF Ln FILE │ ├─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ 0.4110 534.9490 534.5380 130057.91% 193 coq-fourcolor/theories/hypermap.v.html │ │ 0.6130 70.7650 70.1520 11444.05% 670 coq-fourcolor/theories/matte.v.html │ │ 8.0820 52.1460 44.0640 545.21% 581 coq-iris-examples/theories/logrel/F_mu_ref_conc/binary/fundamental.v.html │ │ 8.0880 52.1000 44.0120 544.16% 591 coq-iris-examples/theories/logrel/F_mu_ref_conc/binary/fundamental.v.html │ │ 7.9890 51.7230 43.7340 547.43% 580 coq-iris-examples/theories/logrel/F_mu_ref_conc/binary/fundamental.v.html │ │ 0.4160 42.2550 41.8390 10057.45% 621 coq-fourcolor/theories/matte.v.html │ │ 0.2430 3.7030 3.4600 1423.87% 1156 coq-fourcolor/theories/cfmap.v.html │ │ 62.3500 65.1640 2.8140 4.51% 609 coq-fiat-crypto-with-bedrock/rupicola/bedrock2/bedrock2/src/bedrock2Examples/lightbulb.v.html │ │ 198.3720 200.5560 2.1840 1.10% 8 coq-neural-net-interp-computed-lite/theories/MaxOfTwoNumbersSimpler/Computed/AllLogits.v.html │ │ 181.0750 182.6620 1.5870 0.88% 233 coq-fiat-crypto-with-bedrock/rupicola/bedrock2/deps/riscv-coq/src/riscv/Proofs/DecodeByExtension.v.html │ │ 120.1750 121.2370 1.0620 0.88% 22 coq-fiat-crypto-with-bedrock/src/Rewriter/Passes/ArithWithCasts.v.html │ │ 94.1270 95.0840 0.9570 1.02% 20 coq-fiat-crypto-with-bedrock/src/Rewriter/Passes/NBE.v.html │ │ 3.0240 3.9220 0.8980 29.70% 24 coq-fiat-crypto-with-bedrock/src/Rewriter/Passes/MultiRetSplit.v.html │ │ 3.0920 3.9450 0.8530 27.59% 27 coq-fiat-crypto-with-bedrock/src/Rewriter/Passes/ToFancyWithCasts.v.html │ │ 36.9020 37.7500 0.8480 2.30% 3 coq-fiat-crypto-with-bedrock/src/ExtractionJsOfOCaml/bedrock2_fiat_crypto.v.html │ │ 23.9940 24.8180 0.8240 3.43% 129 coq-fiat-crypto-with-bedrock/src/Curves/Weierstrass/Projective.v.html │ │ 0.4760 1.2870 0.8110 170.38% 330 coq-metacoq-erasure/erasure/theories/Typed/ExtractionCorrectness.v.html │ │ 0.0110 0.8140 0.8030 7300.00% 165 coq-fourcolor/theories/revsnip.v.html │ │ 36.5750 37.3540 0.7790 2.13% 139 coq-fiat-parsers/src/Parsers/Refinement/SharpenedJSON.v.html │ │ 35.5480 36.1710 0.6230 1.75% 2 coq-fiat-crypto-with-bedrock/src/ExtractionJsOfOCaml/fiat_crypto.v.html │ │ 37.2650 37.8230 0.5580 1.50% 3 coq-fiat-crypto-with-bedrock/src/ExtractionJsOfOCaml/WithBedrock/fiat_crypto.v.html │ │ 18.3720 18.8810 0.5090 2.77% 31 coq-engine-bench-lite/coq/PerformanceDemos/pattern.v.html │ │ 6.3770 6.8650 0.4880 7.65% 192 coq-vst/veric/binop_lemmas5.v.html │ │ 1.6460 2.0690 0.4230 25.70% 42 coq-fiat-crypto-with-bedrock/src/Rewriter/Passes/ToFancyWithCasts.v.html │ │ 1.0130 1.4200 0.4070 40.18% 1142 coq-stdlib/FSets/FMapAVL.v.html │ └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ 🐇 Top 25 speed ups┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ │ TOP 25 SPEED UPS │ │ │ │ OLD NEW DIFF %DIFF Ln FILE │ ├──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ 11.2360 0.2140 -11.0220 -98.10% 2103 coq-mathcomp-ssreflect/mathcomp/ssreflect/order.v.html │ │ 4.8790 0.4880 -4.3910 -90.00% 2089 coq-mathcomp-ssreflect/mathcomp/ssreflect/order.v.html │ │ 63.6750 62.4490 -1.2260 -1.93% 609 coq-bedrock2/bedrock2/src/bedrock2Examples/lightbulb.v.html │ │ 1.1970 0.0010 -1.1960 -99.92% 3118 coq-mathcomp-algebra/mathcomp/algebra/poly.v.html │ │ 4.9420 3.8210 -1.1210 -22.68% 22 coq-fiat-crypto-with-bedrock/src/Rewriter/Passes/ArithWithCasts.v.html │ │ 1.0040 0.0070 -0.9970 -99.30% 202 coq-mathcomp-field/mathcomp/field/separable.v.html │ │ 25.6430 24.7880 -0.8550 -3.33% 345 coq-fiat-crypto-with-bedrock/src/Curves/Montgomery/XZProofs.v.html │ │ 0.8560 0.0080 -0.8480 -99.07% 1595 coq-mathcomp-solvable/mathcomp/solvable/maximal.v.html │ │ 5.0150 4.2040 -0.8110 -16.17% 1827 coq-metacoq-safechecker/safechecker/theories/PCUICSafeReduce.v.html │ │ 3.2780 2.5500 -0.7280 -22.21% 34 coq-fiat-crypto-with-bedrock/src/Rewriter/Passes/ArithWithCasts.v.html │ │ 25.4450 24.8220 -0.6230 -2.45% 12 coq-fourcolor/theories/job279to282.v.html │ │ 25.4840 24.8890 -0.5950 -2.33% 12 coq-fourcolor/theories/job299to302.v.html │ │ 62.1100 61.5380 -0.5720 -0.92% 27 coq-fiat-crypto-with-bedrock/src/Rewriter/Passes/ToFancyWithCasts.v.html │ │ 2.5080 1.9570 -0.5510 -21.97% 32 coq-fiat-crypto-with-bedrock/src/Rewriter/Passes/NBE.v.html │ │ 0.5310 0.0060 -0.5250 -98.87% 177 coq-mathcomp-solvable/mathcomp/solvable/alt.v.html │ │ 12.4480 11.9460 -0.5020 -4.03% 194 coq-fiat-crypto-with-bedrock/src/Fancy/Barrett256.v.html │ │ 19.9150 19.4660 -0.4490 -2.25% 12 coq-fourcolor/theories/job507to510.v.html │ │ 39.1870 38.7410 -0.4460 -1.14% 236 coq-rewriter/src/Rewriter/Rewriter/Examples/PerfTesting/LiftLetsMap.v.html │ │ 0.4400 0.0030 -0.4370 -99.32% 363 coq-mathcomp-solvable/mathcomp/solvable/cyclic.v.html │ │ 2.0160 1.5830 -0.4330 -21.48% 20 coq-fiat-crypto-with-bedrock/src/Rewriter/Passes/NBE.v.html │ │ 39.1230 38.6930 -0.4300 -1.10% 236 coq-rewriter-perf-SuperFast/src/Rewriter/Rewriter/Examples/PerfTesting/LiftLetsMap.v.html │ │ 0.4680 0.0410 -0.4270 -91.24% 464 coq-mathcomp-field/mathcomp/field/separable.v.html │ │ 0.4050 0.0040 -0.4010 -99.01% 170 coq-mathcomp-solvable/mathcomp/solvable/alt.v.html │ │ 0.3760 0.0030 -0.3730 -99.20% 1556 coq-mathcomp-solvable/mathcomp/solvable/abelian.v.html │ │ 0.3710 0.0020 -0.3690 -99.46% 187 coq-mathcomp-solvable/mathcomp/solvable/jordanholder.v.html │ └──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ |
|
🔴 CI failures at commit d1e2548 without any failure in the test-suite ✔️ Corresponding jobs for the base commit 241e2fa succeeded ❔ Ask me to try to extract minimal test cases that can be added to the test-suite 🏃
|
|
performance-tests-lite timedout in the bench, in Reify/CanonicalStructures/_2_SuperFast.v AFAICT (the bench runs each package with a 3h timeout) it seems the only files tried where |
|
Oh, sorry, fixed, and thank you. There is no need to restart the bench, there are several issues to investigate already. |
|
This should be ready for the CI, and if everything goes well a bench. |
|
@coqbot run full ci |
|
It looks like my overlay is wrong. What name should I give instead of odd-order? |
|
Did you use the script to generate the overlays or did you copy-paste this from other files? Otherwise the projects are |
|
I did not know about the script, which actually appears at least twice in the documentation, so thank you. |
|
@coqbot bench |
|
🏁 Bench results: INFO: failed to install coq-mathcomp-fingroup (dependency coq-mathcomp-ssreflect failed) 🐢 Top 25 slow downs┌─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ │ TOP 25 SLOW DOWNS │ │ │ │ OLD NEW DIFF %DIFF Ln FILE │ ├─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ 0.0030 1.3140 1.3110 43700.00% 238 coq-unimath/UniMath/CategoryTheory/Limits/Filtered.v.html │ │ 62.2290 63.0790 0.8500 1.37% 609 coq-bedrock2/bedrock2/src/bedrock2Examples/lightbulb.v.html │ │ 46.5520 47.2550 0.7030 1.51% 376 coq-unimath/UniMath/ModelCategories/Generated/LNWFSMonoidalStructure.v.html │ │ 36.1370 36.8060 0.6690 1.85% 139 coq-fiat-parsers/src/Parsers/Refinement/SharpenedJSON.v.html │ │ 0.0850 0.7340 0.6490 763.53% 556 coq-unimath/UniMath/AlgebraicTheories/RepresentationTheorem.v.html │ │ 0.0010 0.6100 0.6090 60900.00% 110 coq-unimath/UniMath/CategoryTheory/Limits/StandardDiagrams.v.html │ │ 0.0010 0.6090 0.6080 60800.00% 107 coq-unimath/UniMath/CategoryTheory/Limits/StandardDiagrams.v.html │ │ 99.4830 100.0170 0.5340 0.54% 968 coq-performance-tests-lite/src/fiat_crypto_via_setoid_rewrite_standalone.v.html │ │ 25.0900 25.5490 0.4590 1.83% 374 coq-unimath/UniMath/ModelCategories/Generated/LNWFSMonoidalStructure.v.html │ │ 99.5570 100.0110 0.4540 0.46% 999 coq-performance-tests-lite/src/fiat_crypto_via_setoid_rewrite_standalone.v.html │ │ 25.0300 25.4820 0.4520 1.81% 375 coq-unimath/UniMath/ModelCategories/Generated/LNWFSMonoidalStructure.v.html │ │ 32.9050 33.3340 0.4290 1.30% 147 coq-vst/veric/expr_lemmas4.v.html │ │ 46.2480 46.6700 0.4220 0.91% 110 coq-bedrock2/bedrock2/src/bedrock2Examples/full_mul.v.html │ │ 0.1950 0.5940 0.3990 204.62% 934 coq-unimath/UniMath/AlgebraicTheories/CategoryOfRetracts.v.html │ │ 11.1820 11.5470 0.3650 3.26% 410 coq-verdi-raft/theories/RaftProofs/LeaderLogsLogMatchingProof.v.html │ │ 31.9390 32.2650 0.3260 1.02% 194 coq-vst/veric/expr_lemmas4.v.html │ │ 0.2910 0.6070 0.3160 108.59% 199 coq-unimath/UniMath/CategoryTheory/Categories/StandardCategories.v.html │ │ 16.8740 17.1840 0.3100 1.84% 32 coq-performance-tests-lite/src/pattern.v.html │ │ 4.5180 4.8230 0.3050 6.75% 1190 coq-unimath/UniMath/CategoryTheory/GrothendieckConstruction/IsPullback.v.html │ │ 20.0080 20.2940 0.2860 1.43% 338 coq-unimath/UniMath/ModelCategories/Generated/LNWFSMonoidalStructure.v.html │ │ 18.5320 18.8110 0.2790 1.51% 481 coq-verdi-raft/theories/RaftProofs/EndToEndLinearizability.v.html │ │ 0.1450 0.4120 0.2670 184.14% 290 coq-unimath/UniMath/AlgebraicTheories/Examples/EndomorphismTheory.v.html │ │ 14.9250 15.1830 0.2580 1.73% 1505 coq-vst/floyd/VSU.v.html │ │ 17.3450 17.5890 0.2440 1.41% 31 coq-engine-bench-lite/coq/PerformanceDemos/pattern.v.html │ │ 0.3810 0.6240 0.2430 63.78% 870 coq-stdlib/MSets/MSetRBT.v.html │ └─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ 🐇 Top 25 speed ups┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ │ TOP 25 SPEED UPS │ │ │ │ OLD NEW DIFF %DIFF Ln FILE │ ├───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ 43.0820 42.1710 -0.9110 -2.11% 834 coq-vst/veric/binop_lemmas4.v.html │ │ 0.7080 0.3180 -0.3900 -55.08% 868 coq-stdlib/MSets/MSetRBT.v.html │ │ 0.9120 0.6900 -0.2220 -24.34% 205 coq-stdlib/setoid_ring/Ncring_tac.v.html │ │ 1.9950 1.7760 -0.2190 -10.98% 25 coq-engine-bench-lite/coq/PerformanceDemos/app_n.v.html │ │ 5.3150 5.1080 -0.2070 -3.89% 198 coq-compcert/x86/Op.v.html │ │ 1.6970 1.5010 -0.1960 -11.55% 313 coq-stdlib/Strings/Byte.v.html │ │ 199.9390 199.7440 -0.1950 -0.10% 8 coq-neural-net-interp-computed-lite/theories/MaxOfTwoNumbersSimpler/Computed/AllLogits.v.html │ │ 0.8300 0.6700 -0.1600 -19.28% 813 coq-stdlib/MSets/MSetRBT.v.html │ │ 7.9220 7.7640 -0.1580 -1.99% 31 coq-performance-tests-lite/src/pattern.v.html │ │ 0.4060 0.2710 -0.1350 -33.25% 650 coq-stdlib/MSets/MSetRBT.v.html │ │ 0.4240 0.2910 -0.1330 -31.37% 637 coq-stdlib/MSets/MSetRBT.v.html │ │ 4.3540 4.2230 -0.1310 -3.01% 428 coq-compcert/lib/Heaps.v.html │ │ 0.3500 0.2190 -0.1310 -37.43% 445 coq-stdlib/Reals/Abstract/ConstructiveLimits.v.html │ │ 4.3420 4.2180 -0.1240 -2.86% 623 coq-performance-tests-lite/src/fiat_crypto_via_setoid_rewrite_standalone.v.html │ │ 1.2250 1.1020 -0.1230 -10.04% 21 coq-engine-bench-lite/coq/PerformanceDemos/app_n.v.html │ │ 0.2950 0.1770 -0.1180 -40.00% 16 coq-stdlib/Numbers/HexadecimalZ.v.html │ │ 3.5620 3.4440 -0.1180 -3.31% 490 coq-stdlib/Reals/Cauchy/ConstructiveCauchyRealsMult.v.html │ │ 1.3810 1.2670 -0.1140 -8.25% 839 coq-unimath/UniMath/CategoryTheory/GrothendieckConstruction/IsPullback.v.html │ │ 0.4380 0.3260 -0.1120 -25.57% 624 coq-stdlib/MSets/MSetRBT.v.html │ │ 0.1080 0.0000 -0.1080 -100.00% 301 coq-vst/concurrency/conclib.v.html │ │ 0.1190 0.0120 -0.1070 -89.92% 72 coq-unimath/UniMath/CategoryTheory/Categories/HSET/SliceFamEquiv.v.html │ │ 0.1750 0.0700 -0.1050 -60.00% 230 coq-iris-examples/theories/logatom/snapshot/atomic_snapshot.v.html │ │ 0.1590 0.0560 -0.1030 -64.78% 616 coq-vst/floyd/go_lower.v.html │ │ 0.6940 0.5920 -0.1020 -14.70% 820 coq-unimath/UniMath/CategoryTheory/Limits/Examples/IsoCommaLimits.v.html │ │ 0.1010 0.0000 -0.1010 -100.00% 61 coq-iris-examples/theories/spanning_tree/proof.v.html │ └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ |
|
@coqbot run full ci |
|
Should I worry about the macOS failure? |
|
You can lobby for a quick merge of #19836 |
|
Well, that was definitely quick. I did not even have time to get there. |
|
@coqbot merge now |
|
@gares: You cannot merge this PR because:
|
|
@coqbot merge now |
|
@gares: You can't merge the PR because it hasn't been approved yet. |
|
@Tragicus please rebase and I'll merge |
|
this needs a changelog entry |
3c97827 to
f370118
Compare
f370118 to
e2fd033
Compare
|
I confirm that lemma-overloading.dev compiles with this branch of Coq. |
|
@coqbot merge now |
|
Did this break analysis (example failure https://gitlab.inria.fr/coq/coq/-/jobs/4971156)? |
|
Yes, indeed, I opened an overlay at math-comp/analysis#1402. |
Saves the head constant of a term before delta-reducing it, to be used during canonical structure resolution and to find matching heads.
Also prevents trying to solve canonical structure problems of the form
S.proj s ~ twhensreduces to an applied constructor.Fixes / closes #????
make doc_gram_rsts.Overlays (to be merged before the current PR)