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

[MINOR] Frame Float detection refinement #1896

Merged
merged 1 commit into from
Sep 6, 2023

Conversation

Baunsgaard
Copy link
Contributor

This commit refine the detection and selection of float values in the schema detection algorithm located in:

src/main/java/org/apache/sysds/runtime/frame/data/lib/FrameUtil.java

To improve the performance a custom matcher have been made to avoid using regexes if possible, and we try to avoid parsing the float value from the string representation if at all possible. The implementation is not completely fool proof and does not consider many adversarial inputs.

@Baunsgaard Baunsgaard force-pushed the FrameFloatDetectionImprovements branch from b8acfb0 to b20f2b8 Compare September 6, 2023 08:49
@Baunsgaard
Copy link
Contributor Author

depends on #1895

This commit refine the detection and selection of float values in the
schema detection algorithm located in:

src/main/java/org/apache/sysds/runtime/frame/data/lib/FrameUtil.java

To improve the performance a custom matcher have been made to avoid using
regexes if possible, and we try to avoid parsing the float value from the
string representation if at all possible. The implementation is not
completely fool proof and does not consider many adversarial inputs.

on a small test case of 1000 string values that all are fp32 the
implementation improve performance from 0.5 ms to 0.02 ms.
@Baunsgaard Baunsgaard force-pushed the FrameFloatDetectionImprovements branch from b20f2b8 to 4851f34 Compare September 6, 2023 09:36
@Baunsgaard Baunsgaard merged commit 4851f34 into apache:main Sep 6, 2023
@github-pages github-pages bot temporarily deployed to github-pages September 6, 2023 09:38 Inactive
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

1 participant