python312Packages.pynvml: 11.5.3 -> 12.0.0 (#375418)
This commit is contained in:
@@ -1,17 +0,0 @@
|
||||
diff --git a/pynvml/nvml.py b/pynvml/nvml.py
|
||||
index 56d908f..1de0b97 100644
|
||||
--- a/pynvml/nvml.py
|
||||
+++ b/pynvml/nvml.py
|
||||
@@ -1475,7 +1475,11 @@ def _LoadNvmlLibrary():
|
||||
nvmlLib = CDLL(os.path.join(os.getenv("ProgramFiles", "C:/Program Files"), "NVIDIA Corporation/NVSMI/nvml.dll"))
|
||||
else:
|
||||
# assume linux
|
||||
- nvmlLib = CDLL("libnvidia-ml.so.1")
|
||||
+ try:
|
||||
+ nvmlLib = CDLL("libnvidia-ml.so.1")
|
||||
+ except OSError:
|
||||
+ # assume NixOS
|
||||
+ nvmlLib = CDLL("@driverLink@/lib/libnvidia-ml.so.1")
|
||||
except OSError as ose:
|
||||
_nvmlCheckReturn(NVML_ERROR_LIBRARY_NOT_FOUND)
|
||||
if (nvmlLib == None):
|
||||
@@ -3,63 +3,48 @@
|
||||
buildPythonPackage,
|
||||
cudaPackages,
|
||||
fetchFromGitHub,
|
||||
substituteAll,
|
||||
addDriverRunpath,
|
||||
setuptools,
|
||||
pytestCheckHook,
|
||||
versioneer,
|
||||
nvidia-ml-py,
|
||||
pynvml,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pynvml";
|
||||
version = "11.5.3";
|
||||
version = "12.0.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gpuopenanalytics";
|
||||
repo = "pynvml";
|
||||
tag = version;
|
||||
hash = "sha256-8NkYBRpcW3dvxVc6z17TMRPqA0YK/J/CdjuqgdcTdy8=";
|
||||
hash = "sha256-bfES6QqL9DO7rmQ3btXxVzW0KlL0eHyUvYJVeijymBk=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./0001-locate-libnvidia-ml.so.1-on-NixOS.patch;
|
||||
inherit (addDriverRunpath) driverLink;
|
||||
})
|
||||
];
|
||||
|
||||
# unvendor versioneer
|
||||
postPatch = ''
|
||||
rm versioneer.py
|
||||
'';
|
||||
|
||||
build-system = [
|
||||
setuptools
|
||||
versioneer
|
||||
];
|
||||
|
||||
dependencies = [ nvidia-ml-py ];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"pynvml"
|
||||
"pynvml.smi"
|
||||
"pynvml_utils"
|
||||
];
|
||||
|
||||
nativeCheckInputs = [ pytestCheckHook ];
|
||||
|
||||
# OSError: /run/opengl-driver/lib/libnvidia-ml.so.1: cannot open shared object file: No such file or directory
|
||||
doCheck = false;
|
||||
|
||||
passthru.tests.tester-nvmlInit = cudaPackages.writeGpuTestPython { libraries = [ pynvml ]; } ''
|
||||
import pynvml
|
||||
from pynvml.smi import nvidia_smi # noqa: F401
|
||||
|
||||
print(f"{pynvml.nvmlInit()=}")
|
||||
from pynvml_utils import nvidia_smi # noqa: F401
|
||||
nvsmi = nvidia_smi.getInstance()
|
||||
print(nvsmi.DeviceQuery('memory.free, memory.total'))
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Python bindings for the NVIDIA Management Library";
|
||||
description = "Unofficial Python bindings for the NVIDIA Management Library";
|
||||
homepage = "https://github.com/gpuopenanalytics/pynvml";
|
||||
changelog = "https://github.com/gpuopenanalytics/pynvml?tab=readme-ov-file#release-notes";
|
||||
license = lib.licenses.bsd3;
|
||||
maintainers = [ lib.maintainers.bcdarwin ];
|
||||
};
|
||||
|
||||
@@ -11,7 +11,6 @@
|
||||
nvidia-ml-py,
|
||||
psutil,
|
||||
pydantic,
|
||||
pynvml,
|
||||
pytestCheckHook,
|
||||
pythonOlder,
|
||||
rich,
|
||||
@@ -75,7 +74,6 @@ buildPythonPackage rec {
|
||||
numpy
|
||||
psutil
|
||||
pydantic
|
||||
pynvml
|
||||
rich
|
||||
] ++ lib.optionals stdenv.hostPlatform.isLinux [ nvidia-ml-py ];
|
||||
|
||||
|
||||
@@ -25,7 +25,6 @@
|
||||
uvicorn,
|
||||
pydantic,
|
||||
aioprometheus,
|
||||
pynvml,
|
||||
openai,
|
||||
pyzmq,
|
||||
tiktoken,
|
||||
@@ -149,7 +148,6 @@ buildPythonPackage rec {
|
||||
++ aioprometheus.optional-dependencies.starlette
|
||||
++ lib.optionals cudaSupport [
|
||||
cupy
|
||||
pynvml
|
||||
];
|
||||
|
||||
dontUseCmakeConfigure = true;
|
||||
|
||||
Reference in New Issue
Block a user