Skip to content
This repository was archived by the owner on Sep 9, 2025. It is now read-only.

Conversation

@hendrikvanantwerpen
Copy link
Contributor

No description provided.

@hendrikvanantwerpen hendrikvanantwerpen requested a review from a team as a code owner July 4, 2023 22:43
@hendrikvanantwerpen hendrikvanantwerpen self-assigned this Jul 4, 2023
@github-actions
Copy link

github-actions bot commented Jul 4, 2023

Performance Summary

Comparing base acb0fab with head 3cce544 on microsoft/[email protected]. For details see workflow artifacts. Note that performance is tested on the last commits with changes in stack-graphs, not on every commit.

Before
--------------------------------------------------------------------------------
Command:            base/target/release/tree-sitter-stack-graphs-typescript index -D base.sqlite --max-file-time=30 --hide-error-details -- test/src/compiler
Massif arguments:   --massif-out-file=perf.out
ms_print arguments: --x=72 --y=12 base-perf-results/perf.out
--------------------------------------------------------------------------------


    GB
1.170^            ##                                                          
     |            #                                                           
     |            #                                                           
     |            #                                                           
     |            #                                                           
     |            #                                                     ::    
     |            #        :               :                            :     
     |            #      ::: :      ::     :           :                :     
     |            #      : : :::    :  :::::         : :                :     
     |      ::  ::#      : : ::     :  : : :         :::             ::::     
     |    @@:   : # :::: : : ::     :  : : : ::    :::::   :       ::: ::     
     |    @ : : : # :::  : : :: ::: :  : : :::  :::: ::::  :  :: : : : :: @:::
   0 +----------------------------------------------------------------------->Gi
     0                                                                   186.7
After
--------------------------------------------------------------------------------
Command:            head/target/release/tree-sitter-stack-graphs-typescript index -D head.sqlite --max-file-time=30 --hide-error-details -- test/src/compiler
Massif arguments:   --massif-out-file=perf.out
ms_print arguments: --x=72 --y=12 head-perf-results/perf.out
--------------------------------------------------------------------------------


    GB
1.206^            #                                                           
     |            #                                                           
     |            #                                                           
     |            #                                                           
     |            #                  ::                                  :    
     |           @#                  :                                   :    
     |           @#                  :                                @ ::    
     |           @#       ::         :    ::                         :@ ::    
     |           @#       :  :       :  @ :           :              :@ ::    
     |     : @   @#   :  ::  ::      :  @::         :::    ::        :@ ::    
     |     ::@   @#  ::  ::  ::      :  @::        ::::    :     @ : :@::::@  
     |     ::@   @#: ::  ::  ::   ::::  @::  :   : ::::  ::: : ::@ :::@::::@  
   0 +----------------------------------------------------------------------->Gi
     0                                                                   190.6

@hendrikvanantwerpen
Copy link
Contributor Author

Local testing showed that this approach is not correct. It can result in double-free panics. I wonder if this has something to do with the way strings are interned (symbols hold a &str)? Perhaps this will only be possible if we use the hashing arena's of #223? For now, I'm making this a draft again.

@hendrikvanantwerpen hendrikvanantwerpen marked this pull request as draft July 17, 2023 11:10
@hendrikvanantwerpen
Copy link
Contributor Author

Closing this old experiment, which was not the right approach. If we ever want this, we need to rethink how strings are interned---perhaps using a proper deduplicating arena like in #223.

@hendrikvanantwerpen hendrikvanantwerpen deleted the arena-clone branch March 12, 2024 15:00
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants