scispace - formally typeset
T

Tim Harris

Researcher at Oracle Corporation

Publications -  178
Citations -  15620

Tim Harris is an academic researcher from Oracle Corporation. The author has contributed to research in topics: Transactional memory & Software transactional memory. The author has an hindex of 44, co-authored 173 publications receiving 15244 citations. Previous affiliations of Tim Harris include Amazon.com & Microsoft.

Papers
More filters
Proceedings ArticleDOI

Language constructs for transactional memory

TL;DR: It is argued that one way of trying to resolve questions is to be rigorous about keeping the ideas of atomic blocks and TM separate, and that, when thinking about atomic blocks, the authors should keep a wide range of possible implementations in mind.
Proceedings ArticleDOI

Supporting stateful tasks in a dataflow graph

TL;DR: The ADF model provides an easy-to-program optimistic concurrency substrate and enables a task to safely share data with other concurrent tasks and increase the programmability of shared memory systems.
Proceedings ArticleDOI

DistIR: An Intermediate Representation for Optimizing Distributed Neural Networks

TL;DR: DistIR as mentioned in this paper is an IR for explicitly representing distributed DNN computation that can capture many popular distribution strategies, such as data, horizontal, and pipeline parallelism, and can be used to automatically search for an optimal distribution strategy.
Journal ArticleDOI

Composable scheduler activations for Haskell

TL;DR: A novel concurrency substrate design for the Glasgow Haskell Compiler is described that allows multicore schedulers for concurrent and parallel Haskell programs to be safely and modularly described as libraries in Haskell.
Patent

Lightweight transactional memory for data parallel programming

TL;DR: In this article, an alternative use for transactional memory is provided, namely implementing atomic work items that are run asynchronously from their creation in a thread, by using retry to express condition synchronization, providing a general mechanism for controlling when and in what order they are executed.