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

Sidd Puri

dblp:98/1843 · DBLP profile ↗
← Back
3ranked-venue papers
0as first author
0since 2021 · last 2010
—ORCID · none

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

Software engineering, systems software and programming languages · 2Artificial intelligence and machine learning · 1Systems, architecture and hardware · 1Theory of computation · 1

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.

Theoretical computer science
1 paper
Algorithmic game theory and mechanism design · 100%
Computer architecture, parallel and distributed computing, and storage systems
2 papers
Parallel and multicore computing · 60% Distributed systems · 20% Storage systems · 20%
Software engineering, system software, and programming languages
2 papers
Programming languages and type systems · 53% Compilers and program optimization · 47%

Topics — the 11 heaviest of 12, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Algorithmic game theory and mechanism design
equilibrium analysis
0.112010
Market design & analysis for a P2P backup system · EC 2010
Algorithmic game theory and mechanism design
market design
0.112010
Market design & analysis for a P2P backup system · EC 2010
Compilers and program optimization › code generation
GPU code generation
0.112006
Accelerator: using data parallelism to program GPUs for general-purpose uses · ASPLOS 2006
Parallel and multicore computing
data-parallel programming
0.112006
Accelerator: using data parallelism to program GPUs for general-purpose uses · ASPLOS 2006
Storage systems › storage management
backup systems
0.012010
Market design & analysis for a P2P backup system · EC 2010
Distributed systems
peer-to-peer systems
0.012010
Market design & analysis for a P2P backup system · EC 2010
Programming languages and type systems
module systems
0.011999
What is a Recursive Module? · PLDI 1999
Programming languages and type systems › module systems
recursive modules
0.011999
What is a Recursive Module? · PLDI 1999
Programming languages and type systems
type theory
0.011999
What is a Recursive Module? · PLDI 1999
Parallel and multicore computing
data parallelism
0.012006
Accelerator: using data parallelism to program GPUs for general-purpose uses · ASPLOS 2006
Parallel and multicore computing
parallel programming models
0.012006
Accelerator: using data parallelism to program GPUs for general-purpose uses · ASPLOS 2006

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

game theory · 0.2convergence analysis · 0.2just-in-time compilation · 0.1
YearPublicationVenuePosition
2010 Market design & analysis for a P2P backup system
abstract
In this paper we take the problem of a market-based P2P backup application and carry it through market design, to implementation, to theoretical and experimental analysis. While the long-term goal is an open market using real money, here we consider a system where monetary transfers are prohibited. We first describe the design of the P2P resource exchange market and the UI we developed. Second, we prove theorems on equilibrium existence and uniqueness. Third, we prove a surprising impossibility result regarding the limited controllability of the equilibrium and show how to address this. Fourth, we present a price update algorithm that uses daily supply and demand information to move prices towards the equilibrium and we provide a theoretical and experimental convergence analysis. The market design described in this paper is already implemented as part of a Microsoft research project on P2P backup systems and an alpha version of the software has been successfully tested.
Sven Seuken, Denis Xavier Charles, David Maxwell Chickering, Sidd Puri
EC4
2006 Accelerator: using data parallelism to program GPUs for general-purpose uses
abstract
GPUs are difficult to program for general-purpose uses. Programmers can either learn graphics APIs and convert their applications to use graphics pipeline operations or they can use stream programming abstractions of GPUs. We describe Accelerator, a system that uses data parallelism to program GPUs for general-purpose uses instead. Programmers use a conventional imperative programming language and a library that provides only high-level data-parallel operations. No aspects of GPUs are exposed to programmers. The library implementation compiles the data-parallel operations on the fly to optimized GPU pixel shader code and API calls.We describe the compilation techniques used to do this. We evaluate the effectiveness of using data parallelism to program GPUs by providing results for a set of compute-intensive benchmarks. We compare the performance of Accelerator versions of the benchmarks against hand-written pixel shaders. The speeds of the Accelerator versions are typically within 50% of the speeds of hand-written pixel shader code. Some benchmarks significantly outperform C versions on a CPU: they are up to 18 times faster than C code running on a CPU.
David Tarditi, Sidd Puri, Jose Oglesby
ASPLOS2
1999 What is a Recursive Module?
abstract
A hierarchical module system is an effective tool for structuring large programs. Strictly hierarchical module systems impose an acyclic ordering on import dependencies among program units. This can impede modular programming by forcing mutually-dependent components to be consolidated into a single module. Recently there have been several proposals for module systems that admit cyclic dependencies, but it is not clear how these proposals relate to one another, nor how one might integrate them into an expressive module system such as that of ML.To address this question we provide a type-theoretic analysis of the notion of a recursive module in the context of a "phase-distinction" formalism for higher-order module systems. We extend this calculus with a recursive module mechanism and a new form of signature, called a recursively dependent signature, to support the definition of recursive modules. These extensions are justified by an interpretation in terms of more primitive language constructs. This interpretation may also serve as a guide for implementation.
Karl Crary, Robert Harper 0001, Sidd Puri
PLDI3