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

ListAndWatch failed when managing large memory GPU such as NVIDIA Telas V100 #19

Open
zzr93 opened this issue Nov 26, 2021 · 16 comments
Open
Assignees

Comments

@zzr93
Copy link

zzr93 commented Nov 26, 2021

This issue is an extension of #18

What happened:
Applying volcano-device-plugin on a server using 8*V100 GPU, but get volcano.sh/gpu-memory:0 when describe nodes:
6481637913961_ pic
Same situation did not occur when using T4 or P4.
Tracing kubelet logs, found following error message:
6491637914696_ pic_hd
seems like sync message is too large.

What caused this bug:
volcano-device-plugin mock GPUs into a device list(every device in this list is considered as a 1MB memory block), so that different workloads can share one GPU through kubernetes device plugin mechanism. When large memory GPU such as V100 is implemented, the size of device list exceeds the bound, and ListAndWatch failed as a result.

Solutions:
The key is to minimize the size of the device list, so we can consider each device as a 10MB memory block and reform the whole bookkeeping process according to this assumption. This accuracy is enough for almost all production environments.

@Thor-wl Thor-wl added bug Something isn't working bug/import-soon and removed bug Something isn't working labels Nov 26, 2021
@Thor-wl
Copy link
Contributor

Thor-wl commented Nov 26, 2021

Thanks for your report and debug. The debug is meaningful and we will fix it as soon as possible.

@Thor-wl Thor-wl self-assigned this Nov 26, 2021
@Thor-wl
Copy link
Contributor

Thor-wl commented Nov 30, 2021

Request more voice about how much should be considered as a block(default is 1M) which is suitable for all specified GPU cards.

@zzr93
Copy link
Author

zzr93 commented Dec 1, 2021

100MB per block may work fine. Inference services usually cost hundreds to thousands MB memory(train services usually cost much more than this scale), so we actually do not care memory fragments which are less than 100MB.

@Thor-wl
Copy link
Contributor

Thor-wl commented Dec 2, 2021

100MB per block may work fine. Inference services usually cost hundreds to thousands MB memory(train services usually cost much more than this scale), so we actually do not care memory fragments which are less than 100MB.

IC. I'll take this issue to the weekly meeting for discussion. Are you glad to share your ideas in the meeting?

@zzr93
Copy link
Author

zzr93 commented Dec 2, 2021

100MB per block may work fine. Inference services usually cost hundreds to thousands MB memory(train services usually cost much more than this scale), so we actually do not care memory fragments which are less than 100MB.

IC. I'll take this issue to the weekly meeting for discussion. Are you glad to share your ideas in the meeting?

My pleasure, I will be in.

@Thor-wl
Copy link
Contributor

Thor-wl commented Dec 3, 2021

See you 15:00.

@jasonliu747
Copy link
Member

jasonliu747 commented Dec 3, 2021

See you 15:00.

Awww that's sweet.🥺

@lakerhu999
Copy link

Is this issue resolved at present?

@Thor-wl
Copy link
Contributor

Thor-wl commented Jan 18, 2022

Is this issue resolved at present?

Not yet. We are considering for a graceful way to make the fix without modifing the gRPC directly.

@lakerhu999
Copy link

Any update for this issue?

@Thor-wl
Copy link
Contributor

Thor-wl commented Feb 16, 2022

Any update for this issue?

Not yet now. I'm sorry for developing another feature recently. Will fix that ASAP.

@lakerhu999
Copy link

It's still a bug in our product as same as this issue, if fixed, please close this issue.

@Thor-wl
Copy link
Contributor

Thor-wl commented Mar 1, 2022

It's still a bug in our product as same as this issue, if fixed, please close this issue.

OK, it's still on the way. I'll close the issue after the bug is fixed.

@pauky
Copy link

pauky commented Apr 11, 2022

How is this going?

@shinytang6
Copy link
Member

#22 may resolve this issue

@XueleiQiao
Copy link

我们这个最新的镜像公网上有发布吗?@shinytang6

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

No branches or pull requests