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

Shady Issa

dblp:173/0302 · also Shadi Issa · DBLP profile ↗
← Back
16ranked-venue papers
5as first author
3since 2021 · last 2023
0000-0002-7571-0635ORCID · verified

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

Systems, architecture and hardware · 11 · 3 first-author · 2 since 2021Software engineering, systems software and programming languages · 1 · 1 first-authorDatabases, data management, data science and information retrieval · 1 · 1 since 2021Theory of computation · 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
6 papers
Parallel and multicore computing · 41% Memory systems · 35% Storage systems · 14%
Software engineering, system software, and programming languages
2 papers
Concurrent programming · 65% Operating systems · 26% Programming languages and type systems · 9%
Network and information security
2 papers
Hardware security and side channels · 54% Systems and software security · 46%
Computer networks
1 paper
Network performance modeling · 100%

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

TopicWeightPapersLastEvidence papers
Memory systems › non-volatile memory
persistent memory
0.822023
Anchor: A Library for Building Secure Persistent Memory Systems · Proc. ACM Manag. Data 2023
SafePM: a sanitizer for persistent memory · EuroSys 2022
Hardware security and side channels
trusted execution environments
0.712023
Anchor: A Library for Building Secure Persistent Memory Systems · Proc. ACM Manag. Data 2023
Storage systems
crash consistency
0.712023
Anchor: A Library for Building Secure Persistent Memory Systems · Proc. ACM Manag. Data 2023
Memory systems › non-volatile memory › persistent memory
secure persistent memory
0.712023
Anchor: A Library for Building Secure Persistent Memory Systems · Proc. ACM Manag. Data 2023
Parallel and multicore computing › transactional memory
hardware transactional memory
0.622019
Stretching the capacity of hardware transactional memory in IBM POWER architectures · PPoPP 2019
Hardware read-write lock elision · EuroSys 2016
Parallel and multicore computing
transactional memory
0.622019
Stretching the capacity of hardware transactional memory in IBM POWER architectures · PPoPP 2019
Hardware read-write lock elision · EuroSys 2016
Systems and software security
memory safety
0.612022
SafePM: a sanitizer for persistent memory · EuroSys 2022
Concurrent programming
transactional memory
0.512021
Investigating the semantics of futures in transactional memory systems · PPoPP 2021
Network performance modeling
network emulation
0.412020
Kollaps: decentralized and dynamic topology emulation · EuroSys 2020
Concurrent programming
synchronization
0.412020
Scalable range locks for scalable address spaces and beyond · EuroSys 2020
Operating systems › resource management › memory management
virtual memory
0.412020
Scalable range locks for scalable address spaces and beyond · EuroSys 2020
Parallel and multicore computing › transactional memory
lock elision
0.212016
Hardware read-write lock elision · EuroSys 2016
Parallel and multicore computing
synchronization
0.212016
Hardware read-write lock elision · EuroSys 2016
Concurrent programming › parallel programming models
futures
0.112021
Investigating the semantics of futures in transactional memory systems · PPoPP 2021
Programming languages and type systems
language semantics
0.112021
Investigating the semantics of futures in transactional memory systems · PPoPP 2021
Parallel and multicore computing
concurrent data structures
0.112020
Scalable range locks for scalable address spaces and beyond · EuroSys 2020
Memory systems
main memory database
0.112019
Stretching the capacity of hardware transactional memory in IBM POWER architectures · PPoPP 2019

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

trusted execution environment · 1.3remote attestation · 1.3kernel-bypass networking · 1.3crash consistency · 1.1spin lock contention reduction · 0.9scalable tree-based locking · 0.9sanitizers · 0.6sanitizer · 0.6software transactional memory · 0.5graph-based STM · 0.5speculative execution · 0.2
YearPublicationVenuePosition
2023 Anchor: A Library for Building Secure Persistent Memory Systems
abstract
Cloud infrastructure is experiencing a shift towards disaggregated setups, especially with the introduction of the Compute Express Link (CXL) technology, where byte-addressable ersistent memory (PM) is becoming prominent. To fully utilize the potential of such devices, it is a necessity to access them through network stacks with equivalently high levels of performance (e.g., kernel-bypass, RDMA). While, these advancements are enabling the development of high-performance data management systems, their deployment on untrusted cloud environments also increases the security threats. To this end, we present Anchor, a library for building secure PM systems. Anchor provides strong hardware-assisted security properties, while ensuring crash consistency. Anchor exposes APIs for secure data management within the realms of the established PM programming model, targeting byte-addressable storage devices. Anchor leverages trusted execution environments (TEE) and extends their security properties on PM. While TEE's protected memory region provides a strong foundation for building secure systems, the key challenge is that: TEEs are fundamentally incompatible with PM and kernel-bypass networking approaches-in particular, TEEs are neither designed to protect untrusted non-volatile PM, nor the protected region can be accessed via an untrusted DMA connection. To overcome this challenge, we design a PM engine that ensures strong security properties for the PM data, using confidential and authenticated PM data structures, while preserving crash consistency through a secure logging protocol. We further extend the PM engine to provide remote PM data operations via a secure network stack and a formally verified remote attestation protocol to form an end-to-end system. Our evaluation shows that Anchor incurs reasonable overheads, while providing strong security properties.
Dimitrios Stavrakakis, Dimitra Giantsidi, Maurice Bailleu, Philip Sändig, Shady Issa, Pramod Bhatotia
Proc. ACM Manag. Data5
2022 SafePM: a sanitizer for persistent memory
abstract
Memory safety violation is a major root cause of reliability and security issues in software systems. Byte-addressable persistent memory (PM), just like its volatile counterpart, is also susceptible to memory safety violations. While there is a couple of decades of work in ensuring memory safety for programs based on volatile memory, the existing approaches are incompatible for PM since the PM programming model introduces a persistent pointer representation for persistent memory objects and allocators, where it is imperative to design a crash consistent safety mechanism.
Kartal Kaan Bozdogan, Dimitrios Stavrakakis, Shady Issa, Pramod Bhatotia
EuroSys3
2021 Investigating the semantics of futures in transactional memory systems
abstract
This paper investigates the problem of integrating two powerful abstractions for concurrent programming, namely futures and transactional memory. Our focus is on specifying the semantics of execution of "transactional futures", i.e., futures that execute as atomic transactions and that are spawned/evaluated by other (plain) transactions or transactional futures. We show that, due to the ability of futures to generate parallel computations with complex dependencies, there exist several plausible (i.e., intuitive) alternatives for defining the isolation and atomicity semantics of transactional futures. The alternative semantics we propose explore different trade-offs between ease of use and efficiency. We have implemented the proposed semantics by introducing a graph-based software transactional memory algorithm, which we integrated with a state of the art JAVA-based Software Transactional Memory (STM). We quantify the performance trade-offs associated with the different semantics using an extensive experimental study encompassing a wide range of diverse workloads.
Jingna Zeng, Shady Issa, Paolo Romano 0002, Luís E. T. Rodrigues, Seif Haridi
PPoPP2
2020 Kollaps: decentralized and dynamic topology emulation
abstract
The performance and behavior of large-scale distributed applications is highly influenced by network properties such as latency, bandwidth, packet loss, and jitter. For instance, an engineer might need to answer questions such as: What is the impact of an increase in network latency in application response time? How does moving a cluster between geographical regions affect application throughput? What is the impact of network dynamics on application stability? Currently, answering these questions in a systematic and reproducible way is very hard due to the variability and lack of control over the underlying network. Unfortunately, state-of-the-art network emulation or testbed environments do not scale beyond a single machine or small cluster (i.e., MiniNet), are focused exclusively on the control-plane (i.e., CrystalNet) or lack support for network dynamics (i.e., EmuLab).
Paulo Gouveia, Carlos Segarra, Luca Liechti, Shady Issa, Valerio Schiavoni, Miguel Matos
EuroSys5
2020 Scalable range locks for scalable address spaces and beyond
abstract
Range locks are a synchronization construct designed to provide concurrent access to multiple threads (or processes) to disjoint parts of a shared resource. Originally conceived in the file system context, range locks are gaining increasing interest in the Linux kernel community seeking to alleviate bottlenecks in the virtual memory management subsystem. The existing implementation of range locks in the kernel, however, uses an internal spin lock to protect the underlying tree structure that keeps track of acquired and requested ranges. This spin lock becomes a point of contention on its own when the range lock is frequently acquired. Furthermore, where and exactly how specific (refined) ranges can be locked remains an open question.
Alex Kogan, David Dice, Shady Issa
EuroSys3
2020 Exploiting Symbolic Execution to Accelerate Deterministic Databases
abstract
Deterministic databases (DDs) are a promising approach for replicating data across different replicas. A fundamental component of DDs is a deterministic concurrency control algorithm that, given a set of transactions in a specific order, guarantees that their execution always results in the same serial order. State-of-the-art approaches either rely on single threaded execution or on the knowledge of read- and write-sets of transactions to achieve this goal. The former yields poor performance in multi-core machines while the latter requires either manual inputs from the user - a time-consuming and error prone task - or a reconnaissance phase that increases both the latency and abort rates of transactions. In this paper, we present Prognosticator, a novel deterministic database system. Rather than relying on manual transaction classification or an expert programmer, Prognosticator employs Symbolic Execution to build fine-grained transaction profiles (at the key-level). These profiles are then used by Prognosticator's novel deterministic concurrency control algorithm to execute transactions with a high degree of parallelism.Our experimental evaluation, based on both TPC-C and RUBiS benchmarks, shows that Prognosticator can achieve up to 5× higher throughput with respect to state-of-the-art solutions.
Shady Issa, Miguel Viegas, Pedro Raminhas, Nuno Machado, Miguel Matos, Paolo Romano 0002
ICDCS1
2020 Giving Future(s) to Transactional Memory
Jingna Zeng, Seif Haridi, Shady Issa, Paolo Romano 0002, Luís E. T. Rodrigues
SPAA3
2020 Extending hardware transactional memory capacity via rollback-only transactions and suspend/resume
Shady Issa, Pascal Felber, Alexander Matveev, Paolo Romano 0002
Distributed Comput.1
2019 Stretching the capacity of hardware transactional memory in IBM POWER architectures
abstract
The hardware transactional memory (HTM) implementations in commercially available processors are significantly hindered by their tight capacity constraints. In practice, this renders current HTMs unsuitable to many real-world workloads of in-memory databases.
Ricardo Filipe, Shady Issa, Paolo Romano 0002, João Barreto 0001
PPoPP2
2018 Enhancing Efficiency of Hybrid Transactional Memory Via Dynamic Data Partitioning Schemes
abstract
Transactional Memory (TM) is an emerging paradigm that promises to significantly ease the development of parallel programs. Hybrid TM (HyTM) is probably the most promising implementation of the TM abstraction, which seeks to combine the high efficiency of hardware implementations (HTM) with the robustness and flexibility of software-based ones (STM). Unfortunately, though, existing Hybrid TM systems are known to suffer from high overheads to guarantee correct synchronization between concurrent transactions executing in hardware and software. This article introduces DMP-TM (Dynamic Memory Partitioning-TM), a novel HyTM algorithm that exploits, to the best of our knowledge for the first time in the literature, the idea of leveraging operating system-level memory protection mechanisms to detect conflicts between HTM and STM transactions. This innovative design allows for employing highly scalable STM implementations, while avoiding instrumentation on the HTM path. This allows DMP-TM to achieve up to ~ 20× speedups compared to state of the art Hybrid TM solutions in uncontended workloads. Further, thanks to the use of simple and lightweight self-tuning mechanisms, DMP-TM achieves robust performance even in unfavourable workload that exhibits high contention between the STM and HTM path.
Pedro Raminhas, Shady Issa, Paolo Romano 0002
CCGrid2
2018 Speculative Read Write Locks
abstract
Hardware Transactional Memory (HTM) has recently entered the realm of mainstream computing thanks to its integration in processors commercialized by major industrial manufacturers. HTM provides highly-efficient, hardware-assisted synchronization mechanisms for concurrent programs. Unfortunately, though, existing HTM implementations also suffer from severe limitations that are inherently related to their best-effort, hardware-based design.
Shady Issa, Paolo Romano 0002, Tiago Lopes
Middleware1
2017 Extending Hardware Transactional Memory Capacity via Rollback-Only Transactions and Suspend/Resume
abstract
Transactional memory (TM) aims at simplifying concurrent programming via the familiar abstraction of atomic transactions. Recently, Intel and IBM have integrated hardware based TM (HTM) implementations in commodity processors, paving the way for the mainstream adoption of the TM paradigm. Yet, existing HTM implementations suffer from a crucial limitation, which hampers the adoption of HTM as a general technique for regulating concurrent access to shared memory: the inability to execute transactions whose working sets exceed the capacity of CPU caches. In this paper we propose P8TM, a novel approach that mitigates this limitation on IBM's POWER8 architecture by leveraging a key combination of techniques: uninstrumented read-only transactions, Rollback Only Transaction-based update transactions, HTM-friendly (software-based) read-set tracking, and self-tuning. P8TM can dynamically switch between different execution modes to best adapt to the nature of the transactions and the experienced abort patterns. In-depth evaluation with several benchmarks indicates that P8TM can achieve striking performance gains in workloads that stress the capacity limitations of HTM, while achieving performance on par with HTM even in unfavourable workloads.
Shady Issa, Pascal Felber, Alexander Matveev, Paolo Romano 0002
DISC1
2016 Hardware read-write lock elision
abstract
Hardware Lock Elision (HLE) represents a promising technique to enhance parallelism of concurrent applications relying on conventional, lock-based synchronization. The idea at the basis of current HLE approaches is to wrap critical sections into hardware transactions: this allows critical sections to be executed in parallel using a speculative approach, while leveraging on conflict detection capabilities provided by hardware transactions to ensure equivalent semantics to pessimistic lock-based synchronization.
Pascal Felber, Shady Issa, Alexander Matveev, Paolo Romano 0002
EuroSys2
2015 Green-CM: Energy Efficient Contention Management for Transactional Memory
abstract
Transactional memory (TM) is emerging as an attractive synchronization mechanism for concurrent computing. In this work we aim at filling a relevant gap in the TM literature, by investigating the issue of energy efficiency for one crucial building block of TM systems: contention management. Green-CM, the solution proposed in this paper, is the first contention management scheme explicitly designed to jointly optimize both performance and energy consumption. To this end Green-TM combines three key mechanisms: i) it leverages on a novel asymmetric design, which combines different back-off policies in order to take advantage of dynamic frequency and voltage scaling, ii) it introduces an energy efficient design of the back-off mechanism, which combines spin-based and sleep-based implementations, iii) it makes extensive use of self-tuning mechanisms to pursue optimal efficiency across highly heterogeneous workloads. We evaluate Green-CM from both the energy and performance perspectives, and show that it can achieve enhanced efficiency by up to 2.35 times with respect to state of the art contention managers, with an average gain of more than 60% when using 64 threads.
Shady Issa, Paolo Romano 0002, Mats Brorsson
ICPP1
2013 Towards Scalable and Cost-aware Bioinformatics Workflow Execution in the Cloud - Recent Advances to the Tavaxy Workflow System
abstract
Cloud-based scientific workflow systems can play an important role in the development of cost effective bioinformatics analysis applications. So far, most efforts for supporting cloud computing in such workflow systems have focused on simply porting
Mohamed Abouelhoda, Shady Issa, Moustafa Ghanem
Fundam. Informaticae2
2012 Tavaxy: Integrating Taverna and Galaxy workflows with cloud computing support
abstract
BACKGROUND: Over the past decade the workflow system paradigm has evolved as an efficient and user-friendly approach for developing complex bioinformatics applications. Two popular workflow systems that have gained acceptance by the bioinformatics community are Taverna and Galaxy. Each system has a large user-base and supports an ever-growing repository of application workflows. However, workflows developed for one system cannot be imported and executed easily on the other. The lack of interoperability is due to differences in the models of computation, workflow languages, and architectures of both systems. This lack of interoperability limits sharing of workflows between the user communities and leads to duplication of development efforts. RESULTS: In this paper, we present Tavaxy, a stand-alone system for creating and executing workflows based on using an extensible set of re-usable workflow patterns. Tavaxy offers a set of new features that simplify and enhance the development of sequence analysis applications: It allows the integration of existing Taverna and Galaxy workflows in a single environment, and supports the use of cloud computing capabilities. The integration of existing Taverna and Galaxy workflows is supported seamlessly at both run-time and design-time levels, based on the concepts of hierarchical workflows and workflow patterns. The use of cloud computing in Tavaxy is flexible, where the users can either instantiate the whole system on the cloud, or delegate the execution of certain sub-workflows to the cloud infrastructure. CONCLUSIONS: Tavaxy reduces the workflow development cycle by introducing the use of workflow patterns to simplify workflow creation. It enables the re-use and integration of existing (sub-) workflows from Taverna and Galaxy, and allows the creation of hybrid workflows. Its additional features exploit recent advances in high performance cloud computing to cope with the increasing data size and complexity of analysis.The system can be accessed either through a cloud-enabled web-interface or downloaded and installed to run within the user's local environment. All resources related to Tavaxy are available at http://www.tavaxy.org.
Mohamed Abouelhoda, Shady Issa, Moustafa Ghanem
BMC Bioinform.2