google / google/gvisor

Relax NVIDIA ABI version check for version ranges with no changes

Open
#10,628 4 comments 0 reactions 0 assignees View on GitHub
area: gpu type: enhancement
Dominant language
Go
Stars
19.3k
Forks
2k
Avg merge
3d 5h
Merged PRs (30d)
264

Description

### Description

Currently, `nvproxy`'s ABI version tree describes the ABI of each individual version number. This means that users need to have exactly the right driver version in order to use `runsc`. This hampers usability of nvproxy; see #10605 and #10624 for recent examples.

I propose that `nvproxy`'s logic is relaxed for version *ranges* with no ABI differences. In other words, if the ABI has not changed from version `1.20.30` to version `1.40.50`, then when running on a host with driver version `1.25.10`, `nvproxy` should detect that this version falls in the middle of the range and therefore it can automatically decide to use its definition for ABI version `1.40.50`.

This of course assumes that every version in the middle of this range indeed doesn't have any ABI changes. Therefore, in order to support this feature, the first task is to retroactively verify that this is the case between existing supported nvproxy ABI versions. For example, if there was any ABI change that was later reverted in the middle of the range, the nvproxy ABI version tree needs to have this range split to reflect the reality. An NVIDIA driver diffing tool should help here.

### Is this feature related to a specific bug?

N/A

### Do you have a specific solution in mind?

See above.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.