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

moving to C++11 and beyond? #12

Open
psteinb opened this issue Feb 9, 2018 · 1 comment
Open

moving to C++11 and beyond? #12

psteinb opened this issue Feb 9, 2018 · 1 comment

Comments

@psteinb
Copy link

psteinb commented Feb 9, 2018

I just replaced all the use of std::pair with using std::tuple and got a 30% speed improvement on insert calls:

--------------------------------------------------------------
Benchmark                       Time           CPU Iterations
--------------------------------------------------------------
BM_insert/100             4009190 ns    3993675 ns        175
BM_insert/200            14098351 ns   14066840 ns         50
BM_insert/500            79044530 ns   78869829 ns          9
BM_insert_improved/100    5105467 ns    5094695 ns        138
BM_insert_improved/200   18299317 ns   18259001 ns         38
BM_insert_improved/500  105163774 ns  104951121 ns          7

@DNCrane are you interested in such improvements and hence interested in moving to a more recent standard?

@psteinb
Copy link
Author

psteinb commented Feb 12, 2018

Dear all,

@DNCrane was so generous to allow me to become a collaborator on this project. As I am using this project in my daily work, I am planning on the following tasks in the coming days:

  • lift the required C++ standard to C++11/C++14
  • provide a test suite using catch2
  • add a license to the code
  • improve the performance of the implementation (see this issue to get an idea)

If I get all of this done, I'll drop it in dedicated PRs and merge them early next week, Feb 19. If you have any feedback on it, I am happy to receive it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant