Neural Network Compiler BNN Scripts User Guide

Size: px
Start display at page:

Download "Neural Network Compiler BNN Scripts User Guide"

Transcription

1 FPGA-UG Version 1.0 May 2018

2 Contents 1. Introduction Software Requirements Directory Structure Installation Guide Installing Dependencies Installing Packages Installing Caffe Updating BashRC Firmware File Generation Supported Layers Batch Norm Scale QuantRelu BinaryInnerProduct BinaryConvolution Input Pooling FaceDet_run.py... 6 Technical Support Revision History Figures Figure 3.1. Example Folder Structure... 3 Figure 5.1. Start of FaceDet_run.py... 6 Figure 5.2. Network Dimension and Address Definition... 6 Figure 5.3. BNN Layer Definition... 7 Figure 5.4. Fully Connected Layer Definition... 7 Figure 5.5. Internal Functions... 8 Figure 5.6. Input Arguments... 9 Figure 5.7. Preprocessing, Simulation, and Results... 9 Tables Table 3.1. Folder Description FPGA-UG

3 1. Introduction This document describes how to create a programmable firmware file which supports the BNN Accelerator IP Core. This firmware file contains information such as the command sequence and weights from your trained Neural Network. The script provided is in Python and requires manual changes. This Python script requires.caffemodel and.protofile files, and outputs the firmware file. The Python script supports the Caffe framework. 2. Software Requirements The following are the high level requirements for using the Python script. Other requirements such as Python libraries and dependencies are included in the installation section. Ubuntu LTS Python CUDA 8.0 (GPU Caffe only) 3. Directory Structure The BNN Compiler script.zip folder includes six subfolders described in Table 3.1. Table 3.1. Folder Description Folder Name Description Documentation Examples NNFPGA Scripts Caffe1 OpenSourceLicense Contains the documents that provide details on the mldevkit_tplus. Contains sample files for generating the firmware file. This folder includes input files.caffemodel and.protofile; image file; and the Python script used to generate the firmware file. These sample files are used to generate the Human Face Detection firmware file. The folder structure is shown in Figure 3.1. data contains images required to generate the firmware file facedets_bbn contains the fpga_tplus and train subfolders. fpga_tplus carries the facedet_run.py and run.sh files. The facedet_run.py is an example on how to generate the Face Detection firmware file. This file also serves as a template to build your own script which generates the firmware file. The run.sh is a shell script which calls the input files (caffemodel, proto, image file) and output file (bin, txt). train contains the Caffemodel and Proto files Contains compiled Python files which are used in generating the firmware file. These files are called in the facedetect.py script. Note where you store this folder because you need to call the directory of this folder in the Python script. Contains a single Python script which is used to run the trained network in Caffe with input images Contains a complete build of Caffe. This Caffe build contains some specific layers which are used in to support BNNs (binary neural networks). Details on how to install the Caffe build are provided in the Installation Guide section. License File for images provided in the data directory. Figure 3.1. Example Folder Structure FPGA-UG

4 4. Installation Guide This section provides information on how to install Caffe into the Ubuntu LTS system Installing Dependencies Before installing Caffe. Install these required dependencies: sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler sudo apt-get install --no-install-recommends libboost-all-dev sudo apt-get install y python-pip sudo apt-get install y python-dev sudo apt-get install y python-numpy python-scipy 4.2. Installing Packages Install the additional packages below that are required to run Caffe. Atlas: sudo apt-get install -y libatlas-base-dev GIT: sudo apt-get install git LMDB: sudo apt-get install libffi-dev python-dev build-essential pip install lmdb librosa: sudo pip install librosa skimage.io: sudo apt-get install python-skimage yaml: pip install pyyaml protobuf: sudo apt-get install python-protobuf OpenCV: sudo apt-get install python-opencv 4.3. Installing Caffe The default Caffe1 build is defaulted of GPU Version Caffe. CUDA 8.0 must be installed in order to use the GPU version of Caffe. If you wish to install the CPU version of Caffe, please modify Makefile.config in the caffe directory and change to CPU ONLY. You will also have to find split_concat_layer.cpp and comment out line 57 in order to use CPU Version of Caffe. After deciding the version to install, run the following commands to build Caffe: cd caffe mkdir build cd build cmake.. make all make install make runtest 4.4. Updating BashRC Update.bashrc with additional paths. If you are using the GPU version of Caffe, add the following into.bashrc: export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}} export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} Add the paths below whether you are using GPU OR CPU. export CAFFE_ROOT=$HOME/ML/caffe/ export PATH=$HOME/ML/caffe/python${PATH:+:${PATH}} export PYTHONPATH=$HOME/ML/caffe/python:$PYTHONPATH This completes the installation of Caffe. To check if Caffe is installed correctly, run Python then try importing Caffe. 4 FPGA-UG

5 5. Firmware File Generation This section describes the facedet_run.py script and provides details on the items that you need to change in order to generate your own firmware file Supported Layers When creating the proto file, take into consideration the layers supported for firmware generation listed below. BatchNorm Scale QuantReLu BinaryInnerProduct BinaryConvolution Input Pooling Batch Norm The BatchNorm Caffe layer is supported for implementing batch normalization operations. You are required to put a Scale layer in your network after each BatchNorm layer Scale The Scale layer in Caffe is supported. You are required to put a Scale layer in your network after each BatchNorm layer QuantRelu QuantRelu fulfills the same purpose as the ReLu in standard neural networks. The QuantReLu layer should be used instead of ReLU BinaryInnerProduct BinaryInnerProduct calculates the inner product for a binary network and should be used instead of the InnerProduct layer BinaryConvolution The BinaryConvolution layer is an added layer that functions similiarly to the convolution layer in Caffe, using binary weights and activations, and employing the same parameters Input The Input layer is supported Pooling Pooling layer is supported. The pooling layer supports the following Caffe parameters: Max Kernel_size Pad Stride FPGA-UG

6 5.2. FaceDet_run.py The specific sections of the Python script are described below. Figure 5.2 shows the beginning of the script. No change is required in this section. This section just imports Python libraries and calls certain paths just as the Caffe build directory, NNFPGA directory, and some of our generation firmware engine files. Figure 5.1. Start of FaceDet_run.py The network dimension and address definition section is heavily dependent on the neural network you have implemented. Input the dimensions correlating to your design. The SPRAM size is also dependent on the BNN Accelerator Soft IP Configuration. Plan in accordance with the SPRAM size of your BNN Accelerator Soft IP. With Single SPRAM configuration, you have 4k entries. With Dual SPRAM Configuration, on the other hand, you have 8k entries. The default is the Human Face Detection as shown in Figure 5.2. Figure 5.2. Network Dimension and Address Definition 6 FPGA-UG

7 The BNN layer definition section starts the definition of the run_sim. In Figure 5.3, under stage #1 starts the first BNN layer. Stage #1-3 are identical code-wise except that there is no pooling in the third BNN layer. Line 54: bin_wt=binarize_weights(cnet.params[ conv1 ][0].data) reads the weight values from the Caffe weight file (.caffemodel) and binarize conv1. Line 55: bin_threshold, bin_negpol=get_threshold(cnet, conv1, bn1, scale1,**thr_args) calculates the parameters used in HW for binary activation, batch normalization, etc. Line 56: layer.run_bwconv2d_stage(bin_wt, data_dim(input dim*. Runs simulation and generates the code. It also performs convolution, batch normalization, scaling, binarization (activation), pooling. Figure 5.3. BNN Layer Definition This section, a fully connected layer, is shown in Figure 5.4. Line 121: layer.read_data(output_dim, OUTPUT_ADDR) reads out the final output from OUTPUT_ADDR. Figure 5.4. Fully Connected Layer Definition FPGA-UG

8 The internal functions section shown in Figure 5.5. No change is needed in this section since it involves purely internal functions,. Figure 5.5. Internal Functions 8 FPGA-UG

9 The section, shown in Figure 5.6, requests for input arguments and loads Caffe Network and parameters. Refer to run.sh file in the same file direction as facedet_run.py. Figure 5.6. Input Arguments The last section reads test image and performs preprocessing such as scaling and normalization. The section also runs simulation and code generation, and lastly, reads and displays the result in the terminal. Figure 5.7. Preprocessing, Simulation, and Results FPGA-UG

10 Technical Support For assistance, submit a technical support case at Revision History Date Version Change Summary May Initial release. 10 FPGA-UG

11 7 th Floor, 111 SW 5 th Avenue Portland, OR 97204, USA T

Key Phrase Detection Using Compact CNN Accelerator IP Reference Design

Key Phrase Detection Using Compact CNN Accelerator IP Reference Design Key Phrase Detection Using Compact CNN Accelerator IP FPGA-RD-02033 Version 1.2 October 2018 Contents 1. Introduction... 3 2. Related Documentation... 3 3. Software Requirements... 3 4. Hardware Requirements...

More information

Object Counting Using Convolutional Neural Network Accelerator IP Reference Design

Object Counting Using Convolutional Neural Network Accelerator IP Reference Design Object Counting Using Convolutional Neural Network Accelerator IP FPGA-RD-02036 Version 1.1 September 2018 Contents Acronyms in This Document... 3 1. Introduction... 4 2. Related Documentation... 5 2.1.

More information

How to set Caffe up and running SegNet from scratch in OSX El Capitan using CPU mode

How to set Caffe up and running SegNet from scratch in OSX El Capitan using CPU mode How to set Caffe up and running SegNet from scratch in OSX El Capitan using CPU mode Written by : Sirawat Pitaksarit Probably can be applied to Ubuntu system, but all the brew commands needs to be replaced

More information

MDP Based Face Detection Demonstration User Guide

MDP Based Face Detection Demonstration User Guide FPGA-UG-02047 Version 1.0 May 2018 Contents Acronyms in This Document... 3 1. Introduction... 4 2. Functional Description... 4 3. Demo Setup... 5 4. Programming the Face Detection Demo... 7 5. Running

More information

MDP Based Key Phrase Detection Demonstration User Guide

MDP Based Key Phrase Detection Demonstration User Guide MDP Based Key Phrase Detection Demonstration FPGA-UG-02048 Version 1.1 September 2018 Contents Acronyms in This Document... 3 1. Introduction... 4 2. Functional Description... 4 3. MDP Board Setup... 5

More information

Face Tracking Using Convolutional Neural Network Accelerator IP Reference Design

Face Tracking Using Convolutional Neural Network Accelerator IP Reference Design Face Tracking Using Convolutional Neural Network Accelerator IP FPGA-RD-02037-1.0 May 2018 Contents 1. Introduction... 4 2. Related Documentation... 5 2.1. Soft IP Document... 5 2.2. Diamond Document...

More information

Speed Sign Detection Using Convolutional Neural Network Accelerator IP User Guide

Speed Sign Detection Using Convolutional Neural Network Accelerator IP User Guide Speed Sign Detection Using Convolutional Neural Network Accelerator IP FPGA-RD-02035-1.0 May 2018 Contents Acronyms in This Document... 3 Introduction... 4 Reference Design Overview... 5 Block diagram...

More information

Speed Sign Detection Using Convolutional Neural Network Accelerator IP Reference Design

Speed Sign Detection Using Convolutional Neural Network Accelerator IP Reference Design Speed Sign Detection Using Convolutional Neural Network Accelerator IP FPGA-RD-02035 Version 1.1 September 2018 Contents Acronyms in This Document... 3 1. Introduction... 4 2. Overview... 5 2.1. Block

More information

Movidius Neural Compute Stick

Movidius Neural Compute Stick Movidius Neural Compute Stick You may not use or facilitate the use of this document in connection with any infringement or other legal analysis concerning Intel products described herein. You agree to

More information

Tensorflow v0.10 installed from scratch on Ubuntu 16.04, CUDA 8.0RC+Patch, cudnn v5.1 with a 1080GTX

Tensorflow v0.10 installed from scratch on Ubuntu 16.04, CUDA 8.0RC+Patch, cudnn v5.1 with a 1080GTX Tensorflow v0.10 installed from scratch on Ubuntu 16.04, CUDA 8.0RC+Patch, cudnn v5.1 with a 1080GTX While Tensorflow has a great documentation, you have quite a lot of details that are not obvious, especially

More information

Homework 01 : Deep learning Tutorial

Homework 01 : Deep learning Tutorial Homework 01 : Deep learning Tutorial Introduction to TensorFlow and MLP 1. Introduction You are going to install TensorFlow as a tutorial of deep learning implementation. This instruction will provide

More information

IBM Visual Insights IBM. User Guide

IBM Visual Insights IBM. User Guide IBM Visual Insights IBM User Guide IBM Visual Insights IBM User Guide ii User Guide Note Before using this information and the product it supports, read the information in Notices on page 113. Copyright

More information

Reverse Engineering AI Models

Reverse Engineering AI Models Reverse Engineering AI Models Kang Li kangli.ctf@gmail.com Collaborators:Deyue Zhang, Jiayu Qian, Yufei Chen About Me Professor of Computer Science at UGA Founder of the SecDawgs, Disekt CTF Teams Founding

More information

Containers. Pablo F. Ordóñez. October 18, 2018

Containers. Pablo F. Ordóñez. October 18, 2018 Containers Pablo F. Ordóñez October 18, 2018 1 Welcome Song: Sola vaya Interpreter: La Sonora Ponceña 2 Goals Containers!= ( Moby-Dick ) Containers are part of the Linux Kernel Make your own container

More information

Deep Learning With. Zhe Li Zhuoning Yuan Prof. Tianbao Yang

Deep Learning With. Zhe Li Zhuoning Yuan Prof. Tianbao Yang Deep Learning With Zhe Li Zhuoning Yuan Prof. Tianbao Yang Agenda! Introduc)on to Caffe! Demo! Installa)on Caffe! Ge4ng Start with Caffe Claim! hand-on Installa)on of Caffe on Argon Cluster! Help You Get

More information

DNNDK USER s GUIDE. Rev Beta. Date 10 Sep. 2018

DNNDK USER s GUIDE. Rev Beta. Date 10 Sep. 2018 DNNDK USER s GUIDE Rev. 2.06 Beta Date 10 Sep. 2018 Copyright 2018 DeePhi Tech, Inc. All rights reserved. No part of this publication may be reproduced or transmitted in any form or by any means without

More information

Caffe tutorial. Seong Joon Oh

Caffe tutorial. Seong Joon Oh Caffe tutorial Seong Joon Oh What is Caffe? Convolution Architecture For Feature Extraction (CAFFE) Open framework, models, and examples for deep learning 600+ citations, 100+ contributors, 7,000+ stars,

More information

DNNDK USER s GUIDE. Rev Beta. Date 15 Oct. 2018

DNNDK USER s GUIDE. Rev Beta. Date 15 Oct. 2018 DNNDK USER s GUIDE Rev. 2.07 Beta Date 15 Oct. 2018 Copyright 2016-2018 DeePhi Tech, Inc. All rights reserved. No part of this publication may be reproduced or transmitted in any form or by any means without

More information

Getting started with Caffe. Jon Barker, Solutions Architect

Getting started with Caffe. Jon Barker, Solutions Architect Getting started with Caffe Jon Barker, Solutions Architect Caffe tour Overview Agenda Example applications Setup Performance Hands-on lab preview 2 A tour of Caffe 3 What is Caffe? An open framework for

More information

If you installed VM and Linux libraries as in the tutorial, you should not get any errors. Otherwise, you may need to install wget or gunzip.

If you installed VM and Linux libraries as in the tutorial, you should not get any errors. Otherwise, you may need to install wget or gunzip. MNIST 1- Prepare Dataset cd $CAFFE_ROOT./data/mnist/get_mnist.sh./examples/mnist/create_mnist.sh If you installed VM and Linux libraries as in the tutorial, you should not get any errors. Otherwise, you

More information

TENSORRT. SWE-SWDOCTRT-001-RELN_vTensorRT October Release Notes

TENSORRT. SWE-SWDOCTRT-001-RELN_vTensorRT October Release Notes TENSORRT SWE-SWDOCTRT-001-RELN_v 5.0.3 October 2018 Release Notes TABLE OF CONTENTS Chapter 1. Overview...1 Chapter 2. Release 5.x.x... 2 2.1. Release 5.0.3... 2 2.2. Release 5.0.2... 3 2.3. Release 5.0.1

More information

GPU Cluster Usage Tutorial

GPU Cluster Usage Tutorial GPU Cluster Usage Tutorial How to make caffe and enjoy tensorflow on Torque 2016 11 12 Yunfeng Wang 1 PBS and Torque PBS: Portable Batch System, computer software that performs job scheduling versions

More information

Zephyr Kernel Installation & Setup Manual

Zephyr Kernel Installation & Setup Manual Zephyr Kernel Installation & Setup Manual Zephyr kernel is a small footprint Single address space OS, i.e, it combines application specific code with a custom kernel to create a monolithic image that gets

More information

DNNDK User Guide. UG1327 (v1.0) January 22, 2019

DNNDK User Guide. UG1327 (v1.0) January 22, 2019 DNNDK User Guide Revision History The following table shows the revision history for this document. Section General updates 1/22/2019 Version 1.0 Revision Summary Initial Xilinx release. DNNDK User Guide

More information

WiSE-MNet. Wireless Simulation Environment for Multimedia Networks. User s Manual. Christian Nastasi

WiSE-MNet. Wireless Simulation Environment for Multimedia Networks. User s Manual. Christian Nastasi WiSE-MNet Wireless Simulation Environment for Multimedia Networks User s Manual Christian Nastasi (c.nastasi@sssup.it, nastasichr@gmail.com) December 4, 2011 Contents 1 Introduction 1 2 Overview 2 2.1

More information

TENSORRT. RN _v01 January Release Notes

TENSORRT. RN _v01 January Release Notes TENSORRT RN-08624-030_v01 January 2018 Release Notes TABLE OF CONTENTS Chapter Chapter Chapter Chapter 1. 2. 3. 4. Overview...1 Release 3.0.2... 2 Release 3.0.1... 4 Release 2.1... 10 RN-08624-030_v01

More information

Gerd Doeben-Henisch February 12, Steps To Prepare Python Environment 2. 3 Use Python Interactive Console 3

Gerd Doeben-Henisch February 12, Steps To Prepare Python Environment 2. 3 Use Python Interactive Console 3 PROGRAMMING WITH PYTHON Simple Programming Environment with ubuntu 16.04 emerging-mind.org ejournal ISSN 2567-6466 Email: info@emerging-mind.org 10.-12.February 2018 Gerd Doeben-Henisch gerd@doeben-henisch.de

More information

TensorFlow-HRT. User Manual

TensorFlow-HRT. User Manual TensorFlow-HRT User Manual 2017-12-25 Reversion Record Date Rev Change Description Author 2017-12-25 0.1.0 Initial Yuming Cheng Yu Wang 2018-02-08 0.1.1 Add Alexnet test Yuming Cheng 1 / 12 catalog 1 PURPOSE...3

More information

DEVELOPMENT GUIDE VAB-630. Linux BSP v

DEVELOPMENT GUIDE VAB-630. Linux BSP v DEVELOPMENT GUIDE VAB-630 Linux BSP v1.0.1 100-09182017-114400 Copyright Copyright 2017 VIA Technologies Incorporated. All rights reserved. No part of this document may be reproduced, transmitted, transcribed,

More information

ice40 UltraPlus Display Frame Buffer User Guide

ice40 UltraPlus Display Frame Buffer User Guide FPGA-UG-02009 Version 1.1 March 2017 Contents 1. Introduction... 3 1.1. Clock Generator Module... 3 1.2. Main Control Module... 3 1.3. SPRAM Module... 4 1.4. Decompress Module... 4 1.5. 8BIT2RGB Module...

More information

manifold Documentation

manifold Documentation manifold Documentation Release 0.0.1 Open Source Robotics Foundation Mar 04, 2017 Contents 1 What is Manifold? 3 2 Installation 5 2.1 Ubuntu Linux............................................... 5 2.2

More information

CS234 Azure Step-by-Step Setup

CS234 Azure Step-by-Step Setup CS234 Azure Step-by-Step Setup Adapted from the setup instructions for Chris Manning s 2017 offering of CS224n Key-Points This guide will walk you through running your code on GPUs in Azure. Before we

More information

Installing the new LOFAR Software on a fresh Ubuntu 14.04

Installing the new LOFAR Software on a fresh Ubuntu 14.04 2017/11/20 23:19 1/5 Installing the new LOFAR Software on a fresh Ubuntu 14.04 Installing the new LOFAR Software on a fresh Ubuntu 14.04 This are my private, unedited notes on installing the LOFAR Software

More information

DNNDK User Guide. UG1327 (v 2.08 Beta) December 12, 2018

DNNDK User Guide. UG1327 (v 2.08 Beta) December 12, 2018 DNNDK User Guide Revision History The following table shows the revision history for this document. Section General updates General updates Revision Summary 11/15/2018 Initial Xilinx release. 12/12/2018

More information

Wu Zhiwen.

Wu Zhiwen. Wu Zhiwen zhiwen.wu@intel.com Agenda Background information OpenCV DNN module OpenCL acceleration Vulkan backend Sample 2 What is OpenCV? Open Source Compute Vision (OpenCV) library 2500+ Optimized algorithms

More information

Introduction of Linux

Introduction of Linux Introduction of Linux 阳 oslab2018_class1@163.com 寅 oslab2018_class2@163.com PART I Brief Introduction Basic Conceptions & Environment Install & Configure a Virtual Machine Basic Commands PART II Shell

More information

SSH Deploy Key Documentation

SSH Deploy Key Documentation SSH Deploy Key Documentation Release 0.1.1 Travis Bear February 03, 2014 Contents 1 Overview 1 2 Source Code 3 3 Contents 5 3.1 Alternatives................................................ 5 3.2 Compatibility...............................................

More information

GUIDE Development tools for Windows(10) installation... 2

GUIDE Development tools for Windows(10) installation... 2 GUIDE Development tools for Windows(10) installation... 2 C\C++ compiler and CMake installation... 2 Mingw download... 2 Mingw installation... 3 Adding Mingw compilers folder to PATH variable... 7 CMake

More information

coxtactoe Documentation

coxtactoe Documentation coxtactoe Documentation Release 0.1.0 Brett Anderson July 13, 2014 Contents 1 Contents 1 1.1 Pre-requisites............................................... 1 1.2 Installation & Configuration.......................................

More information

ECE5775 High-Level Digital Design Automation, Fall 2018 School of Electrical Computer Engineering, Cornell University

ECE5775 High-Level Digital Design Automation, Fall 2018 School of Electrical Computer Engineering, Cornell University ECE5775 High-Level Digital Design Automation, Fall 2018 School of Electrical Computer Engineering, Cornell University Lab 4: Binarized Convolutional Neural Networks Due Wednesday, October 31, 2018, 11:59pm

More information

TENSORRT. RN _v01 June Release Notes

TENSORRT. RN _v01 June Release Notes TENSORRT RN-08624-030_v01 June 2018 Release Notes TABLE OF CONTENTS Chapter Chapter Chapter Chapter Chapter Chapter 1. 2. 3. 4. 5. 6. Overview...1 Release 4.0.1... 2 Release 3.0.4... 6 Release 3.0.2...

More information

CROWDCOIN MASTERNODE SETUP COLD WALLET ON WINDOWS WITH LINUX VPS

CROWDCOIN MASTERNODE SETUP COLD WALLET ON WINDOWS WITH LINUX VPS CROWDCOIN MASTERNODE SETUP COLD WALLET ON WINDOWS WITH LINUX VPS This tutorial shows the steps required to setup your Crowdcoin Masternode on a Linux server and run your wallet on a Windows operating system

More information

Installation Caffe on Argon Cluster

Installation Caffe on Argon Cluster Installation Caffe on Argon Cluster Zhe Li ( zhe-li-1@uiowa.edu ) Zhuoning Yuan ( zhuoning-yuan@uiowa.edu ) Machine Learning and Optimization Research Group Department of Computer science The University

More information

sensor-documentation Documentation

sensor-documentation Documentation sensor-documentation Documentation Release 0.0.1 Apoorv Jagtap October 15, 2016 Contents 1 Contents: 1 1.1 Introduction............................................... 1 1.2 Velodyne VLP - 16............................................

More information

Install and Configure wxwidgets on Ubuntu

Install and Configure wxwidgets on Ubuntu Install and Configure wxwidgets on Ubuntu Ronald Mak Department of Computer Engineering Department of Computer Science January 12, 2019 Introduction wxwidgets is a C++ library that allows you to develop

More information

Deep Learning and Its Applications

Deep Learning and Its Applications Convolutional Neural Network and Its Application in Image Recognition Oct 28, 2016 Outline 1 A Motivating Example 2 The Convolutional Neural Network (CNN) Model 3 Training the CNN Model 4 Issues and Recent

More information

Machine Learning Workshop

Machine Learning Workshop Machine Learning Workshop {Presenters} Feb. 20th, 2018 Theory of Neural Networks Architecture and Types of Layers: Fully Connected (FC) Convolutional Neural Network (CNN) Pooling Drop out Residual Recurrent

More information

LCMXO3LF-9400C SED/SEC Demo

LCMXO3LF-9400C SED/SEC Demo FPGA-UG-02023 Version 1.0 June 2017 Contents 1. Introduction... 4 1.1. Demo Design Overview... 4 1.2. MachXO3-9400 Development Board and Resources... 5 2. Functional Description... 6 3. Demo Package...

More information

ice40 UltraPlus RGB LED Controller with BLE User Guide

ice40 UltraPlus RGB LED Controller with BLE User Guide FPGA-UG-02010 Version 1.1 March 2017 Contents 1. Introduction... 3 2. Demo Setup... 4 2.1. Block Diagram... 4 2.2. Requirements... 5 2.3. Jumper Settings... 5 3. Programming the Bitmaps to the MDP Board...

More information

Xilinx ML Suite Overview

Xilinx ML Suite Overview Xilinx ML Suite Overview Yao Fu System Architect Data Center Acceleration Xilinx Accelerated Computing Workloads Machine Learning Inference Image classification and object detection Video Streaming Frame

More information

Programming External SPI Flash through JTAG for ECP5/ECP5-5G Technical Note

Programming External SPI Flash through JTAG for ECP5/ECP5-5G Technical Note Programming External SPI Flash through JTAG for ECP5/ECP5-5G FPGA-TN-02050 Version 1.0 October 2017 Contents Acronyms in This Document... 4 1. Introduction... 5 1.1. Features... 5 2. Programming External

More information

Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) Quick Start User Guide

Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) Quick Start User Guide Intel Accelerator Functional Unit (AFU) Simulation Environment (ASE) Quick Start User Guide Updated for Intel Acceleration Stack: 1.0 Production Subscribe Send Feedback Latest document on the web: PDF

More information

Accelerating Convolutional Neural Nets. Yunming Zhang

Accelerating Convolutional Neural Nets. Yunming Zhang Accelerating Convolutional Neural Nets Yunming Zhang Focus Convolutional Neural Nets is the state of the art in classifying the images The models take days to train Difficult for the programmers to tune

More information

Accelerating Binarized Convolutional Neural Networks with Software-Programmable FPGAs

Accelerating Binarized Convolutional Neural Networks with Software-Programmable FPGAs Accelerating Binarized Convolutional Neural Networks with Software-Programmable FPGAs Ritchie Zhao 1, Weinan Song 2, Wentao Zhang 2, Tianwei Xing 3, Jeng-Hau Lin 4, Mani Srivastava 3, Rajesh Gupta 4, Zhiru

More information

Embedded Linux. A Tour inside ARM's Kernel

Embedded Linux. A Tour inside ARM's Kernel Embedded Linux A Tour inside ARM's Kernel Contents 1. Shell basics 2. Introduction to Embedded Linux 3. Kernel Programming for Module / Driver Installation 4. Module / Device Driver in RPi 5. Cross Compiling

More information

ice40 SPRAM Usage Guide Technical Note

ice40 SPRAM Usage Guide Technical Note TN1314 Version 1.0 June 2016 Contents 1. Introduction... 3 2. Single Port RAM s... 3 2.1. User SB_SPRAM256KA... 3 2.2. SPRAM Port Definitions and GUI Options... 4 3. Power Save States for SPRAM... 6 3.1.

More information

Baking RDKit on a Pi. - Tips and gotchas. Jan Holst Jensen CEO, Biochemfusion

Baking RDKit on a Pi. - Tips and gotchas. Jan Holst Jensen CEO, Biochemfusion Baking RDKit on a Pi - Tips and gotchas Jan Holst Jensen CEO, Biochemfusion jan@biochemfusion.com RDKit UGM 2012 1 Raspberry Pi Image from http://www.raspberrypi.org/faqs An ARM-based, networked, credit-card

More information

Installation Guide for Python

Installation Guide for Python GPDI 513 Beginner s Guide to the Python Programming Language Installation Guide for Python Linux Operating System If you are using a Linux computer, open the terminal and type the following commands in

More information

Tizen TCT User Guide

Tizen TCT User Guide Tizen 2.3.1 TCT User Guide Table of Contents 1. Environment setup... 3 1.1. Symbols and abbreviations... 3 1.2. Hardware Requirements... 3 1.3. Software Requirements... 3 2. Getting TCT-source and TCT-manager...

More information

NVIDIA CUDA GETTING STARTED GUIDE FOR LINUX

NVIDIA CUDA GETTING STARTED GUIDE FOR LINUX NVIDIA CUDA GETTING STARTED GUIDE FOR LINUX DU-05347-001_v5.0 October 2012 Installation and Verification on Linux Systems TABLE OF CONTENTS Chapter 1. Introduction...1 1.1 System Requirements... 1 1.2

More information

Kaggle See Click Fix Model Description

Kaggle See Click Fix Model Description Kaggle See Click Fix Model Description BY: Miroslaw Horbal & Bryan Gregory LOCATION: Waterloo, Ont, Canada & Dallas, TX CONTACT : miroslaw@gmail.com & bryan.gregory1@gmail.com CONTEST: See Click Predict

More information

Building Tizen Development Environment

Building Tizen Development Environment Building Tizen Development Environment Minsoo Ryu Real-Time Computing and Communications Lab. Hanyang University msryu@hanyang.ac.kr Tizen 2.3 Development Environment Target hardware device Tizen Reference

More information

Caffe2C: A Framework for Easy Implementation of CNN-based Mobile Applications

Caffe2C: A Framework for Easy Implementation of CNN-based Mobile Applications Caffe2C: A Framework for Easy Implementation of CNN-based Mobile Applications Ryosuke Tanno and Keiji Yanai Department of Informatics, The University of Electro-Communications, Tokyo 1. INTRODUCTION Deep

More information

The TinyHPC Cluster. Mukarram Ahmad. Abstract

The TinyHPC Cluster. Mukarram Ahmad. Abstract The TinyHPC Cluster Mukarram Ahmad Abstract TinyHPC is a beowulf class high performance computing cluster with a minor physical footprint yet significant computational capacity. The system is of the shared

More information

MAGPIE Installation Guide (version 1.0)

MAGPIE Installation Guide (version 1.0) MAGPIE Installation Guide (version 1.0) June 2017 Authors: Sophiane Senni, Pierre-Yves Péneau, Abdoulaye Gamatié 1 Contents 1 About this guide 3 2 Framework installation 4 2.1 Dependencies...................................

More information

swiftenv Documentation

swiftenv Documentation swiftenv Documentation Release 1.3.0 Kyle Fuller Sep 27, 2017 Contents 1 The User Guide 3 1.1 Installation................................................ 3 1.2 Getting Started..............................................

More information

wget

wget CIFAR 10 In 1]: %matplotlib inline %reload_ext autoreload %autoreload 2 The CIFAR-10 dataset consists of 60000 32x32 color images in 10 classes, with 6000 images per class. There are 50000 training images

More information

Frameworks in Python for Numeric Computation / ML

Frameworks in Python for Numeric Computation / ML Frameworks in Python for Numeric Computation / ML Why use a framework? Why not use the built-in data structures? Why not write our own matrix multiplication function? Frameworks are needed not only because

More information

Mobile AI Compute Engine (MACE)

Mobile AI Compute Engine (MACE) Jul 11, 2018 Getting started 1 Introduction 3 2 Create a model deployment file 5 3 How to build 9 4 Operator lists 17 5 Contributing guide 19 6 Adding a new Op 21 7 Memory layout 25 8 Frequently asked

More information

DBNsim. Giorgio Giuffrè. 0 Abstract How to run it on your machine How to contribute... 2

DBNsim. Giorgio Giuffrè. 0 Abstract How to run it on your machine How to contribute... 2 DBNsim Giorgio Giuffrè Contents 0 Abstract 2 0.1 How to run it on your machine................... 2 0.2 How to contribute.......................... 2 1 Installing DBNsim 2 1.1 Requirements.............................

More information

Quick tutorial for almabte

Quick tutorial for almabte Quick tutorial for almabte almabte consists of a library and a collection of executables allowing the user to calculate thermal transport properties of heterogeneous structures, using only ab-initio data,

More information

TrinityCore Documentation

TrinityCore Documentation TrinityCore Documentation Release TrinityCore Developers February 21, 2016 Contents 1 Compiling TrinityCore 3 1.1 Requirements............................................... 3 1.2 Build Environment............................................

More information

To Install and Run NCS6

To Install and Run NCS6 To Install and Run NCS6 -Instructions using Linux OS Required Packages: Install before running NCS6 cuda ( CUDA 4.0 ) Use the link below as reference for CUDA installation: http://sn0v.wordpress.com/2012/05/11/installing-cuda-on-ubuntu-12-04/

More information

HCFFT Documentation. Release. Aparna Suresh

HCFFT Documentation. Release. Aparna Suresh HCFFT Documentation Release Aparna Suresh May 30, 2017 Contents 1 1. Introduction 1 1.1 1. Getting Started............................................. 1 1.2 2. hcfft API Reference.........................................

More information

Intel Distribution for Python* 2018 Beta

Intel Distribution for Python* 2018 Beta Intel Distribution for Python* 2018 Beta Release Notes 27 March 2017 Version History/Revision History Date Revision Description March 2017 1.0 Release Notes for the Intel Distribution for Python* 2018

More information

polymaker Documentation

polymaker Documentation polymaker Documentation Release 1.0.0 Tymofiy Lukinov December 18, 2014 Contents 1 General information 3 1.1 Program description........................................... 3 1.2 Examples.................................................

More information

CUDA QUICK START GUIDE. DU _v9.1 January 2018

CUDA QUICK START GUIDE. DU _v9.1 January 2018 CUDA QUICK START GUIDE DU-05347-301_v9.1 January 2018 TABLE OF CONTENTS Chapter 1. Introduction...1 Chapter 2. Windows... 2 2.1. Network Installer... 2 2.2. Local Installer... 4 Chapter 3. Mac OSX...6

More information

Lab 4: Convolutional Neural Networks Due Friday, November 3, 2017, 11:59pm

Lab 4: Convolutional Neural Networks Due Friday, November 3, 2017, 11:59pm ECE5775 High-Level Digital Design Automation, Fall 2017 School of Electrical Computer Engineering, Cornell University Lab 4: Convolutional Neural Networks Due Friday, November 3, 2017, 11:59pm 1 Introduction

More information

KNIME Python Integration Installation Guide. KNIME AG, Zurich, Switzerland Version 3.7 (last updated on )

KNIME Python Integration Installation Guide. KNIME AG, Zurich, Switzerland Version 3.7 (last updated on ) KNIME Python Integration Installation Guide KNIME AG, Zurich, Switzerland Version 3.7 (last updated on 2019-02-05) Table of Contents Introduction.....................................................................

More information

CONCOCT Documentation. Release 1.0.0

CONCOCT Documentation. Release 1.0.0 CONCOCT Documentation Release 1.0.0 Johannes Alneberg, Brynjar Smari Bjarnason, Ino de Bruijn, Melan December 12, 2018 Contents 1 Features 3 2 Installation 5 3 Contribute 7 4 Support 9 5 Licence 11 6

More information

Robocup In summary. Amirreza Kabiri Fatemeh Pahlevan Aghababa

Robocup In summary. Amirreza Kabiri Fatemeh Pahlevan Aghababa Robocup 2017 In summary Amirreza Kabiri Fatemeh Pahlevan Aghababa Autumn 2017 Outline Models Hardware Specifications Software Specifications Game Field Specifications RoboCup2017RVRL_Demo Repository How

More information

MV 4412 Android 4.0 Compilation

MV 4412 Android 4.0 Compilation MV 4412 Android 4.0 Compilation Microvision Co., Ltd. Document Information Version 1.0 File Name MV4412 Android Compilation.doc Date 2012. 7. 12 Satus Working Revision History Date Version Update Descriptions

More information

143a, Spring 2018 Discussion Week 4 Programming Assignment. Jia Chen 27 Apr 2018

143a, Spring 2018 Discussion Week 4 Programming Assignment. Jia Chen 27 Apr 2018 143a, Spring 2018 Discussion Week 4 Programming Assignment Jia Chen 27 Apr 2018 Setting up Linux environment Setting up Linux environment For Ubuntu or other Linux distribution users sudo apt-get update

More information

Day 1 Lecture 6. Software Frameworks for Deep Learning

Day 1 Lecture 6. Software Frameworks for Deep Learning Day 1 Lecture 6 Software Frameworks for Deep Learning Packages Caffe Theano NVIDIA Digits Lasagne Keras Blocks Torch TensorFlow MxNet MatConvNet Nervana Neon Leaf Caffe Deep learning framework from Berkeley

More information

CUDNN. DU _v07 December Installation Guide

CUDNN. DU _v07 December Installation Guide CUDNN DU-08670-001_v07 December 2017 Installation Guide TABLE OF CONTENTS Chapter Overview... 1 Chapter Installing on Linux... 2 Prerequisites... 2 Installing NVIDIA Graphics Drivers... 2 Installing CUDA...

More information

Manual of SPCI (structural and physico-chemical interpretation) open-source software version 0.1.5

Manual of SPCI (structural and physico-chemical interpretation) open-source software version 0.1.5 Manual of SPCI (structural and physico-chemical interpretation) open-source software version 0.1.5 Version (date) Changes and comments 0.1.0 (02.02.2015) Changes from alpha version: 1. More precise default

More information

Hmax Documentation Documentation

Hmax Documentation Documentation Hmax Documentation Documentation Release 0.01 Youssef Barhomi January 22, 2014 Contents 1 OS and Hardware Prerequisites: 1 2 Installation: 3 3 Run the model on Caltech 101: 5 4 Directory structure: 7

More information

Pico Computing M501 PSP User Guide Linux Version 1.0.1

Pico Computing M501 PSP User Guide Linux Version 1.0.1 CoDeveloper Platform Support Package Pico Computing M501 PSP User Guide Linux Version 1.0.1 Impulse Accelerated Technologies, Inc. www.impulseaccelerated.com 1 1.0 Table of Contents 1.0 TABLE OF CONTENTS...

More information

NVIDIA COLLECTIVE COMMUNICATION LIBRARY (NCCL)

NVIDIA COLLECTIVE COMMUNICATION LIBRARY (NCCL) NVIDIA COLLECTIVE COMMUNICATION LIBRARY (NCCL) DU-08730-210_v01 March 2018 Installation Guide TABLE OF CONTENTS Chapter 1. Overview... 1 Chapter 2. Prerequisites...3 2.1. Software Requirements... 3 2.2.

More information

Vaango Installation Guide

Vaango Installation Guide Vaango Installation Guide Version Version 17.10 October 1, 2017 The Utah Vaango team and Biswajit Banerjee Copyright 2015-2017 Parresia Research Limited The contents of this manual can and will change

More information

Keras: Handwritten Digit Recognition using MNIST Dataset

Keras: Handwritten Digit Recognition using MNIST Dataset Keras: Handwritten Digit Recognition using MNIST Dataset IIT PATNA January 31, 2018 1 / 30 OUTLINE 1 Keras: Introduction 2 Installing Keras 3 Keras: Building, Testing, Improving A Simple Network 2 / 30

More information

ice40 UltraPlus Image Sensor Elliptical Crypto Engine (ECC) Demo - Radiant Software User Guide

ice40 UltraPlus Image Sensor Elliptical Crypto Engine (ECC) Demo - Radiant Software User Guide ice40 UltraPlus Image Sensor Elliptical Crypto Engine (ECC) Demo - Radiant Software FPGA-UG-02060 Version 1.0 June 2018 Contents Acronyms in This Document... 3 1. Introduction... 4 2. Functional Description...

More information

PS Move API Documentation

PS Move API Documentation PS Move API Documentation Release 4.0.4 Thomas Perl Dec 16, 2017 Contents 1 Building PS Move API from source 1 1.1 Building on macos 10.12........................................ 1 1.2 Building on Ubuntu

More information

DEVELOPMENT GUIDE VAB-820. Android BSP v

DEVELOPMENT GUIDE VAB-820. Android BSP v DEVELOPMENT GUIDE VAB-820 Android BSP v5.0.6 1.01-08112017-095100 Copyright Copyright 2017 VIA Technologies Incorporated. All rights reserved. No part of this document may be reproduced, transmitted, transcribed,

More information

Throughput-Optimized OpenCL-based FPGA Accelerator for Large-Scale Convolutional Neural Networks

Throughput-Optimized OpenCL-based FPGA Accelerator for Large-Scale Convolutional Neural Networks Throughput-Optimized OpenCL-based FPGA Accelerator for Large-Scale Convolutional Neural Networks Naveen Suda, Vikas Chandra *, Ganesh Dasika *, Abinash Mohanty, Yufei Ma, Sarma Vrudhula, Jae-sun Seo, Yu

More information

Lab 6: OS Security for the Internet of Things

Lab 6: OS Security for the Internet of Things Department of Computer Science: Cyber Security Practice Lab 6: OS Security for the Internet of Things Introduction The Internet of Things (IoT) is an emerging technology that will affect our daily life.

More information

赛灵思技术日 XILINX TECHNOLOGY DAY. Alveo 数据中心加速卡快速入门. 谢旻 Xilinx 工具与方法高级应用工程师 2019 年 3 月 19 日

赛灵思技术日 XILINX TECHNOLOGY DAY. Alveo 数据中心加速卡快速入门. 谢旻 Xilinx 工具与方法高级应用工程师 2019 年 3 月 19 日 赛灵思技术日 XILINX TECHNOLOGY DAY Alveo 数据中心加速卡快速入门 谢旻 Xilinx 工具与方法高级应用工程师 2019 年 3 月 19 日 Agenda Alveo Acceleration Cards Available Documentations Card Bring-Up and Validation Working with github SDAccel Examples

More information

Singularity: container formats

Singularity: container formats Singularity Easy to install and configure Easy to run/use: no daemons no root works with scheduling systems User outside container == user inside container Access to host resources Mount (parts of) filesystems

More information

Docker & why we should use it

Docker & why we should use it Docker & why we should use it Vicențiu Ciorbaru Software Engineer @ MariaDB Foundation * * Agenda What is Docker? What Docker brings to the table compared to KVM and Vagrant? Docker tutorial What is Docker

More information

HESP PIPELINE v. 1.0

HESP PIPELINE v. 1.0 HESP PIPELINE v. 1.0 Installation and Usage Arun Surya 20/06/2017 1. INSTALLATION The HESP pipeline installation zip file can be downloaded from, https://www.iiap.res.in/hesp/hesp_pipeline.zip. The zip

More information