Skip to main content

Dynamia ppu-vgpu-device-plugin Chart 0.0.5

Release date: 2026-10-23

VersionPreviousThis release
Chart0.0.40.0.5
appVersion1.0.51.0.6

HAMi Enterprise compatibility​

If PPU Device Plugin 1.0.5 already schedules workloads and handles authorization correctly with the existing HAMi Enterprise, upgrading only the plugin to 1.0.6 can retain that Enterprise version. This release does not change the base scheduling or authorization interfaces and does not replace the bundled PPU-HAMi-core. The base scheduling and authorization version requirements in the table below are existing requirements.

If upgrading only the plugin while keeping the existing scheduling policy, explicitly set plugin.topologyScore.enabled: false to preserve the previous behavior in which score reporting was disabled. Chart 0.0.5 enables scoring by default. Score calculation depends on driver interfaces, and a failure blocks device-registration updates in that pass. To use the combined binpack,topology-aware policy, upgrade Enterprise to a version with the relevant fixes and enable scoring.

Feature or use caseMinimum usable HAMi Enterprise versionCompatibility requirements and upgrade conclusion
PPU scheduling, memory/compute partitioning, and authorization delivery and renewal with legacy UUID- or model-based licensesv2.9.0-rc2The scheduler must recognize the existing license and publish a valid hami.io/alibaba-license to the node. Deployments meeting these conditions do not need an Enterprise upgrade solely for this plugin update.
Instance authorization using the deviceInstances formatv2.10.0-r0If the authorization worked with plugin 1.0.5, it remains usable after upgrading only the plugin to 1.0.6; neither Enterprise nor the authorization must be changed. v2.10.0-r0 is the existing compatibility requirement for this format; this release does not raise the version floor.
PPU topology selection with the combined binpack,topology-aware policyA version later than v2.10.0-r4 that includes the relevant fixesThe compatible scheduler must include PPU combined-policy recognition and the all-zero-score selection fix. Deployments on v2.10.0-r4 must upgrade to a later version containing both fixes before enabling this policy. This does not require a general upgrade for base scheduling.

The version floors stated above are based on checks of released artifacts and interface implementations; they do not mean that this release was tested on physical PPU hardware with every compatible version.

Changes​

Chart changes​

  • Adds plugin.topologyScore.enabled, defaulting to true. After upgrading, the plugin reports node topology scores by default. Set it to false to disable reporting. This switch does not change the workload scheduling policy.

Application changes​

  • Fixes missing, invalid, or incomplete topology scores so they can be regenerated. The plugin checks the node score and regenerates it as needed even when the device list has not changed.
  • Fixes a local-cache issue that could cause subsequent registration to be skipped after score calculation or node-annotation writes failed. The plugin retries device registration and score reporting based on actual node state.
  • Removes stale scores automatically when scoring is disabled or the node no longer has registrable devices, preventing the scheduler from reading outdated information.

Upgrade guidance​

  • Upgrade the Chart from 0.0.4 to 0.0.5, retaining existing resource names, node selection, and device-split configuration. The plugin and monitor share image.repository and image.tag; when image.tag is empty, both use ghcr.io/dynamia-ai/ppu-device-plugin:v1.0.6. If the previous configuration pins v1.0.5, update it to v1.0.6 or clear it to receive the application fixes. Prepare the corresponding v1.0.6 image first when using a private registry.
  • Decide before upgrading whether to enable topology scoring. Keeping the default enables reporting; explicitly set plugin.topologyScore.enabled: false in upgrade values if you do not intend to use it yet. After upgrading, check plugin and monitor DaemonSet rollouts and confirm the new Pods' actual images and the plugin's ENABLE_TOPOLOGY_SCORE value.
  • When scoring is enabled, verify that hami.io/node-alibaba-score on each node contains the current PPU UUIDs and inter-card scores. If the driver API causes score calculation to fail, device registration and score updates for that pass are not committed. Check plugin logs and driver interfaces; disable scoring if necessary to restore a registration flow that does not depend on scores.
  • Before using topology-aware scheduling, confirm that HAMi Enterprise meets the combined-policy requirements in the compatibility table, then set hami.io/gpu-scheduler-policy: binpack,topology-aware on workloads. Validate the new scheduling result with a multi-card workload that requests fewer cards than the number available. An all-zero score or equal scores for all combinations does not demonstrate topology preference or improved performance.
  • The PPU-HAMi-core bundled with this release is unchanged from the previous release. No runtime-format migration or shared-state cleanup is required. The topology-scoring fixes do not require a universal recreation of existing workloads; topology-aware policy takes effect for new or rescheduled workloads.

See the Chart and appVersion mapping or the software center.

Values reference​

The following parameter descriptions are taken from the README bundled with the Chart 0.0.5 release package and are preserved as published. Use this version's values.yaml as the source of default configuration.

Expand values table
KeyTypeDefaultDescription
commonAnnotationsobject{}
commonLabelsobject{}
config.createbooltrue
config.data.alibaba.defaultCoresint0
config.data.alibaba.defaultGPUNumint1
config.data.alibaba.defaultMemoryint0
config.data.alibaba.deviceCoreScalingfloat1
config.data.alibaba.deviceMemoryScalingfloat1
config.data.alibaba.deviceSplitCountint10
config.data.alibaba.gpuCorePolicystring"default"
config.data.alibaba.memoryFactorint1
config.data.alibaba.overwriteEnvboolfalse
config.data.alibaba.resourceCoreNamestring"alibaba.com/gpu-core"
config.data.alibaba.resourceCountNamestring"alibaba.com/ppu"
config.data.alibaba.resourceMemoryNamestring"alibaba.com/ppu-memory"
config.data.alibaba.resourceMemoryPercentageNamestring"alibaba.com/ppu-memory-percentage"
config.data.alibaba.runtimeClassNamestring""
config.existingConfigMapNamestring""
fullnameOverridestring"ppu-device-plugin"
image.pullPolicystring"IfNotPresent"
image.pullSecretslist[]
image.repositorystring"ghcr.io/dynamia-ai/ppu-device-plugin"
image.tagstring""
monitor.enabledbooltrue
monitor.resourcesobject{}
monitor.service.enabledbooltrue
monitor.service.nodePortint31992
monitor.service.portint31992
monitor.service.typestring"NodePort"
nameOverridestring"ppu-device-plugin"
namespaceOverridestring"hami-system"
nodeSelector.alibabappustring"on"
plugin.enabledbooltrue
plugin.resources.limits.cpustring"500m"
plugin.resources.limits.memorystring"512Mi"
plugin.resources.requests.cpustring"100m"
plugin.resources.requests.memorystring"128Mi"
plugin.topologyScore.enabledbooltrue
priorityClassNamestring"system-node-critical"
tolerations[0].keystring"CriticalAddonsOnly"
tolerations[0].operatorstring"Exists"
tolerations[1].effectstring"NoSchedule"
tolerations[1].operatorstring"Exists"