echo 0 > /sys/class/fpga_manager/fpga0/flags
cp ultra_wrapper.bit /lib/firmware/
echo ultra_wrapper.bit > /sys/class/fpga_manager/fpga0/firmware
mkdir -p /sys/kernel/config/device-tree/overlays/pl
We will detail the steps for PYNQ installation on Debian Stretch. We will use the Debian Stretch released along with DNNDK, on ZCU104 board. For other Debian-based OS, the flow will be similar.
This step is to configure the image, which is specific to ZCU104 Debian Stretch released. It is not
PROJECT(PYNQ) | |
CMAKE_MINIMUM_REQUIRED(VERSION 3.0.0) | |
SET(PROJECT_DESCRIPTION "https://github.com/Xilinx/PYNQ") | |
SET(CMAKE_CXX_STANDARD 14) | |
SET(CMAKE_CXX_STANDARD_REQUIRED ON) | |
MESSAGE("-- Target system processor: ${CMAKE_SYSTEM_PROCESSOR}") | |
SET(PYNQ_VERSION_MAJOR 2) | |
SET(PYNQ_VERSION_MINOR 5) | |
SET(PYNQ_VERSION_STRING ${PYNQ_VERSION_MAJOR}.${PYNQ_VERSION_MINOR}) | |
MESSAGE("-- PYNQ version: ${PYNQ_VERSION_STRING}") |
import re | |
import shutil | |
import subprocess | |
rootfs_packages = { | |
'jupyter': '4.4', | |
'python3-opencv': '3.2.0', | |
'lm-sensors': '1' | |
} |
Go to your log folder as instructed when you start ray.
cat redis-shard_0.out
You may see the following warnings.
875:C 17 Apr 2019 16:32:39.561 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
5875:C 17 Apr 2019 16:32:39.561 # Redis version=5.0.3, bits=64, commit=00000000, modified=0, pid=5875, just started
There are multiple ways to build ray on aarch64 processors. We will use the PYNQ image v2.4 with Ubuntu 18.04 OS as an example. In this document, we will introduce 2 approaches to build ray; we will always prefer the second approach (building on Amazon A1) since it is faster, cleaner, and easy to reproduce.
I am building bazel
for aarch64 on Amazon A1 platform. This flow is
pretty nice and much easier than the QEMU flow which is prone to QEMU
bugs.
Here you'll learn how to build Bazel for Pynq-Z1 (image v2.4). A similar flow can be run directly on the board (native build). However, this guide is based on QEMU flow, which is running faster and cleaner than a native build on the board.
The same flow can also target aarch64 (ZCU104). You just have to work with
the correct image (instead of Pynq-Z1-2.4.img
, work with ZCU104-2.4.img
).
# This file is included from a subdirectory | |
set(PYTHON_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../") | |
ocv_add_module(${MODULE_NAME} BINDINGS) | |
ocv_module_include_directories( | |
"${PYTHON_INCLUDE_PATH}" | |
${PYTHON_NUMPY_INCLUDE_DIRS} | |
"${PYTHON_SOURCE_DIR}/src2" | |
) |