M3Drop 0.4.51__py3-none-any.whl → 0.4.52__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.
@@ -187,10 +187,11 @@ def NBumiPearsonResidualsCombinedGPU(
187
187
  n_samples_chunk = int(chunk_total_items * sampling_rate)
188
188
 
189
189
  if n_samples_chunk > 0:
190
- # Index Sampling: Zero VRAM overhead compared to Masking
191
- # Use flatten indices
192
- # [FIXED LINE BELOW] Added int() cast for safety
193
- sample_indices = cupy.random.choice(int(chunk_total_items), size=n_samples_chunk, replace=False)
190
+ # [CRITICAL FIX] Use randint (with replacement) instead of choice(replace=False).
191
+ # 'choice' with replace=False tries to allocate a permutation of the ENTIRE chunk (3GB+).
192
+ # 'randint' only allocates the indices we need (KB).
193
+ # Given the huge population (300M+) and small sample (100k+), collisions are statistically negligible.
194
+ sample_indices = cupy.random.randint(0, int(chunk_total_items), size=n_samples_chunk)
194
195
  else:
195
196
  sample_indices = None
196
197
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: M3Drop
3
- Version: 0.4.51
3
+ Version: 0.4.52
4
4
  Summary: A Python implementation of the M3Drop single-cell RNA-seq analysis tool.
5
5
  Home-page: https://github.com/PragalvhaSharma/m3DropNew
6
6
  Author: Tallulah Andrews
@@ -5,10 +5,10 @@ m3Drop/CoreGPU.py,sha256=6LToLuWyHxX_7sC2z0Xnvy_qqgmpew5DmnCV0PxmTZQ,19785
5
5
  m3Drop/DiagnosticsCPU.py,sha256=l0Imkh3F3zo4ovihUjx7cYWYgzPdztWCN1hcBFO43nY,12943
6
6
  m3Drop/DiagnosticsGPU.py,sha256=bsatHyHszgbufneeJvFvHBTLzDuY006nP2yHPHs8s7M,14389
7
7
  m3Drop/NormalizationCPU.py,sha256=DmqvjcpHwkNZicEb2GBqTDBVyvtBeUSLmFRwRFDk0ms,7458
8
- m3Drop/NormalizationGPU.py,sha256=JmXyRWaN64IrSJscuowmnQEjCjuxbk6gwFIs6wgO-Ps,14835
8
+ m3Drop/NormalizationGPU.py,sha256=IZCRM121C3U_nkKr3Hc5nppGCdXiC3DNvP4Lyc5wvJo,15045
9
9
  m3Drop/__init__.py,sha256=W_TQ9P8_7Tdsa6kDZ6IJKT0FMkX_JFvBqiP821CZIrk,2180
10
- m3drop-0.4.51.dist-info/licenses/LICENSE,sha256=44Iqpp8Fc10Xzd5T7cT9UhO31Qftk3gBiCjtpwilP_k,1074
11
- m3drop-0.4.51.dist-info/METADATA,sha256=YnC3WlbNfbpNbajZqd4ENA6sbrTr5bCIgZ7o1Y7cXOA,5248
12
- m3drop-0.4.51.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
13
- m3drop-0.4.51.dist-info/top_level.txt,sha256=AEULFEFIgFtAwS-KBlIFoYXrqczX_rwqrEcdK46GIrA,7
14
- m3drop-0.4.51.dist-info/RECORD,,
10
+ m3drop-0.4.52.dist-info/licenses/LICENSE,sha256=44Iqpp8Fc10Xzd5T7cT9UhO31Qftk3gBiCjtpwilP_k,1074
11
+ m3drop-0.4.52.dist-info/METADATA,sha256=FU8q5R_RoPad3FAKz9cGHBqgeIa6WC39oOUU5_h_6Us,5248
12
+ m3drop-0.4.52.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
13
+ m3drop-0.4.52.dist-info/top_level.txt,sha256=AEULFEFIgFtAwS-KBlIFoYXrqczX_rwqrEcdK46GIrA,7
14
+ m3drop-0.4.52.dist-info/RECORD,,