mirror of
https://github.com/intel/intel-device-plugins-for-kubernetes.git
synced 2025-06-03 03:59:37 +00:00
Merge pull request #22 from bart0sh/PR0016-rework-fpga-demo
Rework FPGA demo
This commit is contained in:
commit
f36bf8ae12
@ -1,22 +1,15 @@
|
||||
FROM ubuntu:16.04
|
||||
|
||||
# install OPAE build tools and dependencies
|
||||
RUN apt-get update && apt-get install -y cmake gcc g++ patch wget zip libboost-all-dev libjson-c-dev uuid-dev
|
||||
RUN apt-get update && apt-get install -y wget libjson0 uuid-dev
|
||||
|
||||
COPY hello_fpga.diff /opt/build/
|
||||
ENV OPAE_URL https://github.com/OPAE/opae-sdk/releases/download/1.0.0-5
|
||||
|
||||
# download OPAE sources
|
||||
RUN mkdir -p /opt/build && \
|
||||
cd /opt/build && \
|
||||
wget https://github.com/OPAE/opae-sdk/archive/0.13.0.tar.gz -O- | tar -zx
|
||||
wget $OPAE_URL/opae-libs-1.0.0.x86_64.deb $OPAE_URL/opae-tools-1.0.0.x86_64.deb \
|
||||
$OPAE_URL/opae-tools-extra-1.0.0.x86_64.deb $OPAE_URL/opae-devel-1.0.0.x86_64.deb && \
|
||||
dpkg -i *.deb
|
||||
|
||||
# patch, build and install OPAE and hello_fpga
|
||||
RUN cd /opt/build/opae-sdk-0.13.0 && \
|
||||
patch -p0 < ../hello_fpga.diff && \
|
||||
mkdir mybuild && \
|
||||
cd mybuild && \
|
||||
cmake .. -DBUILD_ASE=1 && \
|
||||
make install && \
|
||||
cp ./bin/hello_fpga /usr/bin/
|
||||
|
||||
COPY run_hello_fpga.sh /usr/bin/
|
||||
COPY test_fpga.sh /usr/bin/
|
||||
|
@ -1,20 +0,0 @@
|
||||
#!/bin/sh -xe
|
||||
|
||||
if [ $(cat /sys/class/fpga/intel-fpga-dev.0/intel-fpga-port.0/afu_id) != 'd8424dc4a4a3c413f89e433683f9040b' ] ; then
|
||||
echo 'ERROR: NLB(Native Loopback Adapter) AFU is not loaded' >&2
|
||||
echo 'Please refer to the NLB documentation for the location of the NLB green bitstream.'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ $(cat /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages) -lt 20 ] ; then
|
||||
echo 'ERROR: system hugepage is not configured to reserve 2M-hugepages' >&2
|
||||
echo 'please run this command to do it: "echo 20 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages"'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
devnum=$(ls /dev/intel-fpga-port.* | cut -f2 -d.)
|
||||
name="intel-fpga-dev.$devnum"
|
||||
bus="0x$(ls -la /sys/class/fpga/$name/ |grep device |cut -f3 -d:)"
|
||||
echo "using device $name, bus $bus"
|
||||
|
||||
/usr/bin/hello_fpga -b $bus
|
22
demo/ubuntu-demo-opae/test_fpga.sh
Executable file
22
demo/ubuntu-demo-opae/test_fpga.sh
Executable file
@ -0,0 +1,22 @@
|
||||
#!/bin/sh -e
|
||||
|
||||
# Test FPGA by running 2 OPAE samples: nlb3 and nlb0
|
||||
# nlb3 is expected to succeed, nlb0 - to fail
|
||||
green () { echo "\033[0;32m$1\033[0m";}
|
||||
red () { echo "\033[0;31m$1\033[0m";}
|
||||
|
||||
green 'Running nlb3'
|
||||
if nlb3; then
|
||||
green 'nlb3 succeeded as expected'
|
||||
green 'Running nlb0 sample'
|
||||
if nlb0; then
|
||||
red 'nlb0 succeeded'
|
||||
red 'FAILURE: unexpected nlb0 success'
|
||||
else
|
||||
green 'nlb0 failed as expected'
|
||||
green 'SUCCESS'
|
||||
fi
|
||||
else
|
||||
red 'nlb3 failed'
|
||||
green 'FAILURE: unexpeced nlb3 failure'
|
||||
fi
|
Loading…
Reference in New Issue
Block a user