Are you sure you want to delete this task? Once this task is deleted, it cannot be recovered.
linfengjun 0c44a5ba2e | 2 years ago | |
---|---|---|
.. | ||
Dockerfile | 2 years ago | |
README.md | 2 years ago | |
aws-fpga-device-plugin.yaml | 2 years ago | |
build | 2 years ago | |
fpga_aws.go | 2 years ago | |
main.go | 2 years ago | |
mypod.yaml | 2 years ago | |
server.go | 2 years ago | |
watcher.go | 2 years ago |
The FPGA plugin in this folder is only for AWS running XRT prior 2019.2. In XRT 2019.2,
the normal plugin in the parent folder works also for AWS, and there is no limitation
mentioned below for this plugin.
This kubernetes FPGA device plugin is created for cluster running on aws F1 nodes.
The FPGA cards in F1 are different to those Xilinx ones. The differences are in both hardware
and software, so the plugin created for Xilinx FPGA & XRT doesn't work for AWS.
In this dedicated plugin,
The plugin itself only relies on a readonly sysfs, so the same to the plugin for Xilinx
FPGAs, this aws plugin is also deployed as normal container in which the sysfs is mounted
as readonly. While for user pods, in order to run awssak scan/list and/or aws specific
fpga- commands, root access has to be granted within the container, which means, in addtion
to the install of xrt/aws-xrt and aws fpga tools from https://github.com/aws/aws-fpga.git,
the user pods have to be deployed in 'privileged' mode.
Once the kubernetes cluster and XRT is being setup on aws, you can follow following step to install and test the kubernetes plugin.
Download plugin source:
#git clone https://github.com/Xilinx/FPGA_as_a_Service.git
Deploy FPGA device plugin as daemonset:
#kubectl create -f ./FPGA_as_a_Service/k8s-fpga-device-plugin/trunk/fpga-device-plugin.yml
To check the status of daemonset:
#kubectl get pod -n kube-system
Get node name:
#kubectl get node
Check FPGA resource in the worker node:
#kubectl describe node nodename
You should get the FPGA resources name under the pods information.
#kubectl create -f mypod.yaml
For more details, please refer to the README file of the Xilinx FPGA plugin
After user pod status turns to Running, run hello world in the pod:
#kubectl exec -it my-pod /bin/bash
#my-pod>source /opt/xilinx/xrt/setup.sh
#my-pod>export INTERNAL_BUILD=1
#my-pod>xbutil scan
#my-pod>cd /opt/test/
#my-pod>./helloworld vector_addition_hw.awsxclbin
Note: Need to set the INTERNAL_BUILD=1 if xbutil complain the version not match:
#./build
The output is the binary 'aws-fpga-device-plugin' in the current folder
面向多计算场景的一站式融合计算平台
CSS Go SVG Vue Markdown other
Dear OpenI User
Thank you for your continuous support to the Openl Qizhi Community AI Collaboration Platform. In order to protect your usage rights and ensure network security, we updated the Openl Qizhi Community AI Collaboration Platform Usage Agreement in January 2024. The updated agreement specifies that users are prohibited from using intranet penetration tools. After you click "Agree and continue", you can continue to use our services. Thank you for your cooperation and understanding.
For more agreement content, please refer to the《Openl Qizhi Community AI Collaboration Platform Usage Agreement》