Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Todd A. Anderson 0001

dblp:90/4916-1 · DBLP profile ↗
← Back
8ranked-venue papers
4as first author
0since 2021 · last 2017
0000-0002-5739-6320ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 4 · 2 first-authorSystems, architecture and hardware · 3 · 1 first-authorDatabases, data management, data science and information retrieval · 1 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
2 papers
Storage systems · 59% Distributed systems · 41%
Databases, data mining, and information retrieval
1 paper
Transaction processing and concurrency control · 100%

Topics — the 6 heaviest of 8, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Storage systems › storage architecture
storage model
0.011999
An Application-Aware Data Storage Model · USENIX ATC, General Track 1999
Transaction processing and concurrency control › serializability
global serializability
0.011998
Replication, Consistency, and Practicality: Are These Mutually Exclusive? · SIGMOD Conference 1998
Transaction processing and concurrency control
serializability
0.011998
Replication, Consistency, and Practicality: Are These Mutually Exclusive? · SIGMOD Conference 1998
Distributed systems
replication
0.011998
Replication, Consistency, and Practicality: Are These Mutually Exclusive? · SIGMOD Conference 1998
Distributed systems
fault tolerance
0.011998
Replication, Consistency, and Practicality: Are These Mutually Exclusive? · SIGMOD Conference 1998
Distributed systems › transaction processing
transaction atomicity
0.011998
Replication, Consistency, and Practicality: Are These Mutually Exclusive? · SIGMOD Conference 1998

Methods — techniques the papers use, named apart from their topics

simulation · 0.0
YearPublicationVenuePosition
2017 Parallelizing Julia with a Non-Invasive DSL
abstract
Computational scientists often prototype software using productivity languages that offer high-level programming abstractions. When higher performance is needed, they are obliged to rewrite their code in a lower-level efficiency language. Different solutions have been proposed to address this trade-off between productivity and efficiency. One promising approach is to create embedded domain-specific languages that sacrifice generality for productivity and performance, but practical experience with DSLs points to some road blocks preventing widespread adoption. This paper proposes a non-invasive domain-specific language that makes as few visible changes to the host programming model as possible. We present ParallelAccelerator, a library and compiler for high-level, high-performance scientific computing in Julia. ParallelAccelerator's programming model is aligned with existing Julia programming idioms. Our compiler exposes the implicit parallelism in high-level array-style programs and compiles them to fast, parallel native code. Programs can also run in "library-only" mode, letting users benefit from the full Julia environment and libraries. Our results show encouraging performance improvements with very few changes to source code required. In particular, few to no additional type annotations are necessary.
Todd A. Anderson 0001, Hai Liu 0012, Lindsey Kuper, Ehsan Totoni, Jan Vitek, Tatiana Shpeisman
ECOOP1
2017 HPAT: high performance analytics with scripting ease-of-use
abstract
Big data analytics requires high programmer productivity and high performance simultaneously on large-scale clusters. However, current big data analytics frameworks (e.g. Apache Spark) have prohibitive runtime overheads since they are library-based. We introduce a novel auto-parallelizing compiler approach that exploits the characteristics of the data analytics domain such as the map/reduce parallel pattern and is robust, unlike previous auto-parallelization methods. Using this approach, we build High Performance Analytics Toolkit (HPAT), which parallelizes high-level scripting (Julia) programs automatically, generates efficient MPI/C++ code, and provides resiliency. Furthermore, it provides automatic optimizations for scripting programs, such as fusion of array operations. Thus, HPAT is 369X to 2033X faster than Spark on the Cori supercomputer and 20X to 256X times on Amazon AWS.
Ehsan Totoni, Todd A. Anderson 0001, Tatiana Shpeisman
ICS2
2016 Sparso: Context-driven Optimizations of Sparse Linear Algebra
abstract
The sparse matrix is a key data structure in various domains such as high-performance computing, machine learning, and graph analytics. To maximize performance of sparse matrix operations, it is especially important to optimize across the operations and not just within individual operations. While a straightforward per-operation mapping to library routines misses optimization opportunities, manually optimizing across the boundary of library routines is time-consuming and error-prone, sacrificing productivity.
Hongbo Rong, Jongsoo Park, Lingxiang Xiang, Todd A. Anderson 0001, Mikhail Smelyanskiy
PACT4
2013 The Intel labs Haskell research compiler
abstract
The Glasgow Haskell Compiler (GHC) is a well supported optimizing compiler for the Haskell programming language, along with its own extensions to the language and libraries. Haskell's lazy semantics imposes a runtime model which is in general difficult to implement efficiently. GHC achieves good performance across a wide variety of programs via aggressive optimization taking advantage of the lack of side effects, and by targeting a carefully tuned virtual machine. The Intel Labs Haskell Research Compiler uses GHC as a frontend, but provides a new whole-program optimizing backend by compiling the GHC intermediate representation to a relatively generic functional language compilation platform. We found that GHC's external Core language was relatively easy to use, but reusing GHC's libraries and achieving full compatibility were harder. For certain classes of programs, our platform provides substantial performance benefits over GHC alone, performing 2x faster than GHC with the LLVM backend on selected modern performance-oriented benchmarks; for other classes of programs, the benefits of GHC's tuned virtual machine continue to outweigh the benefits of more aggressive whole program optimization. Overall we achieve parity with GHC with the LLVM backend. In this paper, we describe our Haskell compiler stack, its implementation and optimization approach, and present benchmark results comparing it to GHC.
Hai Liu 0012, Neal Glew, Leaf Petersen, Todd A. Anderson 0001
Haskell4
2010 Optimizations in a private nursery-based garbage collector
abstract
This paper describes a garbage collector designed around the use of permanent, private, thread-local nurseries and is principally oriented towards functional languages. We try to maximize the cache hit rate by having threads continually reuse their individual private nurseries. These private nurseries operate in such a way that they can be garbage collected independently of other threads, which creates low collection pause times. Objects which survive thread-local collections are moved to a mature generation that can be collected either concurrently or in a stop-the-world fashion. We describe several optimizations (including two dynamic control parameter adaptation schemes) related to garbage collecting the private nurseries and to our concurrent collector, some of which are made possible when the language provides mutability information. We tested our collector against six benchmarks and saw single-threaded performance improvements in the range of 5-74%. We also saw a 10x increase (for 24 processors) in scalability for one parallel benchmark that had previously been memory-bound.
Todd A. Anderson 0001
ISMM1
2007 Thread Scheduling for Multi-Core Platforms
Mohan Rajagopalan, Brian T. Lewis, Todd A. Anderson 0001
HotOS3
1999 An Application-Aware Data Storage Model
Todd A. Anderson 0001, Jim Griffioen
USENIX ATC, General Track1
1998 Replication, Consistency, and Practicality: Are These Mutually Exclusive?
abstract
Previous papers have postulated that traditional schemes for the management of replicated data are doomed to failure in practice due to a quartic (or worse) explosion in the probability of deadlocks. In this paper, we present results of a simulation study for three recently introduced protocols that guarantee global serializability and transaction atomicity without resorting to the two-phase commit protocol. The protocols analyzed in this paper include a global locking protocol [10], a “pessimistic” protocol based on a replication graph [5], and an “optimistic” protocol based on a replication graph [7]. The results of the study show a wide range of practical applicability for the lazy replica-update approach employed in these protocols. We show that under reasonable contention conditions and sufficiently high transaction rate, both replication-graph-based protocols outperform the global locking protocol. The distinctions among the protocols in terms of performance are significant. For example, an offered load where 70% - 80% of transactions under the global locking protocol were aborted, only 10% of transactions were aborted under the protocols based on the replication graph. The results of the study suggest that protocols based on a replication graph offer practical techniques for replica management. However, it also shows that performance deteriorates rapidly and dramatically when transaction throughput reaches a saturation point.
Todd A. Anderson 0001, Yuri Breitbart, Henry F. Korth, Avishai Wool
SIGMOD Conference1