M3Drop 0.4.47__py3-none-any.whl → 0.4.49__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- m3Drop/DiagnosticsGPU.py +3 -2
- m3Drop/NormalizationCPU.py +9 -1
- m3Drop/NormalizationGPU.py +10 -1
- {m3drop-0.4.47.dist-info → m3drop-0.4.49.dist-info}/METADATA +1 -1
- m3drop-0.4.49.dist-info/RECORD +14 -0
- m3drop-0.4.47.dist-info/RECORD +0 -14
- {m3drop-0.4.47.dist-info → m3drop-0.4.49.dist-info}/WHEEL +0 -0
- {m3drop-0.4.47.dist-info → m3drop-0.4.49.dist-info}/licenses/LICENSE +0 -0
- {m3drop-0.4.47.dist-info → m3drop-0.4.49.dist-info}/top_level.txt +0 -0
m3Drop/DiagnosticsGPU.py
CHANGED
|
@@ -231,7 +231,8 @@ def NBumiCheckFitFSGPU(
|
|
|
231
231
|
p_is_chunk_gpu # Output
|
|
232
232
|
)
|
|
233
233
|
|
|
234
|
-
|
|
234
|
+
# [MEMORY FIX] Use copy=False to prevent doubling memory usage
|
|
235
|
+
cp.nan_to_num(p_is_chunk_gpu, copy=False, nan=0.0, posinf=1.0, neginf=0.0)
|
|
235
236
|
|
|
236
237
|
row_ps_gpu += p_is_chunk_gpu.sum(axis=0)
|
|
237
238
|
col_ps_gpu[current_row:end_row] = p_is_chunk_gpu.sum(axis=1)
|
|
@@ -275,7 +276,7 @@ def NBumiCompareModelsGPU(
|
|
|
275
276
|
stats,
|
|
276
277
|
mask_filename=mask_filename,
|
|
277
278
|
mode=mode,
|
|
278
|
-
manual_target=manual_target,
|
|
279
|
+
manual_target=manual_target,
|
|
279
280
|
phase_label="Phase [1/3]",
|
|
280
281
|
desc_label="Fitting Basic Model (Virtual)..."
|
|
281
282
|
)
|
m3Drop/NormalizationCPU.py
CHANGED
|
@@ -122,9 +122,17 @@ def NBumiPearsonResidualsCombinedCPU(
|
|
|
122
122
|
adata_out_approx = anndata.AnnData(obs=adata_in.obs, var=filtered_var)
|
|
123
123
|
adata_out_approx.write_h5ad(output_filename_approx, compression=None)
|
|
124
124
|
|
|
125
|
+
# --- CHUNK SIZE FIX ---
|
|
125
126
|
# Calculate appropriate H5 storage chunks
|
|
126
127
|
storage_chunk_rows = int(1_000_000_000 / (ng_filtered * 8))
|
|
127
|
-
|
|
128
|
+
|
|
129
|
+
# [CRITICAL FIX] Clamp chunk size to total rows (nc)
|
|
130
|
+
if storage_chunk_rows > nc:
|
|
131
|
+
storage_chunk_rows = nc
|
|
132
|
+
|
|
133
|
+
if storage_chunk_rows < 1:
|
|
134
|
+
storage_chunk_rows = 1
|
|
135
|
+
# ----------------------
|
|
128
136
|
|
|
129
137
|
# Open both files for writing simultaneously
|
|
130
138
|
with h5py.File(output_filename_full, 'a') as f_full, h5py.File(output_filename_approx, 'a') as f_approx:
|
m3Drop/NormalizationGPU.py
CHANGED
|
@@ -101,8 +101,17 @@ def NBumiPearsonResidualsCombinedGPU(
|
|
|
101
101
|
adata_out_approx = anndata.AnnData(obs=adata_in.obs, var=filtered_var)
|
|
102
102
|
adata_out_approx.write_h5ad(output_filename_approx, compression=None)
|
|
103
103
|
|
|
104
|
+
# --- CHUNK SIZE FIX ---
|
|
105
|
+
# Calculate rows needed to fill ~1GB
|
|
104
106
|
storage_chunk_rows = int(1_000_000_000 / (ng_filtered * 8))
|
|
105
|
-
|
|
107
|
+
|
|
108
|
+
# [CRITICAL FIX] Clamp chunk size to total rows (nc)
|
|
109
|
+
if storage_chunk_rows > nc:
|
|
110
|
+
storage_chunk_rows = nc
|
|
111
|
+
|
|
112
|
+
if storage_chunk_rows < 1:
|
|
113
|
+
storage_chunk_rows = 1
|
|
114
|
+
# ----------------------
|
|
106
115
|
|
|
107
116
|
# Open both files for writing simultaneously
|
|
108
117
|
with h5py.File(output_filename_full, 'a') as f_full, h5py.File(output_filename_approx, 'a') as f_approx:
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
m3Drop/ControlDeviceCPU.py,sha256=8P-hxd4thc2wSeon73b9rz3clIGkE3x0cEE82RiGFds,8880
|
|
2
|
+
m3Drop/ControlDeviceGPU.py,sha256=4nzPtgyV0RsEOeezwCVJ7oyDOsp9-dRVLczlduUocpU,9143
|
|
3
|
+
m3Drop/CoreCPU.py,sha256=csRg5TLQx1Sup7k3lDJm9OO5Oe5-1aC3u_6ldE_GIX8,18679
|
|
4
|
+
m3Drop/CoreGPU.py,sha256=6LToLuWyHxX_7sC2z0Xnvy_qqgmpew5DmnCV0PxmTZQ,19785
|
|
5
|
+
m3Drop/DiagnosticsCPU.py,sha256=l0Imkh3F3zo4ovihUjx7cYWYgzPdztWCN1hcBFO43nY,12943
|
|
6
|
+
m3Drop/DiagnosticsGPU.py,sha256=bsatHyHszgbufneeJvFvHBTLzDuY006nP2yHPHs8s7M,14389
|
|
7
|
+
m3Drop/NormalizationCPU.py,sha256=DmqvjcpHwkNZicEb2GBqTDBVyvtBeUSLmFRwRFDk0ms,7458
|
|
8
|
+
m3Drop/NormalizationGPU.py,sha256=Kl5QvR4HCSgooUOf97-nu53J6wf3apdNvc3BFlTFiEM,7264
|
|
9
|
+
m3Drop/__init__.py,sha256=W_TQ9P8_7Tdsa6kDZ6IJKT0FMkX_JFvBqiP821CZIrk,2180
|
|
10
|
+
m3drop-0.4.49.dist-info/licenses/LICENSE,sha256=44Iqpp8Fc10Xzd5T7cT9UhO31Qftk3gBiCjtpwilP_k,1074
|
|
11
|
+
m3drop-0.4.49.dist-info/METADATA,sha256=aUj_G6pHzrSKr70GwbOptvcAP7HCGviG8hYjq6OiqMk,5248
|
|
12
|
+
m3drop-0.4.49.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
|
|
13
|
+
m3drop-0.4.49.dist-info/top_level.txt,sha256=AEULFEFIgFtAwS-KBlIFoYXrqczX_rwqrEcdK46GIrA,7
|
|
14
|
+
m3drop-0.4.49.dist-info/RECORD,,
|
m3drop-0.4.47.dist-info/RECORD
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
m3Drop/ControlDeviceCPU.py,sha256=8P-hxd4thc2wSeon73b9rz3clIGkE3x0cEE82RiGFds,8880
|
|
2
|
-
m3Drop/ControlDeviceGPU.py,sha256=4nzPtgyV0RsEOeezwCVJ7oyDOsp9-dRVLczlduUocpU,9143
|
|
3
|
-
m3Drop/CoreCPU.py,sha256=csRg5TLQx1Sup7k3lDJm9OO5Oe5-1aC3u_6ldE_GIX8,18679
|
|
4
|
-
m3Drop/CoreGPU.py,sha256=6LToLuWyHxX_7sC2z0Xnvy_qqgmpew5DmnCV0PxmTZQ,19785
|
|
5
|
-
m3Drop/DiagnosticsCPU.py,sha256=l0Imkh3F3zo4ovihUjx7cYWYgzPdztWCN1hcBFO43nY,12943
|
|
6
|
-
m3Drop/DiagnosticsGPU.py,sha256=z5BMOZNo_ruMBaDWJIE6zWhMUtf2ItY5Vcgu4N9lbok,14321
|
|
7
|
-
m3Drop/NormalizationCPU.py,sha256=Mm8VzWDu-NONbp-ngAt4PLjCKAGc7gJZKf-Yd-U95r0,7255
|
|
8
|
-
m3Drop/NormalizationGPU.py,sha256=1XRDZhNVkIbQMv_ggNoNEnIxRMY1NHDjOtOq4QGVRwY,7011
|
|
9
|
-
m3Drop/__init__.py,sha256=W_TQ9P8_7Tdsa6kDZ6IJKT0FMkX_JFvBqiP821CZIrk,2180
|
|
10
|
-
m3drop-0.4.47.dist-info/licenses/LICENSE,sha256=44Iqpp8Fc10Xzd5T7cT9UhO31Qftk3gBiCjtpwilP_k,1074
|
|
11
|
-
m3drop-0.4.47.dist-info/METADATA,sha256=z1THnYFMNjSObhg-QIGn61c1-lyqlXZiyAtcSLfE-fc,5248
|
|
12
|
-
m3drop-0.4.47.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
|
|
13
|
-
m3drop-0.4.47.dist-info/top_level.txt,sha256=AEULFEFIgFtAwS-KBlIFoYXrqczX_rwqrEcdK46GIrA,7
|
|
14
|
-
m3drop-0.4.47.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|