Skip to content

[BUG] get_workspace_size will overflow with long seq_len #1386

Description

@delock

Describe the bug
Under seq_len 2048, BS=8, heads=32, get_workspace_size will return negative value in get_workspace_size

To Reproduce
In function to compute workspace size, when seq_len =2048, maxBatchSize=8, num of heads=32, in the function below:
https://github.com/microsoft/DeepSpeed/blob/master/csrc/transformer/ds_transformer_cuda.cpp#L22
The value of workSpacesize will overflow and get a negative number

Expected behavior
workSpacesize and return value should use size_t to avoid overflow.

ds_report output
Please run ds_report to give us details about your setup.

Screenshots
If applicable, add screenshots to help explain your problem.

System info (please complete the following information):

  • OS: [e.g. Ubuntu 18.04]
  • GPU count and types [e.g. two machines with x8 A100s each]
  • Interconnects (if applicable) [e.g., two machines connected with 100 Gbps IB]
  • Python version
  • Any other relevant info about your setup

Launcher context
Are you launching your experiment with the deepspeed launcher, MPI, or something else?

Docker context
Are you using a specific docker image that you can share?

Additional context
Add any other context about the problem here.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

bugSomething isn't working

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions