Acceleration Management
Go to file
Li Liu 0bd8a7d9de Added downloading bitstream when programming fpga
How to test the flow of program process manually:
1. generate the fake env by the follow command
cat > ./fake_env.sh << EOL
SYSINFO=cyborg/accelerator/drivers/fpga/intel/sysinfo.py
UTILS=cyborg/accelerator/drivers/fpga/utils.py
sed -i -e 's/^\(SYS_FPGA\) = "\(\/sys\/class\/fpga\)"$/\1 = "\/tmp\2"/g' $SYSINFO
sed -i -e 's/^\(SYS_FPGA_PATH\) = "\(\/sys\/class\/fpga\)"$/\1 = "\/tmp\2"/g' $UTILS
python cyborg/tests/unit/accelerator/drivers/fpga/intel/prepare_test_data.py
LOG=/tmp/intel_fpga_program.log
sudo echo 'echo fpgaconf \$@ '"|tee $LOG" > /usr/bin/fpgaconf
sudo echo "date |tee -a $LOG" >> /usr/bin/fpgaconf
sudo echo "echo 'Program intel FPGA successfully' |tee -a $LOG" >> /usr/bin/fpgaconf
sudo chmod a+x /usr/bin/fpgaconf
EOL

chmod a+x ./fake_env.sh
sudo ./fake_env.sh

2. Please use curl command as follows:
curl -s -X PATCH -H "X-Auth-Token: $OS_TOKEN" -H "Content-Type: application/json"\
  -d '[{
    	"path": "/program",
    	"op": "replace",
    	"value": [{
    		"image_uuid": "{image_uuid}"
    	}]
  }]'\
  http://{host_ip}:6666/v1/accelerators/deployables/{deployable_uuid}/program

3. Checke the /tmp/intel_fpga_program.log it should see the infomation as
the follow exmaple:
$ cat /tmp/intel_fpga_program.log
fpgaconf -b 04 -d 00 -f 1 4047d422-5d2f-432c-b87f-5e1749e95ee6.bin
Sat Oct 27 15:08:34 UTC 2018
Program intel FPGA successfully

Change-Id: I70ff5edac65fe9e9ec1783d62c2ecd21ac5fab18
2018-10-27 15:27:20 +00:00
cyborg Added downloading bitstream when programming fpga 2018-10-27 15:27:20 +00:00
devstack support sub provider 2018-08-10 07:49:37 +00:00
doc Merge "Follow the new PTI for document build" 2018-08-13 13:37:09 +00:00
etc/cyborg Load cyborg-api app with paste_deploy 2018-06-07 21:42:52 +08:00
playbooks/legacy/cyborg-devstack Move legacy jobs to project 2017-12-29 09:27:59 +01:00
releasenotes Update reno for stable/rocky 2018-08-13 15:25:26 +00:00
sandbox Setup sandbox and specs folder 2017-03-14 01:16:33 +08:00
setup Cyborg deployment script 2017-08-30 09:27:56 -04:00
tools/config Fix tox -egenconfig 2018-06-10 16:37:40 +08:00
.gitignore Docs: Autogenerate config documentation 2018-08-08 01:26:38 +00:00
.gitreview Rename project in .gitreview 2017-01-13 08:08:37 +11:00
.stestr.conf Switch to stestr 2018-07-24 15:10:52 +07:00
.zuul.yaml switch documentation job to new PTI 2018-08-17 14:47:35 +09:00
CONTRIBUTING.rst Update and replace http with https for doc links in cyborg 2017-09-12 22:46:46 -07:00
HACKING.rst Add doc8 to pep8 check for cyborg project 2018-05-10 09:32:01 +07:00
LICENSE initial setup "correct tox.ini testr and test-requirement.txt requirement 2016-01-18 14:29:39 +08:00
README.rst Pike doc clean up 2017-09-13 10:51:11 -06:00
babel.cfg initial setup "correct tox.ini testr and test-requirement.txt requirement 2016-01-18 14:29:39 +08:00
requirements.txt Switch to stestr 2018-07-24 15:10:52 +07:00
setup.cfg Follow the new PTI for document build 2018-08-11 12:55:49 +08:00
setup.py uncap eventlet 2018-05-07 17:42:19 +03:00
test-requirements.txt Follow the new PTI for document build 2018-08-11 12:55:49 +08:00
tox.ini Improve pep8 checking along with hacking 2018-08-16 17:22:33 +07:00

README.rst

Cyborg

OpenStack Acceleration as a Service

Cyborg provides a general management framework for accelerators such as FPGA, GPU, SoCs, NVMe SSDs, CCIX caches, DPDK/SPDK, pmem and so forth.

Features

  • REST API for basic accelerator life cycle management
  • Generic driver for common accelerator support