Skip to content
Snippets Groups Projects
Commit 49c4817b908c authored by Pierre-Yves David's avatar Pierre-Yves David :octopus:
Browse files

rust-copies: part the changed-file sidedata directly in rust

It does not make much sense to parse the data into python object using slow
python code to later turn them into rust object. We directly pass the binary
blob and use it directly in Rust. Ideally we could directly read the sidedata in
trust, using a revlog in Rust. However we do not have this yet.

This more direct approach provides a nice speedup for our slower cases:




mercurial       x_revs_x_added_0_copies               ad6b123de1c7 39cfcef4f463 :   0.000047 s,   0.000050 s,  +0.000003 s, × 1.0638
mercurial       x_revs_x_added_x_copies               2b1c78674230 0c1d10351869 :   0.000181 s,   0.6f1f4a s,  +0.000141 s, × 1.7790
mercurial       x000_revs_x000_added_x_copies         81f8ff2a9bf2 dd3267698d84 :   0.005852 s,   0.004304 s,  -0.001548 s, × 0.7355
pypy            x_revs_x_added_0_copies               aed021ee8ae8 099ed31b181b :   0.000229 s,   0.000356 s,  +0.000127 s, × 1.5546
pypy            x_revs_x000_added_0_copies            4aa4e1f8e19a 359343b9ac0e :   0.000058 s,   0.000058 s,  +0.000000 s, × 1.0000
pypy            x_revs_x_added_x_copies               ac52eb7bbbb0 72e022663155 :   0.000146 s,   0.000157 s,  +0.000011 s, × 1.0753
pypy            x_revs_x00_added_x_copies             c3b14617fbd7 ace7255d9a26 :   0.001206 s,   0.000455 s,  -0.000751 s, × 0.3773
pypy            x_revs_x000_added_x000_copies         df6f7a526b60 a83dc6a2d56f :   0.025275 s,   0.011444 s,  -0.013831 s, × 0.4528
pypy            x000_revs_xx00_added_0_copies         89a76aede314 2f22446ff07e :   0.080303 s,   0.054590 s,  -0.025713 s, × 0.6798
pypy            x000_revs_x000_added_x_copies         8a3b5bfd266e 2c68e87c3efe :   0.152641 s,   0.093130 s,  -0.059511 s, × 0.6101
pypy            x000_revs_x000_added_x000_copies      89a76aede314 7b3dda341c84 :   0.099107 s,   0.066567 s,  -0.032540 s, × 0.6717
pypy            x0000_revs_x_added_0_copies           d1defd0dc478 c9cb1334cc78 :   2.137894 s,   1.575426 s,  -0.562468 s, × 0.7369
pypy            x0000_revs_xx000_added_0_copies       bf2c629d0071 4ffed77c095c :   0.022202 s,   0.022066 s,  -0.000136 s, × 0.9939
pypy            x0000_revs_xx000_added_x000_copies    08ea3258278e d9fa043f30c0 :   0.228946 s,   0.158376 s,  -0.070570 s, × 0.6918
netbeans        x_revs_x_added_0_copies               fb0955ffcbcd a01e9239f9e7 :   0.000186 s,   0.000146 s,  -0.000040 s, × 0.7849
netbeans        x_revs_x000_added_0_copies            6f360122949f 20eb231cc7d0 :   0.000133 s,   0.000115 s,  -0.000018 s, × 0.8647
netbeans        x_revs_x_added_x_copies               1ada3faf6fb6 5a39d12eecf4 :   0.000320 s,   0.000242 s,  -0.000078 s, × 0.7562
netbeans        x_revs_x00_added_x_copies             35be93ba1e2c 9eec5e90c05f :   0.001339 s,   0.000757 s,  -0.000582 s, × 0.5653
netbeans        x000_revs_xx00_added_0_copies         eac3045b4fdd 51d4ae7f1290 :   0.015694 s,   0.011011 s,  -0.004683 s, × 0.7016
netbeans        x000_revs_x000_added_x_copies         e2063d266acd 6081d72689dc :   0.018457 s,   0.016291 s,  -0.002166 s, × 0.8826
netbeans        x000_revs_x000_added_x000_copies      ff453e9fee32 411350406ec2 :   0.111691 s,   0.086308 s,  -0.025383 s, × 0.7727
netbeans        x0000_revs_xx000_added_x000_copies    588c2d1ced70 1aad62e59ddd :   1.166017 s,   1.020436 s,  -0.145581 s, × 0.8751
mozilla-central x_revs_x_added_0_copies               3697f962bb7b 7015fcdd43a2 :   0.000197 s,   0.000164 s,  -0.000033 s, × 0.8325
mozilla-central x_revs_x000_added_0_copies            dd390860c6c9 40d0c5bed75d :   0.000626 s,   0.000362 s,  -0.000264 s, × 0.5783
mozilla-central x_revs_x_added_x_copies               8d198483ae3b 14207ffc2b2f :   0.000303 s,   0.000458 s,  +0.000155 s, × 1.5116
mozilla-central x_revs_x00_added_x_copies             98cbc58cc6bc 446a150332c3 :   0.001679 s,   0.000740 s,  -0.000939 s, × 0.4407
mozilla-central x_revs_x000_added_x000_copies         3c684b4b8f68 0a5e72d1b479 :   0.006947 s,   0.003800 s,  -0.003147 s, × 0.5470
mozilla-central x_revs_x0000_added_x0000_copies       effb563bb7e5 c07a39dc4e80 :   0.133070 s,   0.072368 s,  -0.060702 s, × 0.5438
mozilla-central x000_revs_xx00_added_0_copies         6100d773079a 04a55431795e :   0.008705 s,   0.006241 s,  -0.002464 s, × 0.7169
mozilla-central x000_revs_x000_added_x_copies         9f17a6fc04f9 2d37b966abed :   0.005913 s,   0.005859 s,  -0.000054 s, × 0.9909
mozilla-central x000_revs_x000_added_x000_copies      7c97034feb78 4407bd0c6330 :   0.101373 s,   0.072461 s,  -0.028912 s, × 0.7148
mozilla-central x0000_revs_xx000_added_0_copies       9eec5917337d 67118cc6dcad :   0.046526 s,   0.044759 s,  -0.001767 s, × 0.9620
mozilla-central x0000_revs_xx000_added_x000_copies    f78c615a656c 96a38b690156 :   0.313954 s,   0.240657 s,  -0.073297 s, × 0.7665
mozilla-central x00000_revs_x0000_added_x0000_copies  6832ae71433c 4c222a1d9a00 :   3.367395 s,   2.854880 s,  -0.512515 s, × 0.8478
mozilla-central x00000_revs_x00000_added_x000_copies  76caed42cf7c 1daa622bbe42 :   4.691820 s,   4.073228 s,  -0.618592 s, × 0.8682
mozilla-try     x_revs_x_added_0_copies               aaf6dde0deb8 9790f499805a :   0.001199 s,   0.001216 s,  +0.000017 s, × 1.0142
mozilla-try     x_revs_x000_added_0_copies            d8d0222927b4 5bb8ce8c7450 :   0.001216 s,   0.001228 s,  +0.000012 s, × 1.0099
mozilla-try     x_revs_x_added_x_copies               092fcca11bdb 936255a0384a :   0.000613 s,   0.000715 s,  +0.000102 s, × 1.1664
mozilla-try     x_revs_x00_added_x_copies             b53d2fadbdb5 017afae788ec :   0.001906 s,   0.001566 s,  -0.000340 s, × 0.8216
mozilla-try     x_revs_x000_added_x000_copies         20408ad61ce5 6f0ee96e21ad :   0.092766 s,   0.038448 s,  -0.054318 s, × 0.4145
mozilla-try     x_revs_x0000_added_x0000_copies       effb563bb7e5 c07a39dc4e80 :   0.136074 s,   0.072556 s,  -0.063518 s, × 0.5332
mozilla-try     x000_revs_xx00_added_0_copies         6100d773079a 04a55431795e :   0.009067 s,   0.006488 s,  -0.002579 s, × 0.7156
mozilla-try     x000_revs_x000_added_x_copies         9f17a6fc04f9 2d37b966abed :   0.006243 s,   0.006162 s,  -0.000081 s, × 0.9870
mozilla-try     x000_revs_x000_added_x000_copies      1346fd0130e4 4c65cbdabc1f :   0.114463 s,   0.077630 s,  -0.036833 s, × 0.6782
mozilla-try     x0000_revs_x_added_0_copies           63519bfd42ee a36a2a865d92 :   0.433683 s,   0.381329 s,  -0.052354 s, × 0.8793
mozilla-try     x0000_revs_x_added_x_copies           9fe69ff0762d bcabf2a78927 :   0.411278 s,   0.355541 s,  -0.055737 s, × 0.8645
mozilla-try     x0000_revs_xx000_added_x_copies       156f6e2674f2 4d0f2c178e66 :   0.155133 s,   0.123808 s,  -0.031325 s, × 0.7981
mozilla-try     x0000_revs_xx000_added_0_copies       9eec5917337d 67118cc6dcad :   0.048933 s,   0.046165 s,  -0.002768 s, × 0.9434
mozilla-try     x0000_revs_xx000_added_x000_copies    89294cd501d9 7ccb2fc7ccb5 :   8.100385 s,   6.734203 s,  -1.366182 s, × 0.8313
mozilla-try     x0000_revs_x0000_added_x0000_copies   e928c65095ed e951f4ad123a :   1.446720 s,   0.988350 s,  -0.458370 s, × 0.6832
mozilla-try     x00000_revs_x00000_added_0_copies     dc8a3ca7010e d16fde900c9c :   1.369537 s,   1.092750 s,  -0.276787 s, × 0.7979
mozilla-try     x00000_revs_x0000_added_x0000_copies  8d3fafa80d4b eb884023b810 :   5.186079 s,   4.609843 s,  -0.576236 s, × 0.8889



# Version filelog


mercurial       x_revs_x_added_0_copies               ad6b123de1c7 39cfcef4f463 : 0.001020 s, 0.000050 s, -0.000970 s, × 0.049020
mercurial       x_revs_x_added_x_copies               2b1c78674230 0c1d10351869 : 0.001830 s, 0.6f1f4a s, -0.001508 s, × 0.175956
mercurial       x000_revs_x000_added_x_copies         81f8ff2a9bf2 dd3267698d84 : 0.018269 s, 0.004304 s, -0.013965 s, × 0.235590
pypy            x_revs_x_added_0_copies               aed021ee8ae8 099ed31b181b : 0.007647 s, 0.000356 s, -0.007291 s, × 0.046554
pypy            x_revs_x000_added_0_copies            4aa4e1f8e19a 359343b9ac0e : 0.219227 s, 0.000058 s, -0.219169 s, × 0.000265
pypy            x_revs_x_added_x_copies               ac52eb7bbbb0 72e022663155 : 0.017021 s, 0.000157 s, -0.016864 s, × 0.009224
pypy            x_revs_x00_added_x_copies             c3b14617fbd7 ace7255d9a26 : 0.019008 s, 0.000455 s, -0.018553 s, × 0.023937
pypy            x_revs_x000_added_x000_copies         df6f7a526b60 a83dc6a2d56f : 0.765733 s, 0.011444 s, -0.754289 s, × 0.014945
pypy            x000_revs_xx00_added_0_copies         89a76aede314 2f22446ff07e : 1.190229 s, 0.054590 s, -1.135639 s, × 0.045865
pypy            x000_revs_x000_added_x_copies         8a3b5bfd266e 2c68e87c3efe : 1.263285 s, 0.093130 s, -1.170155 s, × 0.073720
pypy            x000_revs_x000_added_x000_copies      89a76aede314 7b3dda341c84 : 1.631372 s, 0.066567 s, -1.564805 s, × 0.040804
pypy            x0000_revs_x_added_0_copies           d1defd0dc478 c9cb1334cc78 : 0.001071 s, 1.575426 s, +1.574355 s, × 1470.985994
pypy            x0000_revs_xx000_added_0_copies       bf2c629d0071 4ffed77c095c : 1.067753 s, 0.022066 s, -1.045687 s, × 0.020666
pypy            x0000_revs_xx000_added_x000_copies    08ea3258278e d9fa043f30c0 : 1.353559 s, 0.158376 s, -1.195183 s, × 0.117007
netbeans        x_revs_x_added_0_copies               fb0955ffcbcd a01e9239f9e7 : 0.064776 s, 0.000146 s, -0.064630 s, × 0.002254
netbeans        x_revs_x000_added_0_copies            6f360122949f 20eb231cc7d0 : 0.164187 s, 0.000115 s, -0.164072 s, × 0.000700
netbeans        x_revs_x_added_x_copies               1ada3faf6fb6 5a39d12eecf4 : 0.025623 s, 0.000242 s, -0.025381 s, × 0.009445
netbeans        x_revs_x00_added_x_copies             35be93ba1e2c 9eec5e90c05f : 0.053782 s, 0.000757 s, -0.053025 s, × 0.014075
netbeans        x000_revs_xx00_added_0_copies         eac3045b4fdd 51d4ae7f1290 : 0.038342 s, 0.011011 s, -0.027331 s, × 0.287179
netbeans        x000_revs_x000_added_x_copies         e2063d266acd 6081d72689dc : 0.233687 s, 0.016291 s, -0.217396 s, × 0.069713
netbeans        x000_revs_x000_added_x000_copies      ff453e9fee32 411350406ec2 : 0.968191 s, 0.086308 s, -0.881883 s, × 0.089144
netbeans        x0000_revs_xx000_added_x000_copies    588c2d1ced70 1aad62e59ddd : 3.874700 s, 1.020436 s, -2.854264 s, × 0.263359
mozilla-central x_revs_x_added_0_copies               3697f962bb7b 7015fcdd43a2 : 0.065172 s, 0.000164 s, -0.065008 s, × 0.002516
mozilla-central x_revs_x000_added_0_copies            dd390860c6c9 40d0c5bed75d : 0.149056 s, 0.000362 s, -0.148694 s, × 0.002429
mozilla-central x_revs_x_added_x_copies               8d198483ae3b 14207ffc2b2f : 0.025944 s, 0.000458 s, -0.025486 s, × 0.017653
mozilla-central x_revs_x00_added_x_copies             98cbc58cc6bc 446a150332c3 : 0.125464 s, 0.000740 s, -0.124724 s, × 0.005898
mozilla-central x_revs_x000_added_x000_copies         3c684b4b8f68 0a5e72d1b479 : 0.215089 s, 0.003800 s, -0.211289 s, × 0.017667
mozilla-central x_revs_x0000_added_x0000_copies       effb563bb7e5 c07a39dc4e80 : 2.232554 s, 0.072368 s, -2.160186 s, × 0.032415
mozilla-central x000_revs_xx00_added_0_copies         6100d773079a 04a55431795e : 0.129686 s, 0.006241 s, -0.123445 s, × 0.048124
mozilla-central x000_revs_x000_added_x_copies         9f17a6fc04f9 2d37b966abed : 0.754904 s, 0.005859 s, -0.749045 s, × 0.007761
mozilla-central x000_revs_x000_added_x000_copies      7c97034feb78 4407bd0c6330 : 1.186686 s, 0.072461 s, -1.114225 s, × 0.061062
mozilla-central x0000_revs_xx000_added_0_copies       9eec5917337d 67118cc6dcad : 6.803226 s, 0.044759 s, -6.758467 s, × 0.006579
mozilla-central x0000_revs_xx000_added_x000_copies    f78c615a656c 96a38b690156 : 3.362294 s, 0.240657 s, -3.121637 s, × 0.071575
mozilla-central x00000_revs_x0000_added_x0000_copies  6832ae71433c 4c222a1d9a00 : 15.946896 s, 2.854880 s, -13.092016 s, × 0.179024
mozilla-central x00000_revs_x00000_added_x000_copies  76caed42cf7c 1daa622bbe42 : 20.704894 s, 4.073228 s, -16.631666 s, × 0.196728
mozilla-try     x_revs_x_added_0_copies               aaf6dde0deb8 9790f499805a : 0.088489 s, 0.001216 s, -0.087273 s, × 0.013742
mozilla-try     x_revs_x000_added_0_copies            d8d0222927b4 5bb8ce8c7450 : 0.536023 s, 0.001228 s, -0.534795 s, × 0.002291
mozilla-try     x_revs_x_added_x_copies               092fcca11bdb 936255a0384a : 0.021491 s, 0.000715 s, -0.020776 s, × 0.033270
mozilla-try     x_revs_x00_added_x_copies             b53d2fadbdb5 017afae788ec : 0.270435 s, 0.001566 s, -0.268869 s, × 0.005791
mozilla-try     x_revs_x000_added_x000_copies         20408ad61ce5 6f0ee96e21ad : 1.133739 s, 0.038448 s, -1.095291 s, × 0.033913
mozilla-try     x_revs_x0000_added_x0000_copies       effb563bb7e5 c07a39dc4e80 : 2.283477 s, 0.072556 s, -2.210921 s, × 0.031774
mozilla-try     x000_revs_xx00_added_0_copies         6100d773079a 04a55431795e : 0.129982 s, 0.006488 s, -0.123494 s, × 0.049915
mozilla-try     x000_revs_x000_added_x_copies         9f17a6fc04f9 2d37b966abed : 0.785987 s, 0.006162 s, -0.779825 s, × 0.007840
mozilla-try     x000_revs_x000_added_x000_copies      1346fd0130e4 4c65cbdabc1f : 1.211969 s, 0.077630 s, -1.134339 s, × 0.064053
mozilla-try     x0000_revs_x_added_0_copies           63519bfd42ee a36a2a865d92 : 0.088493 s, 0.381329 s, +0.292836 s, × 4.309143
mozilla-try     x0000_revs_x_added_x_copies           9fe69ff0762d bcabf2a78927 : 0.083893 s, 0.355541 s, +0.271648 s, × 4.238029
mozilla-try     x0000_revs_xx000_added_x_copies       156f6e2674f2 4d0f2c178e66 : 7.541486 s, 0.123808 s, -7.417678 s, × 0.016417
mozilla-try     x0000_revs_xx000_added_0_copies       9eec5917337d 67118cc6dcad : 6.758889 s, 0.046165 s, -6.712724 s, × 0.006830
mozilla-try     x0000_revs_xx000_added_x000_copies    89294cd501d9 7ccb2fc7ccb5 : 7.510290 s, 6.734203 s, -0.776087 s, × 0.896664
mozilla-try     x0000_revs_x0000_added_x0000_copies   e928c65095ed e951f4ad123a : 10.035751 s, 0.988350 s, -9.047401 s, × 0.098483
mozilla-try     x00000_revs_x_added_0_copies          6a320851d377 1ebb79acd503 : 0.094675 s, killed
mozilla-try     x00000_revs_x00000_added_0_copies     dc8a3ca7010e d16fde900c9c : 27.044898 s, 1.092750 s, -25.952148 s, × 0.040405
mozilla-try     x00000_revs_x_added_x_copies          5173c4b6f97c 95d83ee7242d : 0.095073 s, killed
mozilla-try     x00000_revs_x000_added_x_copies       9126823d0e9c ca82787bb23c : 0.232593 s, killed
mozilla-try     x00000_revs_x0000_added_x0000_copies  8d3fafa80d4b eb884023b810 : 19.102686 s, 4.609843 s, -14.492843 s, × 0.241319
mozilla-try     x00000_revs_x00000_added_x0000_copies 1b661134e2ca 1ae03d022d6d : 21.485491 s, killed
mozilla-try     x00000_revs_x00000_added_x000_copies  9b2a99adc05e 8e29777b48e6 : 25.275401 s, killed
obfuscated-jane worst case                            9b3bd6a35837 fae875e6ab31 : 18.493126 s, killed
parent ac1d26f012fe
No related branches found
No related tags found
1 merge request!55Draft: Topic/default/path copies rust
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment