@@ -1529,13 +1529,27 @@ def encode(
1529
1529
)
1530
1530
with core .ParallelWorkManager (worker_processes , progress_config ) as pwm :
1531
1531
if "call_genotype" in conversion_spec .columns :
1532
- logger .info (f"Submit encode call_genotypes in { len (slices )} slices" )
1532
+ arrays = [
1533
+ sgvcf .root ["call_genotype" ],
1534
+ sgvcf .root ["call_genotype_phased" ],
1535
+ sgvcf .root ["call_genotype_mask" ],
1536
+ ]
1537
+ min_mem = sum (array .blocks [0 ].nbytes for array in arrays )
1538
+ logger .info (
1539
+ f"Submit encode call_genotypes in { len (slices )} slices. "
1540
+ f"Min per-worker mem={ display_size (min_mem )} "
1541
+ )
1533
1542
for start , stop in slices :
1534
1543
pwm .submit (sgvcf .encode_genotypes_slice , pcvcf , start , stop )
1535
1544
1536
1545
for col in chunked_2d :
1537
1546
if col .vcf_field is not None :
1538
- logger .info (f"Submit encode { col .name } in { len (slices )} slices" )
1547
+ array = sgvcf .root [col .name ]
1548
+ min_mem = array .blocks [0 ].nbytes
1549
+ logger .info (
1550
+ f"Submit encode { col .name } in { len (slices )} slices. "
1551
+ f"Min per-worker mem={ display_size (min_mem )} "
1552
+ )
1539
1553
for start , stop in slices :
1540
1554
pwm .submit (
1541
1555
sgvcf .encode_column_slice , pcvcf , col , start , stop
0 commit comments