23 lines
1.2 KiB
Python
23 lines
1.2 KiB
Python
"""Record executable/package/hardware versions without installing anything."""
|
|
import importlib.metadata
|
|
import platform
|
|
from pathlib import Path
|
|
import subprocess
|
|
import sys
|
|
|
|
MODEL = Path('/data/digital-drosophila/models/male-cns-lif/terminal-scope-diagnostic-v1')
|
|
EXP = Path('/data/digital-drosophila/experiments/phase4ab-terminal-scope')
|
|
sys.path.insert(0, str(MODEL))
|
|
import diagnostic
|
|
_, _, _, _, save, digest, _, _ = diagnostic.load_context()
|
|
packages = {}
|
|
for name in ('torch', 'numpy', 'pandas', 'pyarrow', 'scipy', 'PyYAML', 'ninja'):
|
|
try: packages[name] = importlib.metadata.version(name)
|
|
except importlib.metadata.PackageNotFoundError: packages[name] = None
|
|
gpu = subprocess.check_output(['nvidia-smi', '--query-gpu=index,name,uuid,driver_version,memory.total', '--format=csv,noheader'], text=True)
|
|
nvcc = subprocess.check_output(['/usr/local/cuda/bin/nvcc', '--version'], text=True)
|
|
save(EXP/'protocol/environment.json', {'python': sys.version, 'executable': sys.executable,
|
|
'platform': platform.platform(), 'packages': packages, 'GPU_inventory': gpu, 'nvcc': nvcc,
|
|
'installed_or_upgraded_packages': False, 'source_sha256': digest(Path(__file__))})
|
|
print(packages)
|