English
Related papers

Related papers: Faster Population Counts Using AVX2 Instructions

200 papers

Hardware/Software (HW/SW) co-designed processors provide a promising solution to the power and complexity problems of the modern microprocessors by keeping their hardware simple. Moreover, they employ several runtime optimizations to…

Hardware Architecture · Computer Science 2021-03-01 Rakesh Kumar , Alejandro Martinez , Antonio Gonzalez

Sliding window sums are widely used for string indexing, hashing and time series analysis. We have developed a family of the generic vectorized sliding sum algorithms that provide speedup of O(P/w) for window size $w$ and number of…

Machine Learning · Computer Science 2023-05-29 Roman Snytsar

Some recent processors are not equipped with an integer division unit. Compilers then implement division by a call to a special function supplied by the processor designers, which implements division by a loop producing one bit of quotient…

Logic in Computer Science · Computer Science 2022-07-19 David Monniaux , Alice Pain

Inference algorithms in probabilistic programming languages (PPLs) can be thought of as interpreters, since an inference algorithm traverses a model given evidence to answer a query. As with interpreters, we can improve the efficiency of…

Programming Languages · Computer Science 2016-04-19 Rohin Shah , Emina Torlak , Rastislav Bodik

Population protocols are a distributed computing model appropriate for describing massive numbers of agents with limited computational power. A population protocol "has an initial leader" if every valid initial configuration contains a…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-11-06 Amanda Belleville , David Doty , David Soloveichik

This work introduces lightweight extensions to the RISC-V ISA to boost the efficiency of heavily Quantized Neural Network (QNN) inference on microcontroller-class cores. By extending the ISA with nibble (4-bit) and crumb (2-bit) SIMD…

Hardware Architecture · Computer Science 2020-12-01 Angelo Garofalo , Giuseppe Tagliavini , Francesco Conti , Luca Benini , Davide Rossi

Probabilistic reasoning is an essential tool for robust decision-making systems because of its ability to explicitly handle real-world uncertainty, constraints and causal relations. Consequently, researchers are developing hybrid models by…

Hardware Architecture · Computer Science 2021-03-02 Nimish Shah , Laura I. Galindez Olascoaga , Wannes Meert , Marian Verhelst

Memory and computation efficient deep learning architec- tures are crucial to continued proliferation of machine learning capabili- ties to new platforms and systems. Binarization of operations in convo- lutional neural networks has shown…

Computer Vision and Pattern Recognition · Computer Science 2018-03-23 Jeng-Hau Lin , Yunfan Yang , Rajesh Gupta , Zhuowen Tu

This paper introduces a combinatorial optimization approach to register allocation and instruction scheduling, two central compiler problems. Combinatorial optimization has the potential to solve these problems optimally and to exploit…

Programming Languages · Computer Science 2019-06-21 Roberto Castañeda Lozano , Mats Carlsson , Gabriel Hjort Blindell , Christian Schulte

This work describes the SIMD vectorization of the force calculation of the Lennard-Jones potential with Intel AVX2 and AVX-512 instruction sets. Since the force-calculation kernel of the molecular dynamics method involves indirect access to…

Mathematical Software · Computer Science 2019-02-20 Hiroshi Watanabe , Koh M. Nakagawa

A theoretical memory with limited processing power and internal connectivity at each element is proposed. This memory carries out parallel processing within itself to solve generic array problems. The applicability of this in-memory…

Distributed, Parallel, and Cluster Computing · Computer Science 2010-09-28 Chengpu Wang

Transformers are central in modern natural language processing and computer vision applications. Despite recent works devoted to reducing the quadratic cost of such models (as a function of the sequence length), dealing with ultra long…

Computation and Language · Computer Science 2023-05-30 Zhanpeng Zeng , Cole Hawkins , Mingyi Hong , Aston Zhang , Nikolaos Pappas , Vikas Singh , Shuai Zheng

An executable binary typically contains a large number of machine instructions. Although the statistics of popular instructions is well known, the distribution of non-popular instructions has been relatively under explored. Our finding…

Software Engineering · Computer Science 2023-10-13 Nozima Murodova , Hyungjoon Koo

In-memory computing (IMC) with single instruction multiple data (SIMD) setup enables memory to perform operations on the stored data in parallel to achieve high throughput and energy saving. To instruct a SIMD IMC hardware to compute a…

Emerging Technologies · Computer Science 2024-12-04 Xingyue Qian , Chenyang Lv , Zhezhi He , Weikang Qian

Given a graph stream, how can we estimate the number of triangles in it using multiple machines with limited storage? Specifically, how should edges be processed and sampled across the machines for rapid and accurate estimation? The count…

Databases · Computer Science 2021-03-02 Kijung Shin , Euiwoong Lee , Jinoh Oh , Mohammad Hammoud , Christos Faloutsos

To drive progress in science and engineering, large language models (LLMs) must be able to process large amounts of numerical data and solve long calculations efficiently. This is currently only possible through the use of external tools or…

Machine Learning · Computer Science 2026-05-21 Linus Kreitner , Paul Hager , Jonathan Mengedoht , Georgios Kaissis , Daniel Rueckert , Martin J. Menten

We introduce the new concept of computation coding. Similar to how rate-distortion theory is concerned with the lossy compression of data, computation coding deals with the lossy computation of functions. Particularizing to linear…

Information Theory · Computer Science 2021-02-02 Ralf Müller , Bernhard Gäde , Ali Bereyhi

This paper examines an algorithm using dual OpenCL image buffers to optimize data streaming for ensemble processing and visualization. Image buffers were utilized because they allow cached memory access, unlike simple data buffers, which…

Graphics · Computer Science 2021-05-03 Donald W. Johnson , T. J. Jankun-Kelly

We consider the problem of coded distributed computing where a large linear computational job, such as a matrix multiplication, is divided into $k$ smaller tasks, encoded using an $(n,k)$ linear code, and performed over $n$ distributed…

Information Theory · Computer Science 2019-06-25 Mohammad Vahid Jamali , Mahdi Soleymani , Hessam Mahdavifar

We propose a routing algorithm that takes a sequence of vectors and computes a new sequence with specified length and vector size. Each output vector maximizes "bang per bit," the difference between a net benefit to use and net cost to…

Machine Learning · Computer Science 2022-12-23 Franz A. Heinsen