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

Sizhuo Zhang

dblp:175/6230 · DBLP profile ↗
← Back
6ranked-venue papers
4as first author
0since 2021 · last 2019
0000-0001-8426-4510ORCID · corroborated

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

Systems, architecture and hardware · 6 · 4 first-authorSoftware engineering, systems software and programming languages · 2 · 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
5 papers
Reconfigurable computing and FPGAs · 31% Processor architecture and microarchitecture · 25% Storage systems · 19%
Network and information security
1 paper
Hardware security and side channels · 100%
Software engineering, system software, and programming languages
1 paper
Concurrent programming · 100%
Databases, data mining, and information retrieval
1 paper
Graph data management · 100%

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

TopicWeightPapersLastEvidence papers
Hardware security and side channels › trusted execution environments
secure enclaves
0.412019
MI6: Secure Enclaves in a Speculative Out-of-Order Processor · MICRO 2019
Hardware security and side channels
trusted execution environments
0.412019
MI6: Secure Enclaves in a Speculative Out-of-Order Processor · MICRO 2019
Concurrent programming
memory models
0.312018
Constructing a Weak Memory Model · ISCA 2018
Concurrent programming › concurrency semantics
operational and axiomatic semantics
0.312018
Constructing a Weak Memory Model · ISCA 2018
Storage systems › flash and SSD › flash memory
flash storage
0.312018
GraFBoost: Using Accelerated Flash Storage for External Graph Analytics · ISCA 2018
Reconfigurable computing and FPGAs
FPGA accelerator
0.312018
GraFBoost: Using Accelerated Flash Storage for External Graph Analytics · ISCA 2018
Storage systems › computational storage
in-storage computing
0.312018
GraFBoost: Using Accelerated Flash Storage for External Graph Analytics · ISCA 2018
Memory systems › memory consistency
memory consistency model
0.312018
Constructing a Weak Memory Model · ISCA 2018
Processor architecture and microarchitecture › out-of-order execution
out-of-order processor
0.312018
Composable Building Blocks to Open up Processor Design · MICRO 2018
Reconfigurable computing and FPGAs
reconfigurable computing
0.312018
GraFBoost: Using Accelerated Flash Storage for External Graph Analytics · ISCA 2018
Processor architecture and microarchitecture › microprocessor design
RISC-V processor
0.312018
Composable Building Blocks to Open up Processor Design · MICRO 2018
Memory systems › memory consistency › memory consistency model
weak memory model
0.312018
Constructing a Weak Memory Model · ISCA 2018
Hardware security and side channels
microarchitectural side channel
0.112019
MI6: Secure Enclaves in a Speculative Out-of-Order Processor · MICRO 2019
Processor architecture and microarchitecture
out-of-order execution
0.112019
MI6: Secure Enclaves in a Speculative Out-of-Order Processor · MICRO 2019
Processor architecture and microarchitecture
speculative execution
0.112019
MI6: Secure Enclaves in a Speculative Out-of-Order Processor · MICRO 2019
Reconfigurable computing and FPGAs
FPGA prototyping
0.112018
Composable Building Blocks to Open up Processor Design · MICRO 2018
Parallel and multicore computing › multiprocessor system
shared-memory multiprocessor
0.112018
Constructing a Weak Memory Model · ISCA 2018
Reconfigurable computing and FPGAs › multi-FPGA system
inter-FPGA communication
0.112016
HGum: Messaging Framework for Hardware Accelerators (Abstact Only) · FPGA 2016

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

simulation · 0.7operational semantics · 0.7hardware-accelerated external sorting · 0.7axiomatic semantics · 0.7atomic rule composition · 0.3RTL generation · 0.3interface definition language · 0.2algorithmic schema parsing · 0.2
YearPublicationVenuePosition
2019 MI6: Secure Enclaves in a Speculative Out-of-Order Processor
abstract
Recent attacks have broken process isolation by exploiting microarchitectural side channels that allow indirect access to shared microarchitectural state. Enclaves strengthen the process abstraction to restore isolation guarantees.
Thomas Bourgeat, Ilia A. Lebedev, Andrew Wright, Sizhuo Zhang, Arvind 0001, Srini Devadas
MICRO4
2018 GraFBoost: Using Accelerated Flash Storage for External Graph Analytics
abstract
We describe GraFBoost, a flash-based architecture with hardware acceleration for external analytics of multi-terabyte graphs. We compare the performance of GraFBoost with 1 GB of DRAM against various state-of-the-art graph analytics software including FlashGraph, running on a 32-thread Xeon server with 128 GB of DRAM. We demonstrate that despite the relatively small amount of DRAM, GraFBoost achieves high performance with very large graphs no other system can handle, and rivals the performance of the fastest software platforms on sizes of graphs that existing platforms can handle. Unlike in-memory and semi-external systems, GraFBoost uses a constant amount of memory for all problems, and its performance decreases very slowly as graph sizes increase, allowing GraFBoost to scale to much larger problems than possible with existing systems while using much less resources on a single-node system. The key component of GraFBoost is the sort-reduce accelerator, which implements a novel method to sequentialize fine-grained random accesses to flash storage. The sort-reduce accelerator logs random update requests and then uses hardware-accelerated external sorting with interleaved reduction functions. GraFBoost also stores newly updated vertex values generated in each superstep of the algorithm lazily with the old vertex values to further reduce I/O traffic. We evaluate the performance of GraFBoost for PageRank, breadth-first search and betweenness centrality on our FPGA-based prototype (Xilinx VC707 with 1 GB DRAM and 1 TB flash) and compare it to other graph processing systems including a pure software implementation of GrapFBoost.
Sang Woo Jun, Andy Wright, Sizhuo Zhang, Shuotao Xu, Arvind 0001
ISCA3
2018 Constructing a Weak Memory Model
abstract
Weak memory models are a consequence of the desire on part of architects to preserve all the uniprocessor optimizations while building a shared memory multiprocessor. The efforts to formalize weak memory models of ARM and POWER over the last decades are mostly empirical – they try to capture empirically observed behaviors – and end up providing no insight into the inherent nature of weak memory models. This paper takes a constructive approach to find a common base for weak memory models: we explore what a weak memory would look like if we constructed it with the explicit goal of preserving all the uniprocessor optimizations. We will disallow some optimizations which break a programmer's intuition in highly unexpected ways. The constructed model, which we call General Atomic Memory Model (GAM), allows all four load/store reorderings. We give the construction procedure of GAM, and provide insights which are used to define its operational and axiomatic semantics. Though no attempt is made to match GAM to any existing weak memory model, we show by simulation that GAM has comparable performance with other models. No deep knowledge of memory models is needed to read this paper.
Sizhuo Zhang, Muralidaran Vijayaraghavan, Andrew Wright, Mehdi Alipour, Arvind 0001
ISCA1
2018 Composable Building Blocks to Open up Processor Design
abstract
We present a framework called Composable Modular Design (CMD) to facilitate the design of out-of-order (OOO) processors. In CMD, (1) The interface methods of modules provide instantaneous access and perform atomic updates to the state elements inside the module; (2) Every interface method is guarded, i.e., it cannot be applied unless it is ready; and (3) Modules are composed together by atomic rules which call interface methods of different modules. A rule either successfully updates the state of all the called modules or it does nothing. CMD designs are compiled into RTL which can be run on FPGAs or synthesized using standard ASIC design flows. The atomicity properties of interfaces in CMD ensures composability when selected modules are refined selectively. We show the efficacy of CMD by building a parameterized out-of-order RISC-V processor which boots Linux and runs on FPGAs at 25 MHz to 40 MHz. We also synthesized several variants of it in a 32 nm technology to run at 1 GHz to 1.1 GHz. Performance evaluation shows that our processor beats in-order processors in terms of IPC but will require more architectural work to compete with wider superscalar commercial ARM processors. Modules designed under the CMD framework (e.g., ROB, reservation stations, load store unit) can be used and refined by other implementations. We believe that this realistic framework can revolutionize architectural research and practice as the library of reusable components grows.
Sizhuo Zhang, Andrew Wright, Thomas Bourgeat, Arvind 0001
MICRO1
2017 Weak Memory Models: Balancing Definitional Simplicity and Implementation Flexibility
abstract
The memory model for RISC-V, a newly developed open source ISA, has not been finalized yet and thus, offers an opportunity to evaluate existing memory models. We believe RISC-V should not adopt the memory models of POWER or ARM, because their axiomatic and operational definitions are too complicated. We propose two new weak memory models: WMM and WMM-S, which balance definitional simplicity and implementation flexibility differently. Both allow all instruction reorderings except overtaking of loads by a store. We show that this restriction has little impact on performance and it considerably simplifies operational definitions. It also rules out the out-of-thin-air problem that plagues many definitions. WMM is simple (it is similar to the Alpha memory model), but it disallows behaviors arising due to shared store buffers and shared write-through caches (which are seen in POWER processors). WMM-S, on the other hand, is more complex and allows these behaviors. We give the operational definitions of both models using Instantaneous Instruction Execution (I2E), which has been used in the definitions of SC and TSO. We also show how both models can be implemented using conventional cache-coherent memory systems and out-of-order processors, and encompasses the behaviors of most known optimizations.
Sizhuo Zhang, Muralidaran Vijayaraghavan, Arvind 0001
PACT1
2016 HGum: Messaging Framework for Hardware Accelerators (Abstact Only)
abstract
Software messaging frameworks help avoid errors and reduce engineering effort in building distributed systems by (i) providing an interface definition language (IDL) to precisely specify the structure of the message (the message schema) and (ii) automatically generating the serialization and deserialization functions that transform user data structures into binary data for sending across the network and vice versa. Similarly, a hardware-accelerated system that consists of host software and multiple FPGAs, could also benefit from a messaging framework to handle messages both between software and FPGA and also between different FPGAs. The key challenge for a hardware messaging framework is that it must be able to support large messages with complex schema while meeting critical constraints such as clock frequency, area, and throughput. We present HGum, a messaging framework for hardware accelerators that meets all the above requirements. HGum is able to generate high-performance and low-cost hardware logic by employing a novel design that algorithmically parses the message schema to perform serialization and deserialization. Our evaluation of HGum shows that it not only significantly reduces engineering effort but also generates hardware with comparable quality to manual implementation.
Sizhuo Zhang, Hari Angepat, Derek Chiou
FPGA1