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.

Sasa Tomic

dblp:24/1829 · DBLP profile ↗
← Back
12ranked-venue papers
3as first author
0since 2021 · last 2019
—ORCID · none

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

Systems, architecture and hardware · 7 · 1 first-authorSoftware engineering, systems software and programming languages · 4Databases, data management, data science and information retrieval · 2 · 1 first-authorArtificial intelligence and machine learning · 1Applied, interdisciplinary, general and emerging computing · 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.

Computer architecture, parallel and distributed computing, and storage systems
4 papers
Storage systems · 68% Parallel and multicore computing · 14% Processor architecture and microarchitecture · 13%
Software engineering, system software, and programming languages
2 papers
Runtime systems and virtual machines · 69% Concurrent programming · 31%

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

TopicWeightPapersLastEvidence papers
Storage systems
flash and SSD
0.312018
Management of Next-Generation NAND Flash to Achieve Enterprise-Level Endurance and Latency Targets · ACM Trans. Storage 2018
Storage systems › flash and SSD
flash memory management
0.312018
Management of Next-Generation NAND Flash to Achieve Enterprise-Level Endurance and Latency Targets · ACM Trans. Storage 2018
Storage systems › flash and SSD › flash memory management
garbage collection
0.312018
Management of Next-Generation NAND Flash to Achieve Enterprise-Level Endurance and Latency Targets · ACM Trans. Storage 2018
Storage systems › flash and SSD › flash memory management
wear leveling
0.312018
Management of Next-Generation NAND Flash to Achieve Enterprise-Level Endurance and Latency Targets · ACM Trans. Storage 2018
Runtime systems and virtual machines
language runtime
0.112010
Dynamic filtering: multi-purpose architecture support for language runtime systems · ASPLOS 2010
Storage systems
storage reliability
0.112018
Management of Next-Generation NAND Flash to Achieve Enterprise-Level Endurance and Latency Targets · ACM Trans. Storage 2018
Memory systems › cache coherence
conflict management
0.112009
EazyHTM: eager-lazy hardware transactional memory · MICRO 2009
Parallel and multicore computing › transactional memory
hardware transactional memory
0.112009
EazyHTM: eager-lazy hardware transactional memory · MICRO 2009
Parallel and multicore computing
parallel programming models
0.112009
EazyHTM: eager-lazy hardware transactional memory · MICRO 2009
Parallel and multicore computing
transactional memory
0.112009
EazyHTM: eager-lazy hardware transactional memory · MICRO 2009
Systems and software security
memory protection
0.012013
Improving the energy efficiency of hardware-assisted watchpoint systems · DAC 2013
Concurrent programming › concurrency bug detection
data race detection
0.012013
Improving the energy efficiency of hardware-assisted watchpoint systems · DAC 2013

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

read-threshold voltage optimization · 0.3data placement · 0.3block calibration · 0.3dynamic filtering · 0.2lazy conflict management · 0.1eager conflict management · 0.1
YearPublicationVenuePosition
2019 Kafka: the Database Inverted, but Not Garbled or Compromised
abstract
The Kafka streaming platform has at its heart a distributed commit log. This resembles the change log that exists in every relational database system. It has been suggested that Kafka be viewed not just as a messaging system, but as the core of a database. The database is in effect “turned inside out” as the normally hidden change log becomes the first class entity of the system, while what is normally considered primary, i.e. the table, view, indexes etc. are just derived from this log. This is appealing as a vision, but raises challenges when applied within an actual enterprise system. The challenges arise from the conflicting interests and requirements of analytics and transactional systems. Running everything on a single system leads to tradeoffs; our intentions here is to identify some of the practical problems with using Kafka as a single data store within an enterprise and to describe our initial approach to resolving them. In particular we present preliminary approaches to ensure consistency and coherence of data from multiple database tables when distributed over Kafka and how to address compliance by encrypting/decrypting data at the Kafka producers and consumers.
Sean Rooney, Peter Urbanetz, Chris Giblin, Daniel Bauer 0001, Florian Froese, Luis Garcés-Erice, Sasa Tomic
IEEE BigData7
2019 Understanding the Design Trade-Offs of Hybrid Flash Controllers
abstract
Over the last few years, NAND flash manufacturers have steadily increased the number of bits stored per cell to achieve significant cost reductions. However, the increased density does not come without drawbacks. All key flash performance metrics, including latency and endurance, significantly degrade as bit density increases. Particularly, sustained write throughput is the worst affected as writes are roughly one order of magnitude slower than reads and further require precursory block erases in the background. As a result, many recent flash controllers operate flash blocks both in single-bit (high endurance and performance) and in multi-bit (high density) mode. In theory, such hybrid controllers are a great way of hiding flash technology limitations. A controller can use a small percentage of the flash blocks in single-bit mode as a cache which allows orders of magnitude higher write bandwidth and endurance in environments where the access patterns of the workload are skewed and bursty. In practice, however, many devices fall short of expectations when write performance varies significantly and utilization increases. We argue that a principled approach is required to understand the design trade-offs of hybrid NAND flash controllers. To this end, we develop a modeling framework for estimating the performance and endurance of hybrid controllers. The modeling framework computes the internal data movement generated by a hybrid controller by relying on advanced analytical models that offer both accurate and fast predictions. The data flow is then translated into higher-level metrics that quantify upper bounds for the overall performance of an SSD such as write throughput, latency, and device endurance. Using our modeling framework, we compare different controller architectures, identify their strong and weak points, and show that there is room to improve the efficiency of the hybrid controllers used today.
Radu Stoica, Roman A. Pletka, Nikolas Ioannou, Nikolaos Papandreou, Sasa Tomic, Haralampos Pozidis
MASCOTS5
2018 Management of Next-Generation NAND Flash to Achieve Enterprise-Level Endurance and Latency Targets
abstract
Despite its widespread use in consumer devices and enterprise storage systems, NAND flash faces a growing number of challenges. While technology advances have helped to increase the storage density and reduce costs, they have also led to reduced endurance and larger block variations, which cannot be compensated solely by stronger ECC or read-retry schemes but have to be addressed holistically. Our goal is to enable low-cost NAND flash in enterprise storage for cost efficiency. We present novel flash-management approaches that reduce write amplification, achieve better wear leveling, and enhance endurance without sacrificing performance. We introduce block calibration, a technique to determine optimal read-threshold voltage levels that minimize error rates, and novel garbage-collection as well as data-placement schemes that alleviate the effects of block health variability and show how these techniques complement one another and thereby achieve enterprise storage requirements. By combining the proposed schemes, we improve endurance by up to 15× compared to the baseline endurance of NAND flash without using a stronger ECC scheme. The flash-management algorithms presented herein were designed and implemented in simulators, hardware test platforms, and eventually in the flash controllers of production enterprise all-flash arrays. Their effectiveness has been validated across thousands of customer deployments since 2015.
Roman A. Pletka, Ioannis Koltsidas, Nikolas Ioannou, Sasa Tomic, Nikolaos Papandreou, Thomas P. Parnell, Haralampos Pozidis, Aaron Fry, Timothy Fisher
ACM Trans. Storage4
2016 Health-Binning: Maximizing the Performance and the Endurance of Consumer-Level NAND Flash
abstract
In recent years, the adoption of NAND flash in enterprise storage systems has been progressing rapidly. Todays all-flash storage arrays exhibit excellent I/O throughput, latency, storage density, and energy efficiency. However, the advancements in NAND technology are driven mostly by the consumer market, which makes NAND flash manufacturers focus primarily on reducing cost ($/GiB) and increasing the storage density by technology node scaling, by increasing the number of bits stored per cell, and by stacking cells vertically (3D-NAND). This comes at the cost of reduced endurance of the raw NAND flash, larger variations across blocks, and longer latencies, especially with extremely high error rates (due to the use of read-retry operations).
Roman A. Pletka, Sasa Tomic
SYSTOR2
2013 Improving the energy efficiency of hardware-assisted watchpoint systems
abstract
Hardware-assisted watchpoint systems enhance the execution of numerous dynamic software techniques, such as memory protection, module isolation, deterministic execution, and data race detection. In this paper, we show that previous hardware proposals may introduce significant energy overheads, and propose WatchPoint Filtering (WPF), a novel filtering mechanism that eliminates unnecessary watchpoint checks. We evaluate WPF on two state-of-the-art proposals for hardware-assisted watchpoints using two common memory checkers. WPF eliminates 83% of the watchpoint checks (up to 99.7%) and reduces 57% of the dynamic energy overhead (up to 78%) on average, without introducing additional performance execution overhead.
Vasileios Karakostas, Sasa Tomic, Osman S. Unsal, Mario Nemirovsky, Adrián Cristal
DAC2
2012 TagTM - accelerating STMs with hardware tags for fast meta-data access
abstract
In this paper we introduce TagTM, a Software Transactional Memory (STM) system augmented with a new hardware mechanism that we call GTags. GTags are new hardware cache coherent tags that are used for fast meta-data access. TagTM uses GTags to reduce the cost associated with accesses to the transactional data and corresponding metadata. For the evaluation of TagTM, we use the STAMP TM benchmark suite. In the average case TagTM provides a speedup of 7–15% (across all STAMP applications), and in the best case shows up to 52% speedup of committed transaction execution time (for SSCA2 application).
Srdjan Stipic, Sasa Tomic, Ferad Zyulkyarov, Adrián Cristal, Osman S. Unsal, Mateo Valero
DATE2
2011 Rapid Development of Error-Free Architectural Simulators Using Dynamic Runtime Testing
abstract
Architectural simulator platforms are particularly complex and error-prone programs that aim to simulate all hardware details of a given target architecture. The development of a stable cycle-accurate architectural simulator can easily take several man-years. Discovering and fixing all visible errors in the simulator often requires significant effort, much higher than for writing the simulator in the first place. In addition, there are no guarantees that all programming errors will be eliminated, no matter how much effort is put into it. This paper presents dynamic runtime testing, a methodology for rapid development and accurate error detection in architectural cycle-accurate simulators. In dynamic runtime testing, the simulator execution is dynamically compared with a simple and functionally equivalent emulator. A possible error is detected if any instruction produces different results in the simulator and the emulator. Dynamic testing can help the developers of architectural simulators to get a reliable and accurate verification of functional correctness. Based on our experience, dynamic testing reduced the simulator modification time from 12-18 person-months to 3-4 person-months, and it only modestly reduced the simulator performance (in our case under 20%).
Sasa Tomic, Adrián Cristal, Osman S. Unsal, Mateo Valero
SBAC-PAD1
2010 Dynamic filtering: multi-purpose architecture support for language runtime systems
Tim Harris 0001, Sasa Tomic, Adrián Cristal, Osman S. Unsal
ASPLOS2
2009 EazyHTM: eager-lazy hardware transactional memory
abstract
Transactional Memory aims to provide a programming model that makes parallel programming easier. Hardware implementations of transactional memory (HTM) suffer from fewer overheads than implementations in software, and refinements in conflict management strategies for HTM allow for even larger improvements. In particular, lazy conflict management has been shown to deliver better performance, but it has hitherto required complex protocols and implementations.
Sasa Tomic, Cristian Perfumo, Chinmay Kulkarni 0001, Adrià Armejach, Adrián Cristal, Osman S. Unsal, Tim Harris 0001, Mateo Valero
MICRO1
2000 A new measure of temporal consistency for derived objects in real-time database systems
Sasa Tomic, Susan V. Vrbsky, Tracy Camp
Inf. Sci.1
1999 Satisfying temporal consistency constraints of real-time databases
Susan V. Vrbsky, Sasa Tomic
J. Syst. Softw.2
1998 Satisfying timing constraints of real-time databases
Susan V. Vrbsky, Sasa Tomic
J. Syst. Softw.2