-
Notifications
You must be signed in to change notification settings - Fork 164
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
Performance improvements #58
Conversation
Moved `name` and `type` vars back into loop body. Since moving them out doesn't provide any measurable performance improvement to justify odd look.
Ok |
@Enmk how does creating two strings in a loop not have any impact? In what test? In my real world use-case, it made a significant difference. It won't make one only if the strings can benefit from SSO, which is dependent on the values that they take at runtime (and having a SSO implementation of std::string). |
+1 for @rpopescu |
@rpopescu I actually tested that against 9000-columns wide table and found no significant difference. But could you please share your real-life experience (and compiler\toolset version too)? |
@Enmk you will always note the difference in tight loops if std::string is allocating memory. It is not a question... note that std::string also memsets the memory region. |
But it may not be noticed due to overall substandard performance of |
Or it's not a tight loop, then it's ok. |
@rpopescu @alexey-milovidov BUT to make you both happy, I've moved those outside of the for loop. And please let's keep discussion civilized, and for performance that means numbers, not opinions.
Agree it is not ideal and we are trying little by little to improve it, (specifically, |
No description provided.