-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathpixi.toml
More file actions
98 lines (79 loc) · 4.3 KB
/
pixi.toml
File metadata and controls
98 lines (79 loc) · 4.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
[workspace]
authors = ["adiezsanchez <adiez.biotech@gmail.com>"] # project author metadata
channels = ["conda-forge", "pytorch", "nvidia"] # conda channels to search for packages
name = "brain_nuc_stardist" # project name
version = "0.1.0" # project version
platforms = ["linux-64", "win-64", "osx-arm64"] # supported OS/architectures
# -------------------------
# Activation-level environment (applies to all tasks)
# -------------------------
[activation.env]
# Applies to Ubuntu
LD_LIBRARY_PATH = "/usr/lib/x86_64-linux-gnu:$PIXI_PROJECT_ROOT/.pixi/envs/default/lib:$LD_LIBRARY_PATH"
# macOS uses DYLD_LIBRARY_PATH instead of LD_LIBRARY_PATH
DYLD_LIBRARY_PATH = "$PIXI_PROJECT_ROOT/.pixi/envs/default/lib:$DYLD_LIBRARY_PATH"
TF_CPP_MIN_LOG_LEVEL = "3" # suppress TensorFlow info/warnings/errors
TF_TRT_DISABLE = "1" # disables TensorRT probing warnings
# -------------------------
# Tasks
# -------------------------
[tasks]
fix_opencl = "scripts/fix_opencl.sh"
[tasks.lab]
cmd = "jupyter lab"
[tasks.test_nuclei]
cmd = "python -m pixi_tests.test_nuclei"
[tasks.test_gpu]
cmd = "python pixi_tests/test_gpu.py"
[tasks.test]
cmd = "pixi run test_gpu && pixi run test_nuclei && pixi run lab"
# -------------------------
# Cross-platform dependencies
# -------------------------
[dependencies]
apoc-backend = "*" # fast GPU classifiers (APOC)
czifile = "*" # read Zeiss CZI images
edt = "*" # Euclidean distance transforms
ipykernel = "*" # Jupyter kernel support
ipython = "*" # interactive shell
jupyterlab = "*" # Jupyter environment
napari = "*" # image viewer
nbformat = "*" # notebook parsing
nd2 = "*" # Nikon ND2 image reader
plotly = "*" # plotting library
pyclesperanto-prototype = "*" # GPU image processing (OpenCL)
pyqt = "*" # GUI backend for napari
python = "==3.10" # freeze Python version
setuptools = "<81" # pin to avoid pkg_resources removal
# -------------------------
# Platform-specific deps
# -------------------------
[target.win-64.dependencies]
cudatoolkit = "==11.2" # CUDA runtime for Windows
cudnn = "8.1.*" # cuDNN for Windows
stardist = "==0.8.5" # StarDist for nuclei segmentation
csbdeep = "==0.8.1" # CARE backend for StarDist
numba = "==0.59.1" # required for stardist/CSBDeep
numpy = "==1.26.4"
reikna = "==0.8.0" # GPU array lib sometimes used
[target.linux-64.dependencies]
ocl-icd-system = "*" # ICD to discover vendor OpenCL implementations
cudatoolkit = "==11.2" # CUDA runtime (Linux env-local)
cudnn = "8.1.*" # cuDNN (Linux env-local)
[target.osx-arm64.dependencies]
ocl_icd_wrapper_apple = "*" # ICD to discover vendor OpenCL implementations
# -------------------------
# PyPI deps (per platform)
# -------------------------
[target.win-64.pypi-dependencies]
tensorflow = "==2.10.1" # last Windows GPU build (CUDA 11.2)
[target.linux-64.pypi-dependencies]
tensorflow = "==2.10.1" # GPU-enabled build for Linux
stardist = "==0.8.5"
csbdeep = "==0.8.1"
[target.osx-arm64.pypi-dependencies]
tensorflow-macos = "==2.16.2" # stable on M1/M2
tensorflow-metal = "==1.2.0" # GPU acceleration
keras = ">=3.0.0" # force compatibility with TF 2.16
stardist = "==0.9.1" # latest compatible with Apple Silicon
csbdeep = "==0.8.1" # CARE backend