AsicBoost A Speedup for Bitcoin Mining
|
|
|
- Eunice Boone
- 9 years ago
- Views:
Transcription
1 AsicBoost A Speedup for Bitcoin Mining Dr. Timo Hanke March 31, 2016 (rev. 5) Abstract. AsicBoost is a method to speed up Bitcoin mining by a factor of approximately 20%. The performance gain is achieved through a high level optimization of the Bitcoin mining algorithm which allows for drastic reduction in gate count on the mining chip. AsicBoost is applicable to all types of mining hardware and chip designs. This paper presents the idea behind the method and describes the information flow in implementations of AsicBoost. 1 Introduction AsicBoost is a method to speed up Bitcoin mining by a factor of approximately 20%. AsicBoost is an algorithmic optimization and therefore applicable to all types of mining hardware. The AsicBoost method is based on a new way to process work items inside and outside of the Bitcoin mining ASIC. It involves a new design of the SHA 256 hash engines (inside the ASIC) and an additional pre processing step as part of the mining software (outside the ASIC). The result is a performance improvement of up to 20% achieved through a reduction of gate count on the silicon. The purpose of this paper is to present the idea behind the method and to describe the information flow in implementations of AsicBoost. The hash engine design required for AsicBoost is compatible with design philosophies such as pipelined ( unrolled ) cores and non pipelined ( rolled ) cores. The performance gains can be achieved on top of all low level optimizations regarding timing, pipelining, path balancing, custom cell and full custom designs, etc. Through gate count reduction on the silicon AsicBoost improves two essential Bitcoin mining cost metrics simultaneously and by a similar factor: the energy consumption (Joule per Gh) and the system cost ($ per Gh/s). With the system cost being proportional to the capital expenses of a Bitcoin mine and the energy consumption being proportional to its operating expenses, AsicBoost reduces the total cost per bitcoin mined by approximately 20%. For the Bitcoin mines of the future AsicBoost will make all the difference between a profitable and an unprofitable mine. A thorough analysis of all algorithmic Bitcoin mining optimizations before AsicBoost has been done in [5]. The fact that [5] estimates the combined performance gain of all optimizations it 1
2 describes at 7% demonstrates the significance of AsicBoost. Moreover, some of the previous optimizations are compatible with AsicBoost in a way that their performance gains add up. The AsicBoost method was invented by Timo Hanke in collaboration with Sergio Demian Lerner and is patent pending. 2 Preliminaries on Bitcoin Mining 2.1 SHA 256 SHA 256 is a cryptographic hash function from the SHA 2 family defined by NIST [1]. The SHA 256 digest of a message is calculated based on dividing the message into chunks of 64 bytes each, and processing the chunks consecutively through a state machine. The final state after having processed all chunks yields the SHA digest of the original message. During processing, each chunk is run through a message expander function which produces a 1 corresponding message schedule of 64 words. The message schedule is then fed into a compressor function which changes its internal state in the process of consuming the message schedule in 64 rounds, one word at a time. The compressor s state after having processed all message schedules derived from all chunks of the original message turns into the final hash digest of the original message. Fig. 1. SHA A word is 4 bytes. 2
3 2.2 The Bitcoin block header Bitcoin has been introduced by S. Nakamoto in [2]. A good source for Bitcoin s protocol specification and technical descriptions is the Bitcoin wiki [3]. Of specific relevance to this paper is the Block hashing algorithm described in [4]. In Bitcoin mining, the message to be hashed is the block header. A Bitcoin block header is 80 bytes long and is divided into two chunks as follows, the second chunk being padded to a length of 64 bytes: Chunk 1 Chunk 2 Block header Padding Block header candidate Nonce Version Previous hash Head Merkle root Tail Time stamp Bits (difficulty) 4 bytes 32 bytes 28 bytes 4 bytes 4 bytes 4 bytes 4 bytes 48 bytes 2 Message Fig. 2. The Bitcoin Block Header 2.3 Bitcoin s mining function Bitcoin s mining function processes block headers with a double SHA, and the resulting information flow for both chunks through the double SHA is shown in Fig. 3 below. 2 The first 12 bytes of Chunk 2 are called Message for the purpose of this document. 3
4 Fig 3. Bitcoin s Double SHA The resulting double SHA digest is compared against the target range based on the current network difficulty, and if a match is found then the block header (including the Nonce that produced the match) is broadcast to the Bitcoin network. 2.4 Scanning the Nonce range The Bitcoin mining process selects a block header candidate, loops over the whole Nonce range and filters out the Nonces that produce a double SHA digest matching the target. When the Nonce range is exhausted a new block header candidate is selected. The part of the computation that is repeated in the loop over the Nonce range is depicted in red in Fig. 3. This part depends on the Nonce. The green part of Fig. 3 is not repeated in the loop as it depends only on the block header candidate, not on the Nonce. The loop over the Nonce range starts out with this information, together called a Work item : Mid state Message The Mid state is the output of the green compressor function. The Message is the part of Chunk 2 that depends on the block header candidate. The Message excludes the Nonce (which is selected inside the loop) and the padding (which is constant). 4
5 In light of this, the following diagram shows the core part of the computation involved in Bitcoin mining, or the Bitcoin mining loop : Fig. 4. Bitcoin s Mining Loop The components shown in red lie in the inner loop and update at high frequency. The components shown in green lie in the outer loop and update less frequently. All Bitcoin mining ASICs process only the inner loop internally. The work items are pre computed and passed to the ASIC from outside. 2.5 Building work items Each work item is constructed from a new block header candidate which in turn is constructed from a new Merkle root. Since the Merkle root spans both chunks of the block header (see Fig. 2), updating the Merkle root affects both components of the work item: Midstate (depending on chunk 1) and Message (depending on chunk 2). Therefore, it is usually not the case that different work items share either of the two components. This is the reason why the information in Message Schedule 1 of Fig. 4 cannot be re used across the processing of multiple work items. 3 AsicBoost 3.1 Colliding work items AsicBoost achieves its performance gain by highly re using Message Schedule 1 across multiple work items. In order to do so, AsicBoost generates many block header candidates that 5
6 all share a common Message part. We speak of block header candidates as colliding if they collide in the Message part, or, in other words, if they differ from each other only in chunk 1. The work items derived from colliding block header candidates all share a common Message component and differ only in the Mid state component. We speak of work items as colliding if they collide in the Message component. 3.2 The AsicBoost Loop A set of colliding block headers allows AsicBoos t to swap the inner and outer mining loops as shown in Fig. 5 below. The Message is constant throughout the processing of the entire set of colliding block headers. AsicBoost s inner loop iterates over the Mid states of all colliding block headers. The Nonce is now updated in the outer loop rather than the inner loop. Message schedule 1 is updated less frequently and its information is re used across multiple Mid states. Fig. 5. AsicBoost s Mining Loop 3.3 The AsicBoost Gain The AsicBoost method eliminates the Expander 1 function from the inner loop, leaving only Compressor 1, Expander 2 and Compressor 2 to be processed at high frequency. Since each of the four functions have similar complexity, up to one quarter of the total computational work can be saved by this approach. The exact gain depends on the size of the set of colliding work items. Suppose the Expander 1 takes percent of the computational work of the four functions combined. Having colliding x n work items then gives a total gain of x (n 1 )/n percent. Assuming for simplicity that Expander 1 is one quarter of the four functions combined, then we get: 6
7 Number of colliding work items ( n ) Gain in percent Fig. 6. AsicBoost Gain Percentage For comparison, [5] estimates the combined performance gain from all previously known optimizations to be 7%. The implementation of AsicBoost in a mining chip is discussed in section 3.5 below. Some forms of ASIC implementation have to be designed for a specific value of n. It should be noted that AsicBoost can also be implemented in software, e.g. on GPUs. In fact, the availability of random access memory makes the implementation very easy and straight forward without incurring much overhead. 3.4 Building colliding block header candidates Merkle root collisions There are several ways to produce block header candidates that differ only in chunk 1. One way is to calculate many merkle roots at random and filter them based on their last 4 bytes until sufficiently many are found that collide in their last 4 bytes. There are a number of trade offs to be considered when filtering for collisions. The optimal process depends on the targeted value for n and the number and speed of the hashing cores to be served. We will not discuss the optimal solution in this paper, but further information can be provided by the author on request. There are several methods to calculate merkle tree roots that are more efficient than changing the coinbase field. One method is based on permuting the order of transactions inside the block, or, in other words, permuting the leafs of the merkle tree. We will not discuss the optimal solution in this paper, but further information can be provided by the author on request Alternatives Another, more efficient way to produce colliding block headers is by using bits inside Chunk 1 but outside the merkle root that are free for the miner to choose. This does not require finding any merkle root collisions. Instead, one merkle root is chosen and fixed. The free bits are then updated in a loop and the respective Mid states are computed from Chunk 1. Each Mid state obtained in this way gives a new colliding work item, so that this method is extremely efficient. 7
8 While the Bitcoin protocol currently does not define any bits outside the merkle root as free, there are hardfork proposals that would make a number of bits at the beginning of the Previous hash component free. These bits are currently always zero and the proposal would re define them as an extra nonce. 3.5 AsicBoost chip design A Bitcoin mining ASIC consists of several hashing cores that work in parallel, either simultaneously on the same work item or each on on their own work item. The block diagram of a traditional hashing core looks identical to what is shown in Fig. 4 as the Inner Mining Loop. For a description of a traditional mining chip also see [6] The Multi Core Design The easiest way to adopt AsicBoost is to share an Expander 1 block among two or more hashing cores. An example for two cores is shown in Fig. 7 below, where two cores sharing an Expander 1 turn into a single unit called a Duo core. In this design, the Mid state generation is kept outside of the ASIC and the work distribution on the chip is equivalent to the work distribution on a traditional chip. Fig. 7. AsicBoost Duo core The example of Fig. 7 can be generalized from a Duo core to a Multi Core in which the Expander 1 output is shared among n cores. The expected performance gain can be seen in Fig. 6 above and is about 12.5% in the case of Duo cores. 8
9 There are a number of trade offs to be considered when designing Multi Cores. The optimal implementation and optimal value for n will depend on many low level factors of the original hashing core design. The details are beyond the scope of this paper, but further information can be provided by the author on request The Low Toggle Design In another implementation each core has its own Expander 1 logic, but this logic is toggling at lower frequency. An example is shown in Fig. 8 below. Multiple Mid states are fed to the core and are processed completely before the Nonce updates. When the Nonce has updated the same set of Mid states can be processed again. The Expander 1 logic toggles only when the Nonce or the Message updates, saving most of the energy that would otherwise be consumed by Expander 1. Fig. 8. AsicBoost Low Toggle Core There are a number of trade offs to be considered regarding the distribution of multiple Mid states at high speed to the cores. The optimal implementation will depend on many low level factors of the original hashing core design. The details are beyond the scope of this paper, but further information can be provided by the author on request. 9
10 4 References 1. SHA 2, Wikipedia, Bitcoin: A Peer to Peer Electronic Cash System, Satoshi Nakamoto, White paper, 2008, 3. Bitcoin wiki, 4. Block hashing algorithm, Bitcoin wiki, 5. Optimising the SHA256 Hashing Algorithm for Faster and More Efficient Bitcoin Mining, R. Naik, MSc thesis, Goldstrike 1: CoinTerra's First Generation Cryptocurrency Mining Processor for Bitcoin, IEEE Micro 35 (2), J. Barkatullah and T. Hanke, Contact: Dr. Timo Hanke 10
Parallel AES Encryption with Modified Mix-columns For Many Core Processor Arrays M.S.Arun, V.Saminathan
Parallel AES Encryption with Modified Mix-columns For Many Core Processor Arrays M.S.Arun, V.Saminathan Abstract AES is an encryption algorithm which can be easily implemented on fine grain many core systems.
Using the Bitcoin Blockchain for secure, independently verifiable, electronic votes. Pierre Noizat - July 2014
Using the Bitcoin Blockchain for secure, independently verifiable, electronic votes. Pierre Noizat - July 2014 The problem with proprietary voting systems Existing electronic voting systems all suffer
Hash Function JH and the NIST SHA3 Hash Competition
Hash Function JH and the NIST SHA3 Hash Competition Hongjun Wu Nanyang Technological University Presented at ACNS 2012 1 Introduction to Hash Function Hash Function Design Basics Hash function JH Design
MOMENTUM - A MEMORY-HARD PROOF-OF-WORK VIA FINDING BIRTHDAY COLLISIONS. DANIEL LARIMER [email protected] Invictus Innovations, Inc
MOMENTUM - A MEMORY-HARD PROOF-OF-WORK VIA FINDING BIRTHDAY COLLISIONS DANIEL LARIMER [email protected] Invictus Innovations, Inc ABSTRACT. We introduce the concept of memory-hard proof-of-work
BitIodine: extracting intelligence from the Bitcoin network
BitIodine: extracting intelligence from the Bitcoin network Michele Spagnuolo http://miki.it [email protected] @mikispag Bitcoin BitIodine About Bitcoin Decentralized, global digital currency A global
Implementation of Full -Parallelism AES Encryption and Decryption
Implementation of Full -Parallelism AES Encryption and Decryption M.Anto Merline M.E-Commuication Systems, ECE Department K.Ramakrishnan College of Engineering-Samayapuram, Trichy. Abstract-Advanced Encryption
A PPENDIX H RITERIA FOR AES E VALUATION C RITERIA FOR
A PPENDIX H RITERIA FOR AES E VALUATION C RITERIA FOR William Stallings Copyright 20010 H.1 THE ORIGINS OF AES...2 H.2 AES EVALUATION...3 Supplement to Cryptography and Network Security, Fifth Edition
OSPF Version 2 (RFC 2328) Describes Autonomous Systems (AS) topology. Propagated by flooding: Link State Advertisements (LSAs).
OSPF Version 2 (RFC 2328) Interior gateway protocol (IGP). Routers maintain link-state database. Describes Autonomous Systems (AS) topology. Propagated by flooding: Link State Advertisements (LSAs). Router
Orwell. From Bitcoin to secure Domain Name System
Orwell. From Bitcoin to secure Domain Name System Michał Jabczyński, Michał Szychowiak Poznań University of Technology Piotrowo 2, 60-965 Poznań, Poland {Michal.Jabczynski, Michal.Szychowiak}@put.poznan.pl
Transport Layer Protocols
Transport Layer Protocols Version. Transport layer performs two main tasks for the application layer by using the network layer. It provides end to end communication between two applications, and implements
Record Storage and Primary File Organization
Record Storage and Primary File Organization 1 C H A P T E R 4 Contents Introduction Secondary Storage Devices Buffering of Blocks Placing File Records on Disk Operations on Files Files of Unordered Records
Merkle Hash Trees for Distributed Audit Logs
Merkle Hash Trees for Distributed Audit Logs Subject proposed by Karthikeyan Bhargavan [email protected] April 7, 2015 Modern distributed systems spread their databases across a large number
Performance Tuning for the Teradata Database
Performance Tuning for the Teradata Database Matthew W Froemsdorf Teradata Partner Engineering and Technical Consulting - i - Document Changes Rev. Date Section Comment 1.0 2010-10-26 All Initial document
Let s put together a Manual Processor
Lecture 14 Let s put together a Manual Processor Hardware Lecture 14 Slide 1 The processor Inside every computer there is at least one processor which can take an instruction, some operands and produce
SkyRecon Cryptographic Module (SCM)
SkyRecon Cryptographic Module (SCM) FIPS 140-2 Documentation: Security Policy Abstract This document specifies the security policy for the SkyRecon Cryptographic Module (SCM) as described in FIPS PUB 140-2.
CHAPTER 1 INTRODUCTION
1 CHAPTER 1 INTRODUCTION 1.1 MOTIVATION OF RESEARCH Multicore processors have two or more execution cores (processors) implemented on a single chip having their own set of execution and architectural recourses.
Chapter 13: Query Processing. Basic Steps in Query Processing
Chapter 13: Query Processing! Overview! Measures of Query Cost! Selection Operation! Sorting! Join Operation! Other Operations! Evaluation of Expressions 13.1 Basic Steps in Query Processing 1. Parsing
Switch Fabric Implementation Using Shared Memory
Order this document by /D Switch Fabric Implementation Using Shared Memory Prepared by: Lakshmi Mandyam and B. Kinney INTRODUCTION Whether it be for the World Wide Web or for an intra office network, today
Overview of Cryptographic Tools for Data Security. Murat Kantarcioglu
UT DALLAS Erik Jonsson School of Engineering & Computer Science Overview of Cryptographic Tools for Data Security Murat Kantarcioglu Pag. 1 Purdue University Cryptographic Primitives We will discuss the
(Refer Slide Time: 00:01:16 min)
Digital Computer Organization Prof. P. K. Biswas Department of Electronic & Electrical Communication Engineering Indian Institute of Technology, Kharagpur Lecture No. # 04 CPU Design: Tirning & Control
BME Direct Market Access Services the fastest direct access for non member firms
BME Direct Market Access Services the fastest direct access for non member firms BME, through its subsidiary Visual Trader, offers the fastest direct access to the SIBE-Smart platform (Spanish Cash Market)
FPGA area allocation for parallel C applications
1 FPGA area allocation for parallel C applications Vlad-Mihai Sima, Elena Moscu Panainte, Koen Bertels Computer Engineering Faculty of Electrical Engineering, Mathematics and Computer Science Delft University
HASH CODE BASED SECURITY IN CLOUD COMPUTING
ABSTRACT HASH CODE BASED SECURITY IN CLOUD COMPUTING Kaleem Ur Rehman M.Tech student (CSE), College of Engineering, TMU Moradabad (India) The Hash functions describe as a phenomenon of information security
Distributed Public Key Infrastructure via the Blockchain. Sean Pearl [email protected] April 28, 2015
Distributed Public Key Infrastructure via the Blockchain Sean Pearl [email protected] April 28, 2015 Overview Motivation: Electronic Money Example TTP: PayPal Bitcoin (BTC) Background Structure Other
Key Hopping A Security Enhancement Scheme for IEEE 802.11 WEP Standards
White Paper Key Hopping A Security Enhancement Scheme for IEEE 802.11 WEP Standards By Dr. Wen-Ping Ying, Director of Software Development, February 2002 Introduction Wireless LAN networking allows the
The implementation and performance/cost/power analysis of the network security accelerator on SoC applications
The implementation and performance/cost/power analysis of the network security accelerator on SoC applications Ruei-Ting Gu [email protected] Kuo-Huang Chung [email protected]
Availability Digest. www.availabilitydigest.com. Data Deduplication February 2011
the Availability Digest Data Deduplication February 2011 What is Data Deduplication? Data deduplication is a technology that can reduce disk storage-capacity requirements and replication bandwidth requirements
Cryptographic Algorithms and Key Size Issues. Çetin Kaya Koç Oregon State University, Professor http://islab.oregonstate.edu/koc [email protected].
Cryptographic Algorithms and Key Size Issues Çetin Kaya Koç Oregon State University, Professor http://islab.oregonstate.edu/koc [email protected] Overview Cryptanalysis Challenge Encryption: DES AES Message
Programming NAND devices
Technical Guide Programming NAND devices Kelly Hirsch, Director of Advanced Technology, Data I/O Corporation Recent Design Trends In the past, embedded system designs have used NAND devices for storing
Computer Architecture
Computer Architecture Slide Sets WS 2013/2014 Prof. Dr. Uwe Brinkschulte M.Sc. Benjamin Betting Part 11 Memory Management Computer Architecture Part 11 page 1 of 44 Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin
FPGA Implementation of an Advanced Traffic Light Controller using Verilog HDL
FPGA Implementation of an Advanced Traffic Light Controller using Verilog HDL B. Dilip, Y. Alekhya, P. Divya Bharathi Abstract Traffic lights are the signaling devices used to manage traffic on multi-way
Comp 5311 Database Management Systems. 16. Review 2 (Physical Level)
Comp 5311 Database Management Systems 16. Review 2 (Physical Level) 1 Main Topics Indexing Join Algorithms Query Processing and Optimization Transactions and Concurrency Control 2 Indexing Used for faster
A NEW HASH ALGORITHM: Khichidi-1
A NEW HASH ALGORITHM: Khichidi-1 Abstract This is a technical document describing a new hash algorithm called Khichidi-1 and has been written in response to a Hash competition (SHA-3) called by National
Victor Shoup Avi Rubin. fshoup,[email protected]. Abstract
Session Key Distribution Using Smart Cards Victor Shoup Avi Rubin Bellcore, 445 South St., Morristown, NJ 07960 fshoup,[email protected] Abstract In this paper, we investigate a method by which smart
Secure Cloud Storage and Computing Using Reconfigurable Hardware
Secure Cloud Storage and Computing Using Reconfigurable Hardware Victor Costan, Brandon Cho, Srini Devadas Motivation Computing is more cost-efficient in public clouds but what about security? Cloud Applications
Quiz for Chapter 1 Computer Abstractions and Technology 3.10
Date: 3.10 Not all questions are of equal difficulty. Please review the entire quiz first and then budget your time carefully. Name: Course: Solutions in Red 1. [15 points] Consider two different implementations,
Bringing Big Data Modelling into the Hands of Domain Experts
Bringing Big Data Modelling into the Hands of Domain Experts David Willingham Senior Application Engineer MathWorks [email protected] 2015 The MathWorks, Inc. 1 Data is the sword of the
HY345 Operating Systems
HY345 Operating Systems Recitation 2 - Memory Management Solutions Panagiotis Papadopoulos [email protected] Problem 7 Consider the following C program: int X[N]; int step = M; //M is some predefined constant
Top Ten Questions. to Ask Your Primary Storage Provider About Their Data Efficiency. May 2014. Copyright 2014 Permabit Technology Corporation
Top Ten Questions to Ask Your Primary Storage Provider About Their Data Efficiency May 2014 Copyright 2014 Permabit Technology Corporation Introduction The value of data efficiency technologies, namely
Am186ER/Am188ER AMD Continues 16-bit Innovation
Am186ER/Am188ER AMD Continues 16-bit Innovation 386-Class Performance, Enhanced System Integration, and Built-in SRAM Problem with External RAM All embedded systems require RAM Low density SRAM moving
Network Security CS 5490/6490 Fall 2015 Lecture Notes 8/26/2015
Network Security CS 5490/6490 Fall 2015 Lecture Notes 8/26/2015 Chapter 2: Introduction to Cryptography What is cryptography? It is a process/art of mangling information in such a way so as to make it
Q. Consider a dynamic instruction execution (an execution trace, in other words) that consists of repeats of code in this pattern:
Pipelining HW Q. Can a MIPS SW instruction executing in a simple 5-stage pipelined implementation have a data dependency hazard of any type resulting in a nop bubble? If so, show an example; if not, prove
Symbol Tables. Introduction
Symbol Tables Introduction A compiler needs to collect and use information about the names appearing in the source program. This information is entered into a data structure called a symbol table. The
SHA3 WHERE WE VE BEEN WHERE WE RE GOING
SHA3 WHERE WE VE BEEN WHERE WE RE GOING Bill Burr May 1, 2013 updated version of John Kelsey s RSA2013 presentation Overview of Talk Where We ve Been: Ancient history 2004 The Competition Where We re Going
Analysis of Micromouse Maze Solving Algorithms
1 Analysis of Micromouse Maze Solving Algorithms David M. Willardson ECE 557: Learning from Data, Spring 2001 Abstract This project involves a simulation of a mouse that is to find its way through a maze.
The World of Emerging Payment Systems A Brief Introduction
The World of Emerging Payment Systems A Brief Introduction Joseph M. Vincent Director of Regulatory & Legal Affairs Washington State Department of Financial Institutions Presentation to Financial Management
GPU File System Encryption Kartik Kulkarni and Eugene Linkov
GPU File System Encryption Kartik Kulkarni and Eugene Linkov 5/10/2012 SUMMARY. We implemented a file system that encrypts and decrypts files. The implementation uses the AES algorithm computed through
IMPROVING PERFORMANCE OF RANDOMIZED SIGNATURE SORT USING HASHING AND BITWISE OPERATORS
Volume 2, No. 3, March 2011 Journal of Global Research in Computer Science RESEARCH PAPER Available Online at www.jgrcs.info IMPROVING PERFORMANCE OF RANDOMIZED SIGNATURE SORT USING HASHING AND BITWISE
Bitcoin: A Peer-to-Peer Electronic Cash System
Bitcoin: A Peer-to-Peer Electronic Cash System Satoshi Nakamoto [email protected] www.bitcoin.org Abstract. A purely peer-to-peer version of electronic cash would allow online payments to be sent directly
Network Security Technology Network Management
COMPUTER NETWORKS Network Security Technology Network Management Source Encryption E(K,P) Decryption D(K,C) Destination The author of these slides is Dr. Mark Pullen of George Mason University. Permission
Using In-Memory Computing to Simplify Big Data Analytics
SCALEOUT SOFTWARE Using In-Memory Computing to Simplify Big Data Analytics by Dr. William Bain, ScaleOut Software, Inc. 2012 ScaleOut Software, Inc. 12/27/2012 T he big data revolution is upon us, fed
Tackling Big Data with MATLAB Adam Filion Application Engineer MathWorks, Inc.
Tackling Big Data with MATLAB Adam Filion Application Engineer MathWorks, Inc. 2015 The MathWorks, Inc. 1 Challenges of Big Data Any collection of data sets so large and complex that it becomes difficult
A PERFORMANCE EVALUATION OF COMMON ENCRYPTION TECHNIQUES WITH SECURE WATERMARK SYSTEM (SWS)
A PERFORMANCE EVALUATION OF COMMON ENCRYPTION TECHNIQUES WITH SECURE WATERMARK SYSTEM (SWS) Ashraf Odeh 1, Shadi R.Masadeh 2, Ahmad Azzazi 3 1 Computer Information Systems Department, Isra University,
Length extension attack on narrow-pipe SHA-3 candidates
Length extension attack on narrow-pipe SHA-3 candidates Danilo Gligoroski Department of Telematics, Norwegian University of Science and Technology, O.S.Bragstads plass 2B, N-7491 Trondheim, NORWAY [email protected]
Binary search tree with SIMD bandwidth optimization using SSE
Binary search tree with SIMD bandwidth optimization using SSE Bowen Zhang, Xinwei Li 1.ABSTRACT In-memory tree structured index search is a fundamental database operation. Modern processors provide tremendous
Query Processing C H A P T E R12. Practice Exercises
C H A P T E R12 Query Processing Practice Exercises 12.1 Assume (for simplicity in this exercise) that only one tuple fits in a block and memory holds at most 3 blocks. Show the runs created on each pass
Hash-based Digital Signature Schemes
Hash-based Digital Signature Schemes Johannes Buchmann Erik Dahmen Michael Szydlo October 29, 2008 Contents 1 Introduction 2 2 Hash based one-time signature schemes 3 2.1 Lamport Diffie one-time signature
A Performance Study of Load Balancing Strategies for Approximate String Matching on an MPI Heterogeneous System Environment
A Performance Study of Load Balancing Strategies for Approximate String Matching on an MPI Heterogeneous System Environment Panagiotis D. Michailidis and Konstantinos G. Margaritis Parallel and Distributed
what operations can it perform? how does it perform them? on what kind of data? where are instructions and data stored?
Inside the CPU how does the CPU work? what operations can it perform? how does it perform them? on what kind of data? where are instructions and data stored? some short, boring programs to illustrate the
Implementation of Canny Edge Detector of color images on CELL/B.E. Architecture.
Implementation of Canny Edge Detector of color images on CELL/B.E. Architecture. Chirag Gupta,Sumod Mohan K [email protected], [email protected] Abstract In this project we propose a method to improve
Section 3. Sensor to ADC Design Example
Section 3 Sensor to ADC Design Example 3-1 This section describes the design of a sensor to ADC system. The sensor measures temperature, and the measurement is interfaced into an ADC selected by the systems
Evaluation of Digital Signature Process
Evaluation of Digital Signature Process Emil SIMION, Ph. D. email: [email protected] Agenda Evaluation of digital signatures schemes: evaluation criteria; security evaluation; security of hash functions;
Module 11. Software Project Planning. Version 2 CSE IIT, Kharagpur
Module 11 Software Project Planning Lesson 29 Staffing Level Estimation and Scheduling Specific Instructional Objectives At the end of this lesson the student would be able to: Identify why careful planning
COMPUTER ORGANIZATION ARCHITECTURES FOR EMBEDDED COMPUTING
COMPUTER ORGANIZATION ARCHITECTURES FOR EMBEDDED COMPUTING 2013/2014 1 st Semester Sample Exam January 2014 Duration: 2h00 - No extra material allowed. This includes notes, scratch paper, calculator, etc.
NAND Flash FAQ. Eureka Technology. apn5_87. NAND Flash FAQ
What is NAND Flash? What is the major difference between NAND Flash and other Memory? Structural differences between NAND Flash and NOR Flash What does NAND Flash controller do? How to send command to
Authentication requirement Authentication function MAC Hash function Security of
UNIT 3 AUTHENTICATION Authentication requirement Authentication function MAC Hash function Security of hash function and MAC SHA HMAC CMAC Digital signature and authentication protocols DSS Slides Courtesy
Computer Basics: Chapters 1 & 2
Computer Basics: Chapters 1 & 2 Definition of a Computer What does IPOS stand for? Input Process Output Storage Other types of Computers Name some examples of other types of computers, other than a typical
Algorithms for Interference Sensing in Optical CDMA Networks
Algorithms for Interference Sensing in Optical CDMA Networks Purushotham Kamath, Joseph D. Touch and Joseph A. Bannister {pkamath, touch, joseph}@isi.edu Information Sciences Institute, University of Southern
IT 3202 Internet Working (New)
[All Rights Reserved] SLIATE SRI LANKA INSTITUTE OF ADVANCED TECHNOLOGICAL EDUCATION (Established in the Ministry of Higher Education, vide in Act No. 29 of 1995) Instructions for Candidates: Answer any
Privacy and Security in library RFID Issues, Practices and Architecture
Privacy and Security in library RFID Issues, Practices and Architecture David Molnar and David Wagner University of California, Berkeley CCS '04 October 2004 Overview Motivation RFID Background Library
Chapter 12: Multiprocessor Architectures. Lesson 01: Performance characteristics of Multiprocessor Architectures and Speedup
Chapter 12: Multiprocessor Architectures Lesson 01: Performance characteristics of Multiprocessor Architectures and Speedup Objective Be familiar with basic multiprocessor architectures and be able to
- Hubs vs. Switches vs. Routers -
1 Layered Communication - Hubs vs. Switches vs. Routers - Network communication models are generally organized into layers. The OSI model specifically consists of seven layers, with each layer representing
Index Terms Domain name, Firewall, Packet, Phishing, URL.
BDD for Implementation of Packet Filter Firewall and Detecting Phishing Websites Naresh Shende Vidyalankar Institute of Technology Prof. S. K. Shinde Lokmanya Tilak College of Engineering Abstract Packet
Design and Implementation of an On-Chip timing based Permutation Network for Multiprocessor system on Chip
Design and Implementation of an On-Chip timing based Permutation Network for Multiprocessor system on Chip Ms Lavanya Thunuguntla 1, Saritha Sapa 2 1 Associate Professor, Department of ECE, HITAM, Telangana
Solution of Linear Systems
Chapter 3 Solution of Linear Systems In this chapter we study algorithms for possibly the most commonly occurring problem in scientific computing, the solution of linear systems of equations. We start
A Comparison of Dictionary Implementations
A Comparison of Dictionary Implementations Mark P Neyer April 10, 2009 1 Introduction A common problem in computer science is the representation of a mapping between two sets. A mapping f : A B is a function
1) The postfix expression for the infix expression A+B*(C+D)/F+D*E is ABCD+*F/DE*++
Answer the following 1) The postfix expression for the infix expression A+B*(C+D)/F+D*E is ABCD+*F/DE*++ 2) Which data structure is needed to convert infix notations to postfix notations? Stack 3) The
FIPS 140 2 Non Proprietary Security Policy: Kingston Technology DataTraveler DT4000 Series USB Flash Drive
FIPS 140 2 Non Proprietary Security Policy Kingston Technology Company, Inc. DataTraveler DT4000 G2 Series USB Flash Drive Document Version 1.8 December 3, 2014 Document Version 1.8 Kingston Technology
A New Paradigm for Synchronous State Machine Design in Verilog
A New Paradigm for Synchronous State Machine Design in Verilog Randy Nuss Copyright 1999 Idea Consulting Introduction Synchronous State Machines are one of the most common building blocks in modern digital
ENTTEC Pixie Driver API Specification
ENTTEC Pixie Driver API Specification Purpose This document specifies the interface requirements for PC based application programs to use the ENTTEC Pixie Driver board to drive RGB or RGBW type LED strips.
CUDA Programming. Week 4. Shared memory and register
CUDA Programming Week 4. Shared memory and register Outline Shared memory and bank confliction Memory padding Register allocation Example of matrix-matrix multiplication Homework SHARED MEMORY AND BANK
HARDWARE ACCELERATION IN FINANCIAL MARKETS. A step change in speed
HARDWARE ACCELERATION IN FINANCIAL MARKETS A step change in speed NAME OF REPORT SECTION 3 HARDWARE ACCELERATION IN FINANCIAL MARKETS A step change in speed Faster is more profitable in the front office
Open Flow Controller and Switch Datasheet
Open Flow Controller and Switch Datasheet California State University Chico Alan Braithwaite Spring 2013 Block Diagram Figure 1. High Level Block Diagram The project will consist of a network development
ELECTRONIC COMMERCE WORKED EXAMPLES
MODULE 13 ELECTRONIC COMMERCE WORKED EXAMPLES 13.1 Explain B2B e-commerce using an example of a book distributor who stocks a large number of books, which he distributes via a large network of book sellers.
The Reduced Address Space (RAS) for Application Memory Authentication
The Reduced Address Space (RAS) for Application Memory Authentication David Champagne, Reouven Elbaz and Ruby B. Lee Princeton University, USA Introduction Background: TPM, XOM, AEGIS, SP, SecureBlue want
Deploying De-Duplication on Ext4 File System
Deploying De-Duplication on Ext4 File System Usha A. Joglekar 1, Bhushan M. Jagtap 2, Koninika B. Patil 3, 1. Asst. Prof., 2, 3 Students Department of Computer Engineering Smt. Kashibai Navale College
Bitcoin Miner Optimization
Bitcoin Miner Optimization Nicolas T. Courtois - University College London, UK Bitcoin Mining Bottom Line Bitcoin Mining = a high tech race to determine who will own the currency of the 21 century 2 Nicolas
Introduction to Cloud Computing
Introduction to Cloud Computing Parallel Processing I 15 319, spring 2010 7 th Lecture, Feb 2 nd Majd F. Sakr Lecture Motivation Concurrency and why? Different flavors of parallel computing Get the basic
INTERNATIONAL JOURNAL OF ELECTRONICS AND COMMUNICATION ENGINEERING & TECHNOLOGY (IJECET)
INTERNATIONAL JOURNAL OF ELECTRONICS AND COMMUNICATION ENGINEERING & TECHNOLOGY (IJECET) International Journal of Electronics and Communication Engineering & Technology (IJECET), ISSN 0976 ISSN 0976 6464(Print)
Secure Network Communications FIPS 140 2 Non Proprietary Security Policy
Secure Network Communications FIPS 140 2 Non Proprietary Security Policy 21 June 2010 Table of Contents Introduction Module Specification Ports and Interfaces Approved Algorithms Test Environment Roles
CHAPTER 11: Flip Flops
CHAPTER 11: Flip Flops In this chapter, you will be building the part of the circuit that controls the command sequencing. The required circuit must operate the counter and the memory chip. When the teach
Communication Protocol
Analysis of the NXT Bluetooth Communication Protocol By Sivan Toledo September 2006 The NXT supports Bluetooth communication between a program running on the NXT and a program running on some other Bluetooth
2) What is the structure of an organization? Explain how IT support at different organizational levels.
(PGDIT 01) Paper - I : BASICS OF INFORMATION TECHNOLOGY 1) What is an information technology? Why you need to know about IT. 2) What is the structure of an organization? Explain how IT support at different
A Comparison Of Shared Memory Parallel Programming Models. Jace A Mogill David Haglin
A Comparison Of Shared Memory Parallel Programming Models Jace A Mogill David Haglin 1 Parallel Programming Gap Not many innovations... Memory semantics unchanged for over 50 years 2010 Multi-Core x86
Direct Link Networks. Introduction. Physical Properties. Lecture - Ethernet 1. Areas for Discussion. Ethernet (Section 2.6)
reas for Discussion Direct Link Networks Joseph Spring School of Computer Science Sc - Computer Network Protocols & rch s ased on Chapter 2, Peterson & Davie, Computer Networks: Systems pproach, 5 th Ed
