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

C. Scott Ananian

dblp:62/3800 · DBLP profile ↗
← Back
4ranked-venue papers
3as first author
0since 2021 · last 2012
—ORCID · none

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

Systems, architecture and hardware · 2 · 1 first-authorSoftware engineering, systems software and programming languages · 1 · 1 first-authorHuman-computer interaction and ubiquitous computing · 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
Parallel and multicore computing · 54% Memory systems · 31% Energy-efficient computing · 15%
Software engineering, system software, and programming languages
1 paper
Concurrent programming · 100%

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

TopicWeightPapersLastEvidence papers
Parallel and multicore computing › transactional memory
hardware transactional memory
0.112005
Unbounded Transactional Memory · HPCA 2005
Parallel and multicore computing
transactional memory
0.112005
Unbounded Transactional Memory · HPCA 2005
Memory systems
cache
0.012001
Direct addressed caches for reduced power consumption · MICRO 2001
Energy-efficient computing › power management › memory power management
cache energy reduction
0.012001
Direct addressed caches for reduced power consumption · MICRO 2001
Memory systems › cache › CPU cache
data cache
0.012001
Direct addressed caches for reduced power consumption · MICRO 2001
Concurrent programming › synchronization
locking
0.012005
Unbounded Transactional Memory · HPCA 2005
Concurrent programming
synchronization
0.012005
Unbounded Transactional Memory · HPCA 2005

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

microbenchmarking · 0.1cycle-accurate simulation · 0.1
YearPublicationVenuePosition
2012 Growing up with Nell: a narrative interface for literacy
abstract
Nell is a tablet-oriented education platform for children in the developing world. A novel modular narrative system guides learning, even for children far from educational infrastructure, and provides personalized instruction which grows with the child. Nell's design builds on experience with the Sugar Learning Platform [17], used by over two million children around the world.
C. Scott Ananian, Chris J. Ball, Michael Stone
IDC1
2005 Unbounded Transactional Memory
abstract
Hardware transactional memory should support unbounded transactions: transactions of arbitrary size and duration. We describe a hardware implementation of unbounded transactional memory, called UTM, which exploits the common case for performance without sacrificing correctness on transactions whose footprint can be nearly as large as virtual memory. We performed a cycle-accurate simulation of a simplified architecture, called LTM. LTM is based on UTM but is easier to implement, because it does not change the memory subsystem outside of the processor. LTM allows nearly unbounded transactions, whose footprint is limited only by physical memory size and whose duration by the length of a timeslice. We assess UTM and LTM through microbenchmarking and by automatically converting the SPECjvm98 Java benchmarks and the Linux 2.4.19 kernel to use transactions instead of locks. We use both cycle-accurate simulation and instrumentation to understand benchmark behavior. Our studies show that the common case is small transactions that commit, even when contention is high, but that some applications contain very large transactions. For example, although 99.9% of transactions in the Linux study touch 54 cache lines or fewer, some transactions touch over 8000 cache lines. Our studies also indicate that hardware support is required, because some applications spend over half their time in critical regions. Finally, they suggest that hardware support for transactions can make Java programs run faster than when run using locks and can increase the concurrency of the Linux kernel by as much as a factor of 4 with no additional programming work.
C. Scott Ananian, Krste Asanovic, Bradley C. Kuszmaul, Charles E. Leiserson, Sean Lie
HPCA1
2003 Data size optimizations for java programs
abstract
We present a set of techniques for reducing the memory consumption of object-oriented programs. These techniques include analysis algorithms and optimizations that use the results of these analyses to eliminate fields with constant values, reduce the sizes of fields based on the range of values that can appear in each field, and eliminate fields with common default values or usage patterns. We apply these optimizations both to fields declared by the programmer and to implicit fields in the runtime object header. Although it is possible to apply these techniques to any object-oriented program, we expect they will be particularly appropriate for memory-limited embedded systems.We have implemented these techniques in the MIT FLEX compiler system and applied them to the programs in the SPECjvm98 benchmark suite. Our experimental results show that our combined techniques can reduce the maximum live heap size required for the programs in our benchmark suite by as much as 40%. Some of the optimizations reduce the overall execution time; others may impose modest performance penalties.
C. Scott Ananian, Martin C. Rinard
LCTES1
2001 Direct addressed caches for reduced power consumption
abstract
A direct addressed cache is a hardware-software design for an energy-efficient microprocessor data cache. Direct addressing allows software to access cache data without a hardware cache tag check. These tag-unchecked loads and stores save the energy of a tag check when the compiler can guarantee an access will be to the same line as an earlier access. We have added support for tag-unchecked loads and stores to C and Java compilers. For Mediabench C programs, the compiler eliminates 16-76% of data cache tag accesses, with half of the benchmarks avoiding over 40% of the data tag checks. For SPECjvm98 Java programs, the compiler eliminates 18-63% of data cache tag checks. These tag check reductions translate into data cache energy savings of 9-40%, and overall processor and cache energy savings of 2-8%.
Emmett Witchel, Samuel Larsen, C. Scott Ananian, Krste Asanovic
MICRO3