CUDAPOA_MAX_NODE_EDGES and CUDAPOA_MAX_NODE_ALIGNMENTS with default value of 50 defined in cudapoa_structs.cuh have a big impact on memory usage per POA. Consequently maximum number of POAs residing on GPU can increase by using smaller values for these two parameters. Changing these macros to template parameters allows achieving higher parallelism, particularly for processing long reads.
As a rule of thumb, the value for these parameters should not exceed maximum number of reads per window.
CUDAPOA_MAX_NODE_EDGES
andCUDAPOA_MAX_NODE_ALIGNMENTS
with default value of 50 defined incudapoa_structs.cuh
have a big impact on memory usage per POA. Consequently maximum number of POAs residing on GPU can increase by using smaller values for these two parameters. Changing these macros to template parameters allows achieving higher parallelism, particularly for processing long reads. As a rule of thumb, the value for these parameters should not exceed maximum number of reads per window.