Person:

Waterland, Amos

Loading...
Profile Picture

Email Address

AA Acceptance Date

Birth Date

Research Projects

Organizational Units

Job Title

Last Name

Waterland

First Name

Amos

Name

Waterland, Amos

Search Results

Now showing 1 - 4 of 4
  • Publication

    Parallelization by Simulated Tunneling

    (USENIX Association, 2012) Waterland, Amos; Appavoo, Jonathan; Seltzer, Margo

    As highly parallel heterogeneous computers become commonplace, automatic parallelization of software is an increasingly critical unsolved problem. Continued progress on this problem will require large quantities of information about the runtime structure of sequential programs to be stored and reasoned about. Manually formalizing all this information through traditional approaches, which rely on semantic analysis at the language or instruction level, has historically proved challenging. We take a lower level approach, eschewing semantic analysis and instead modeling von Neumann computation as a dynamical system, i.e., a state space and an evolution rule, which gives a natural way to use probabilistic inference to automatically learn powerful representations of this information. This model enables a promising new approach to automatic parallelization, in which probability distributions empirically learned over the state space are used to guide speculative solvers. We describe a prototype virtual machine that uses this model of computation to automatically achieve linear speedups for an important class of deterministic, sequential Intel binary programs through statistical machine learning and a speculative, generalized form of memoization.

  • Publication

    Computational Caches

    (ACM Press, 2013) Waterland, Amos; Angelino, Elaine Lee; Cubuk, Ekin; Kaxiras, Efthimios; Adams, Ryan Prescott; Appavoo, Jonathan; Seltzer, Margo

    Caching is a well-known technique for speeding up computation. We cache data from file systems and databases; we cache dynamically generated code blocks; we cache page translations in TLBs. We propose to cache the act of computation, so that we can apply it later and in different contexts. We use a state-space model of computation to support such caching, involving two interrelated parts: speculatively memoized predicted/resultant state pairs that we use to accelerate sequential computation, and trained probabilistic models that we use to generate predicted states from which to speculatively execute. The key techniques that make this approach feasible are designing probabilistic models that automatically focus on regions of program execution state space in which prediction is tractable and identifying state space equivalence classes so that predictions need not be exact.

  • Publication

    Towards General-Purpose Neural Network Computing

    (2015) Eldridge, Schuyler; Waterland, Amos; Seltzer, Margo; Appavoo, Jonathan; Joshi, Ajay

    Machine learning is becoming pervasive, decades of research in neural network computation is now being leveraged to learn patterns in data and perform computations that are difficult to express using standard programming approaches. Recent work has demonstrated that custom hardware accelerators for neural network processing can outperform software implementations in both performance and power consumption. However, there is neither an agreed-upon interface to neural network accelerators nor a consensus on neural network hardware implementations. We present a generic set of software/hardware extensions, X-FILES, that allow for the general-purpose integration of feedforward and feedback neural network computation in applications. The interface is independent of the network type, configuration, and implementation. Using these proposed extensions, we demonstrate and evaluate an example dynamically allocated, multi-context neural network accelerator architecture, DANA. We show that the combination of X-FILES and our hardware prototype, DANA, enables generic support and increased throughput for neural-network-based computation in multi-threaded scenarios.

  • Publication

    Programmable Smart Machines: A Hybrid Neuromorphic approach to General Purpose Computation

    (2014) Appavoo, Jonathan; Waterland, Amos; Eldridge, Schuyler; Zhao, Katherine; Joshi, Ajay; Homer, Steve; Seltzer, Margo