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

match/find/findAll is much slower on ORC #125

Closed
nitely opened this issue Aug 23, 2023 · 2 comments
Closed

match/find/findAll is much slower on ORC #125

nitely opened this issue Aug 23, 2023 · 2 comments
Labels

Comments

@nitely
Copy link
Owner

nitely commented Aug 23, 2023

It seems calls to =destroy and =copy are added due to the lookaround operation, even if the lookaround code itself is never ran (not even the outer loop). Commenting out this line makes match +2x faster. Found that with the benchmark + valgrind. Sadly, valgrind does not tell me on what object it's called, but it goes away after removing all var parameters. Also, it does not makes sense why it would copy that (maybe because the lookaround call is recursive?).

@nitely nitely changed the title match is slower on ORC match/find/findAll is slower on ORC Aug 23, 2023
@nitely nitely changed the title match/find/findAll is slower on ORC match/find/findAll is much slower on ORC Aug 23, 2023
@nitely nitely assigned nitely and unassigned nitely Aug 23, 2023
@nitely
Copy link
Owner Author

nitely commented Aug 25, 2023

Reported upstream nim-lang/Nim#22552

@nitely nitely mentioned this issue Aug 25, 2023
@nitely
Copy link
Owner Author

nitely commented Oct 3, 2023

Closing because #129 removes the hot path iterator usage. Although, the perf regression that Nim introduced it's still there.

@nitely nitely closed this as completed Oct 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant