Searcharxiv⌕ Search

arXiv subjects

Dennis Shasha

Publications and source records attributed to Dennis Shasha.

20 records · Page 2Linked to original sources

Locality Optimization for Data Parallel Programs

Productivity languages such as NumPy and Matlab make it much easier to implement data-intensive numerical algorithms. However, these languages can be intolerably slow for programs that don't map well to their built-in primitives. In this paper, we discuss locality optimizations for our system Parakeet, a just-in-time compiler and runtime system for an array-oriented subset of Python. Parakeet dynamically compiles whole user functions to high performance multi-threaded native code. Parakeet makes extensive use of the classic data parallel operators Map, Reduce, and Scan. We introduce a new set of data parallel operators,TiledMap, TiledReduce, and TiledScan, that break up their computations into local pieces of bounded size so as better to make use of small fast memories. We introduce a novel tiling transformation to generate tiled operators automatically. Applying this transformation once tiles the program for cache, and applying it again enables tiling for registers. The sizes for cache tiles are left unspecified until runtime, when an autotuning search is performed. Finally, we evaluate our optimizations on benchmarks and show significant speedups on programs that exhibit data locality.

cs.PL↗

DNA Hash Pooling and its Applications

In this paper we describe a new technique for the comparison of populations of DNA strands. Comparison is vital to the study of ecological systems, at both the micro and macro scales. Existing methods make use of DNA sequencing and cloning, which can prove costly and time consuming, even with current sequencing techniques. Our overall objective is to address questions such as: (i) (Genome detection) Is a known genome sequence present, at least in part, in an environmental sample? (ii) (Sequence query) Is a specific fragment sequence present in a sample? (iii) (Similarity discovery) How similar in terms of sequence content are two unsequenced samples? We propose a method involving multiple filtering criteria that result in "pools" of DNA of high or very high purity. Because our method is similar in spirit to hashing in computer science, we call it DNA hash pooling. To illustrate this method, we describe protocols using pairs of restriction enzymes. The in silico empirical results we present reflect a sensitivity to experimental error. Our method will normally be performed as a filtering step prior to sequencing in order to reduce the amount of sequencing required (generally by a factor of 10 or more). Even as sequencing becomes cheaper, an order of magnitude remains important.

q-bio.BM↗