mirror of
https://github.com/NVIDIA/nvidia-container-toolkit
synced 2025-06-14 18:39:34 +00:00
Resolve to legacy by default in nvidia-container-runtime-hook
Some checks are pending
Some checks are pending
Signed-off-by: Evan Lezar <elezar@nvidia.com>
This commit is contained in:
parent
de3c37f6b3
commit
153a277002
@ -140,6 +140,7 @@ func (c *hookConfig) assertModeIsLegacy() error {
|
||||
mr := info.NewRuntimeModeResolver(
|
||||
info.WithLogger(&logInterceptor{}),
|
||||
info.WithImage(&c.containerConfig.Image),
|
||||
info.WithDefaultMode(info.RuntimeModeLegacy),
|
||||
)
|
||||
|
||||
mode := mr.ResolveRuntimeMode(c.NVIDIAContainerRuntimeConfig.Mode)
|
||||
|
@ -42,10 +42,17 @@ type modeResolver struct {
|
||||
// TODO: This only needs to consider the requested devices.
|
||||
image *image.CUDA
|
||||
propertyExtractor info.PropertyExtractor
|
||||
defaultMode RuntimeMode
|
||||
}
|
||||
|
||||
type Option func(*modeResolver)
|
||||
|
||||
func WithDefaultMode(defaultMode RuntimeMode) Option {
|
||||
return func(mr *modeResolver) {
|
||||
mr.defaultMode = defaultMode
|
||||
}
|
||||
}
|
||||
|
||||
func WithLogger(logger logger.Interface) Option {
|
||||
return func(mr *modeResolver) {
|
||||
mr.logger = logger
|
||||
@ -65,7 +72,9 @@ func WithPropertyExtractor(propertyExtractor info.PropertyExtractor) Option {
|
||||
}
|
||||
|
||||
func NewRuntimeModeResolver(opts ...Option) RuntimeModeResolver {
|
||||
r := &modeResolver{}
|
||||
r := &modeResolver{
|
||||
defaultMode: RuntimeModeJitCDI,
|
||||
}
|
||||
for _, opt := range opts {
|
||||
opt(r)
|
||||
}
|
||||
@ -106,9 +115,9 @@ func (m *modeResolver) ResolveRuntimeMode(mode string) (rmode RuntimeMode) {
|
||||
|
||||
switch nvinfo.ResolvePlatform() {
|
||||
case info.PlatformNVML, info.PlatformWSL:
|
||||
return RuntimeModeJitCDI
|
||||
return m.defaultMode
|
||||
case info.PlatformTegra:
|
||||
return RuntimeModeCSV
|
||||
}
|
||||
return RuntimeModeJitCDI
|
||||
return m.defaultMode
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user