@article{21017,
  abstract     = {With the growing interest in blockchains, permissioned approaches to consensus have received increasing attention. Unfortunately, the BFT consensus algorithms that are the backbone of most of these blockchains scale poorly and offer limited throughput. In fact, many state-of-the-art BFT consensus algorithms require a single leader process to receive and validate votes from a quorum of processes and then broadcast the result, which is inherently non-scalable. Recent approaches avoid this bottleneck by using dissemination/aggregation trees to propagate values and collect and validate votes. However, the use of trees increases the round latency, which limits the throughput for deeper trees. In this paper we propose Kauri, a BFT communication abstraction that sustains high throughput as the system size grows by leveraging a novel pipelining technique to perform scalable dissemination and aggregation on trees. Furthermore, when the number of faults is moderate (arguably the most common case in practice), our construction is able to recover from faults in an optimal number of reconfiguration steps. We implemented and experimentally evaluated Kauri with up to 800 processes. Our results show that Kauri outperforms the throughput of state-of-the-art permissioned blockchain protocols, by up to 58x without compromising latency. Interestingly, in some cases, the parallelization provided by Kauri can also decrease the latency.},
  author       = {Neiheiser, Ray and Matos, Miguel and Rodrigues, Luis},
  issn         = {1557-7333},
  journal      = {ACM Transactions on Computer Systems},
  keywords     = {Distributed systems, byzantine fault tolerance, blockchain, vote aggregation, pipelining},
  number       = {2},
  publisher    = {Association for Computing Machinery},
  title        = {{Kauri: BFT consensus with pipelined tree-based dissemination and aggregation}},
  doi          = {10.1145/3769423},
  volume       = {44},
  year         = {2026},
}

@article{18237,
  abstract     = {We present a novel method for neural network quantization. Our method, named UNIQ, emulates a non-uniform k-quantile quantizer and adapts the model to perform well with quantized weights by injecting noise to the weights at training time. As a by-product of injecting noise to weights, we find that activations can also be quantized to as low as 8-bit with only a minor accuracy degradation. Our non-uniform quantization approach provides a novel alternative to the existing uniform quantization techniques for neural networks. We further propose a novel complexity metric of number of bit operations performed (BOPs), and we show that this metric has a linear relation with logic utilization and power. We suggest evaluating the trade-off of accuracy vs. complexity (BOPs). The proposed method, when evaluated on ResNet18/34/50 and MobileNet on ImageNet, outperforms the prior state of the art both in the low-complexity regime and the high accuracy regime. We demonstrate the practical applicability of this approach, by implementing our non-uniformly quantized CNN on FPGA.},
  author       = {Baskin, Chaim and Liss, Natan and Schwartz, Eli and Zheltonozhskii, Evgenii and Giryes, Raja and Bronstein, Alexander and Mendelson, Avi},
  issn         = {1557-7333},
  journal      = {ACM Transactions on Computer Systems},
  number       = {1-4},
  pages        = {1--15},
  publisher    = {Association for Computing Machinery},
  title        = {{UNIQ: Uniform Noise Injection for Non-Uniform Quantization of neural networks}},
  doi          = {10.1145/3444943},
  volume       = {37},
  year         = {2021},
}

@article{11666,
  abstract     = {This article describes the Digital Continuous Profiling Infrastructure, a sampling-based profiling system designed to run continuously on production systems. The system supports multiprocessors, works on unmodified executables, and collects profiles for entire systems, including user programs, shared libraries, and the operating system kernel. Samples are collected at a high rate (over 5200 samples/sec. per 333MHz processor), yet with low overhead (1–3% slowdown for most workloads). Analysis tools supplied with the profiling system use the sample data to produce a precise and accurate accounting, down to the level of pipeline stalls incurred by individual instructions, of where time is bring spent. When instructions incur stalls, the tools identify possible reasons, such as cache misses, branch mispredictions, and functional unit contention. The fine-grained instruction-level analysis guides users and automated optimizers to the causes of performance problems and provides important insights for fixing them.},
  author       = {Anderson, Jennifer M. and Berc, Lance M. and Dean, Jeffrey and Ghemawat, Sanjay and Henzinger, Monika H and Leung, Shun-Tak A. and Sites, Richard L. and Vandevoorde, Mark T. and Waldspurger, Carl A. and Weihl, William E.},
  issn         = {1557-7333},
  journal      = {ACM Transactions on Computer Systems},
  number       = {4},
  pages        = {357--390},
  publisher    = {Association for Computing Machinery},
  title        = {{Continuous profiling: Where have all the cycles gone?}},
  doi          = {10.1145/265924.265925},
  volume       = {15},
  year         = {1997},
}

