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

Rename DECIMAL_128_FULL and rework usage of TypeSig.gpuNumeric #4462

Merged
merged 9 commits into from
Jan 10, 2022

Conversation

kuhushukla
Copy link
Collaborator

Partially addresses #3890 , specifically the first two sub-tasks.

@kuhushukla kuhushukla added this to the Dec 13 - Jan 7 milestone Jan 5, 2022
@kuhushukla kuhushukla self-assigned this Jan 5, 2022
@kuhushukla
Copy link
Collaborator Author

build

@kuhushukla
Copy link
Collaborator Author

@revans2 , @sperlingxx thoughts?

@sameerz sameerz added the task Work required that improves the product but is not user facing label Jan 6, 2022
@revans2
Copy link
Collaborator

revans2 commented Jan 6, 2022

I am fine with renaming DECIMAL_128_FULL to DECIMAL_128. It had FULL on it before because I thought we would use it to restrict the maximum precision allowed for things like multiply and divide, but the computation was complicated enough that there is not simple cutoff for most operations.

I do not want to mix GPU and non GPU TypeSig categories. TypeSig.numeric should never be used in a GPU type signature. This is about future proofing things. So if someone adds in a new DECIMAL_256 or something like that in the future we can update one of them and know that it matches the CPU, and not have to worry about it impacting anything on the GPU. It might be nice to rename numeric to be cpuNumberic instead so it is clearer. Again they started out as common, and then when we started to run into decimal situations I separated them, but I didn't want to change the name all at once for backwards compatibility reasons, but I should have.

@kuhushukla
Copy link
Collaborator Author

It might be nice to rename numeric to be cpuNumberic instead so it is clearer.

@revans2 , that makes sense. I can do that here shortly but then based on the comment I think we may just want to keep the occurrences of gpuNumeric + DECIMAL_128 as is. Am I right?

@revans2
Copy link
Collaborator

revans2 commented Jan 7, 2022

@revans2 , that makes sense. I can do that here shortly but then based on the comment I think we may just want to keep the occurrences of gpuNumeric + DECIMAL_128 as is. Am I right?

I think we have more places that use gpuNumeric + DECIMAL_128 than we do just gpuNumeric. I think it would be cleaner to make gpuNumeric include DECIMAL_128 and then in the few places that cannot support it yet, we can have them create a version for what they do support. And with the latest hashing PR #4470 there should be almost none left.

@kuhushukla
Copy link
Collaborator Author

@revans2 , that makes sense. I can do that here shortly but then based on the comment I think we may just want to keep the occurrences of gpuNumeric + DECIMAL_128 as is. Am I right?

I think we have more places that use gpuNumeric + DECIMAL_128 than we do just gpuNumeric. I think it would be cleaner to make gpuNumeric include DECIMAL_128 and then in the few places that cannot support it yet, we can have them create a version for what they do support. And with the latest hashing PR #4470 there should be almost none left.

Ok yes I also think that makes most sense.

@kuhushukla
Copy link
Collaborator Author

kuhushukla commented Jan 7, 2022

Some places in 320 shims for example the cast operator was missed for decimal 128 which with this change is now covered without any changes to the specific lines in the shims code. Mostly FYI.

@kuhushukla
Copy link
Collaborator Author

build

@kuhushukla
Copy link
Collaborator Author

build

revans2
revans2 previously approved these changes Jan 7, 2022
Copy link
Collaborator

@revans2 revans2 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just one nit.

Signed-off-by: Kuhu Shukla <[email protected]>
@kuhushukla
Copy link
Collaborator Author

build

@kuhushukla kuhushukla merged commit 5749673 into NVIDIA:branch-22.02 Jan 10, 2022
@kuhushukla kuhushukla linked an issue Jan 13, 2022 that may be closed by this pull request
4 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
task Work required that improves the product but is not user facing
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[FEA] Decimal 128 Support: Audit/Cleanup
3 participants