-
Notifications
You must be signed in to change notification settings - Fork 53
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
Refactor hash table generation. #23
Conversation
c5f37d8
to
97259e0
Compare
Can you also rebase this PR? While I like a lot the new implementation of the tables, I'm checking if it can be optimized a bit more. In my machine, the Fatemann tests (julia 0.4) lasts 3.84 sec, versus Mathematica 3.17, so we are within 20%. |
In my next work I have gained another factor of 2.5 ;) I'll put it up as a new PR, but I am having problems rebasing this one... |
Tests are currently failing due to some recent change JuliaLang/julia#12285. Shall I try to fix this and incorporate the modifications in the tests? |
I have fixed the FactCheck syntax, that has changed from |
- Rename generateTables -> generate_tables and refactor to take number of variables and order as arguments - Refactored hash table generation. - Removed explicit tests of hash tables since the exact generation has now changed. - Add blank lines in parameters.jl - Remove unnecessary information from TaylorSeries.jl - Make set_variables accept only strings; fix test - Make index_table an array instead of a dictionary. This significantly improves performance - Fix bug in generate_tables
Add check to fateman Refactored fateman
Fix Euler test
8b18cbb
to
fffd0f0
Compare
Rebase and squash is done... Tests pass, so I'm merging. |
Refactor hash table generation.
This is a drop-in replacement for the previous version except that the exact order
in which each set of indices is generated is changed.
The performance is basically the same as in the previous version.EDIT: The performance is now significantly better: 8.4s instead of 12s for the first Fateman test on my machine!
Follows on from #22