70,602 research outputs found
Evaluating local indirect addressing in SIMD proc essors
In the design of parallel computers, there exists a tradeoff between the number and power of individual processors. The single instruction stream, multiple data stream (SIMD) model of parallel computers lies at one extreme of the resulting spectrum. The available hardware resources are devoted to creating the largest possible number of processors, and consequently each individual processor must use the fewest possible resources. Disagreement exists as to whether SIMD processors should be able to generate addresses individually into their local data memory, or all processors should access the same address. The tradeoff is examined between the increased capability and the reduced number of processors that occurs in this single instruction stream, multiple, locally addressed, data (SIMLAD) model. Factors are assembled that affect this design choice, and the SIMLAD model is compared with the bare SIMD and the MIMD models
Representations of stream processors using nested fixed points
We define representations of continuous functions on infinite streams of discrete values, both in the case of discrete-valued functions, and in the case of stream-valued functions. We define also an operation on the representations of two continuous functions between streams that yields a representation of their composite. In the case of discrete-valued functions, the representatives are well-founded (finite-path) trees of a certain kind. The underlying idea can be traced back to Brouwer's justification of bar-induction, or to Kreisel and Troelstra's elimination of choice-sequences. In the case of stream-valued functions, the representatives are non-wellfounded trees pieced together in a coinductive fashion from well-founded trees. The definition requires an alternating fixpoint construction of some ubiquity
Stream Processors and Comodels
In 2009, Ghani, Hancock and Pattinson gave a coalgebraic characterisation of stream processors A^? ? B^? drawing on ideas of Brouwerian constructivism. Their stream processors have an intensional character; in this paper, we give a corresponding coalgebraic characterisation of extensional stream processors, i.e., the set of continuous functions A^? ? B^?. Our account sites both our result and that of op. cit. within the apparatus of comodels for algebraic effects originating with Power-Shkaravska
Stream processors and comodels
In 2009, Hancock, Pattinson and Ghani gave a coalgebraic characterisation of
stream processors drawing on ideas of
Brouwerian constructivism. Their stream processors have an intensional
character; in this paper, we give a corresponding coalgebraic characterisation
of extensional stream processors, i.e., the set of continuous functions
. Our account sites both our result and that of
op. cit. within the apparatus of comodels for algebraic effects originating
with Power-Shkaravska. Within this apparatus, the distinction between
intensional and extensional equivalence for stream processors arises in the
same way as the the distinction between bisimulation and trace equivalence for
labelled transition systems and probabilistic generative systems.Comment: 24 pages; v4: final accepted versio
Saber: window-based hybrid stream processing for heterogeneous architectures
Modern servers have become heterogeneous, often combining multicore CPUs with many-core GPGPUs. Such heterogeneous architectures have the potential to improve the performance of data-intensive stream processing applications, but they are not supported by current relational stream processing engines. For an engine to exploit a heterogeneous architecture, it must execute streaming SQL queries with sufficient data-parallelism to fully utilise all available heterogeneous processors, and decide how to use each in the most effective way. It must do this while respecting the semantics of streaming SQL queries, in particular with regard to window handling. We describe SABER, a hybrid high-performance relational stream processing engine for CPUs and GPGPUs. SABER executes windowbased streaming SQL queries in a data-parallel fashion using all available CPU and GPGPU cores. Instead of statically assigning query operators to heterogeneous processors, SABER employs a new adaptive heterogeneous lookahead scheduling strategy, which increases the share of queries executing on the processor that yields the highest performance. To hide data movement costs, SABER pipelines the transfer of stream data between different memory types and the CPU/GPGPU. Our experimental comparison against state-ofthe-art engines shows that SABER increases processing throughput while maintaining low latency for a wide range of streaming SQL queries with small and large windows sizes
Chemical network problems solved on NASA/Goddard's massively parallel processor computer
The single instruction stream, multiple data stream Massively Parallel Processor (MPP) unit consists of 16,384 bit serial arithmetic processors configured as a 128 x 128 array whose speed can exceed that of current supercomputers (Cyber 205). The applicability of the MPP for solving reaction network problems is presented and discussed, including the mapping of the calculation to the architecture, and CPU timing comparisons
On correctness in RDF stream processor benchmarking
Two complementary benchmarks have been proposed so far for the evaluation and continuous improvement of RDF stream processors: SRBench and LSBench. They put a special focus on different features of the evaluated systems, including coverage of the streaming extensions of SPARQL supported by each processor, query processing throughput, and an early analysis of query evaluation correctness, based on comparing the results obtained by different processors for a set of queries. However, none of them has analysed the operational semantics of these processors in order to assess the correctness of query evaluation results. In this paper, we propose a characterization of the operational semantics of RDF stream processors, adapting well-known models used in the stream processing engine community: CQL and SECRET. Through this formalization, we address correctness in RDF stream processor benchmarks, allowing to determine the multiple answers that systems should provide. Finally, we present CSRBench, an extension of SRBench to address query result correctness verification using an automatic method
Stream VByte: Faster Byte-Oriented Integer Compression
Arrays of integers are often compressed in search engines. Though there are
many ways to compress integers, we are interested in the popular byte-oriented
integer compression techniques (e.g., VByte or Google's Varint-GB). They are
appealing due to their simplicity and engineering convenience. Amazon's
varint-G8IU is one of the fastest byte-oriented compression technique published
so far. It makes judicious use of the powerful single-instruction-multiple-data
(SIMD) instructions available in commodity processors. To surpass varint-G8IU,
we present Stream VByte, a novel byte-oriented compression technique that
separates the control stream from the encoded data. Like varint-G8IU, Stream
VByte is well suited for SIMD instructions. We show that Stream VByte decoding
can be up to twice as fast as varint-G8IU decoding over real data sets. In this
sense, Stream VByte establishes new speed records for byte-oriented integer
compression, at times exceeding the speed of the memcpy function. On a 3.4GHz
Haswell processor, it decodes more than 4 billion differentially-coded integers
per second from RAM to L1 cache
- …