Acceleration Management
Go to file
chenke 08af601271 Solve py37 timeout
Py37 job always reports timeout error recently.
Please see [1] [2] [3].
At first it was suspected that the error was reported
because of the patch [4].
Therefore, Feng Shaohe's patch [5] revoked the merge,
and at this time, disappeared at py37 timeout.

But in fact, this problem is just hidden.
After removing this setting, the job of py37
is actually running on the environment of python 3.6
(community CI default version is 3.6), please see [6]
for detailed reasons.

Therefore, this patch exposes the hidden py37 timeout problem,
and at the same time, found method test_apply_patch_fpga_arq_monitor_job
, think it is the reason of the timeout. The reason I can find
this method is based on the the troubleshooting of tox -epy37 log.
After commenting out this method, I found that tox -epy37 can run
normally and there is no longer a timeout problem.

If you want to test, please ensure that you have a local
python3.7 environment, not 3.6, and execute rm .tox / -rf.
Then execute tox -epy37.

Therefore, the best way is to comment out this method and
restore py37 job at the same time.

If a friend discovers further reasons and solution, this method
can be restored, please refer to [7].

What went wrong in this method?
It is because in the deep call of this method, ThreadWork of
the thread pool will be used, which under Python3.7 will block
the execution of unit tests. For specific reasons, please see
[8] [9].

Reference:

[1]. https://review.opendev.org/#/c/702578/
[2]. https://review.opendev.org/#/c/703049/
[3]. https://review.opendev.org/#/c/703253/
[4]. https://review.opendev.org/#/c/696397/
[5]. https://review.opendev.org/#/c/706911/
[6]. http://eavesdrop.openstack.org/irclogs/%23openstack-infra/%23openstack-infra.2020-02-12.log.html#t2020-02-12T16:46:18
[7]. deed9c822e
[8]. https://review.opendev.org/#/c/707045/5//COMMIT_MSG
[9]. c61dd8c376/cyborg/objects/extarq/ext_arq_job.py (L41)

Change-Id: I09db889fe665c6246ec9503af92c909e7d0da24f
2020-02-14 19:49:34 +08:00
api-ref/source Merge "Bump the openstackdocstheme extension to 1.20" 2020-01-11 19:39:42 +00:00
cyborg Solve py37 timeout 2020-02-14 19:49:34 +08:00
devstack Add procname for uwsgi based service cyborg-api 2019-12-02 19:09:24 +08:00
doc Merge "Bump the openstackdocstheme extension to 1.20" 2020-01-11 19:39:42 +00:00
etc/cyborg Modify api-paste.ini v1 to v2 2019-12-20 09:41:29 +00:00
releasenotes Merge "Introduce bandit security linter" 2020-01-14 03:58:49 +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
.coveragerc Exclude cyborg tests dir in UT cover report 2019-10-30 09:40:37 +08:00
.gitignore Exclude cyborg tests dir in UT cover report 2019-10-30 09:40:37 +08:00
.gitreview OpenDev Migration Patch 2019-04-19 19:39:22 +00:00
.stestr.conf Exclude cyborg tests dir in UT cover report 2019-10-30 09:40:37 +08:00
.zuul.yaml Introduce bandit security linter 2020-01-05 19:49:22 -08:00
CONTRIBUTING.rst Add gpu driver 2019-03-21 18:01:29 +08: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 Update README.rst for cyborg 2019-09-03 14:07:28 +08:00
babel.cfg initial setup "correct tox.ini testr and test-requirement.txt requirement 2016-01-18 14:29:39 +08:00
bindep.txt Add bindep support 2019-08-05 14:31:35 +08:00
requirements.txt Use ResourceNotFound replace RP and Image NotFound 2020-01-17 09:08:22 +00:00
setup.cfg Stop testing python2.7 2019-11-19 02:09:08 -05:00
setup.py uncap eventlet 2018-05-07 17:42:19 +03:00
test-requirements.txt Use ResourceNotFound replace RP and Image NotFound 2020-01-17 09:08:22 +00:00
tox.ini Solve py37 timeout 2020-02-14 19:49:34 +08: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