29,938 research outputs found
An Efficient Multiway Mergesort for GPU Architectures
Sorting is a primitive operation that is a building block for countless
algorithms. As such, it is important to design sorting algorithms that approach
peak performance on a range of hardware architectures. Graphics Processing
Units (GPUs) are particularly attractive architectures as they provides massive
parallelism and computing power. However, the intricacies of their compute and
memory hierarchies make designing GPU-efficient algorithms challenging. In this
work we present GPU Multiway Mergesort (MMS), a new GPU-efficient multiway
mergesort algorithm. MMS employs a new partitioning technique that exposes the
parallelism needed by modern GPU architectures. To the best of our knowledge,
MMS is the first sorting algorithm for the GPU that is asymptotically optimal
in terms of global memory accesses and that is completely free of shared memory
bank conflicts.
We realize an initial implementation of MMS, evaluate its performance on
three modern GPU architectures, and compare it to competitive implementations
available in state-of-the-art GPU libraries. Despite these implementations
being highly optimized, MMS compares favorably, achieving performance
improvements for most random inputs. Furthermore, unlike MMS, state-of-the-art
algorithms are susceptible to bank conflicts. We find that for certain inputs
that cause these algorithms to incur large numbers of bank conflicts, MMS can
achieve up to a 37.6% speedup over its fastest competitor. Overall, even though
its current implementation is not fully optimized, due to its efficient use of
the memory hierarchy, MMS outperforms the fastest comparison-based sorting
implementations available to date
Genetic and morphological differences between Sebastes vulpes and S. zonatus (Teleostei: Scorpaeniformes: Scorpaenidae)
The taxonomic status of Sebastes vulpes and S. zonatus were
clarified by comprehensive genetic (amplif ied fragment length polymorphisms [AFLP] and mitochondrial DNA [mtDNA] variation) and morphological analyses on a total of 65 specimens collected from a single locality. A principal coordinate analysis based on 364 AFLP loci separated
the specimens completely into two genetically distinct groups that corresponded to S. vulpes and S. zonatus
according to body coloration and that indicated that they are reproductively isolated species. Significant morphological differences were also evident between the two groups; 1) separation by principal component analysis based on 31 measurements, and 2)separation according to differences in counts of gill rakers and dorsal-fin spines without basal scales, and in the frequencies of specimens with small scales on the lower jaw. Restriction of gene flow between the two groups was also indicated by the pairwise ΦST values estimated from variations in partial sequences from the mtDNA control region, although the minimum spanning network did not result in separation into distinct clades. The latter was likely due to incomplete
lineage sorting between S. vulpes and S. zonatus owing to their recent speciation
- …