Driver Development Guide

The goal of this document is to explain how to develop a new kind of Cyborg accelerator driver.


Make sure you have installed Openstack environment using devstack before development.

Derive a new driver class

Imply the necessary interface, the list of interfaces is as follows:

class NewCyborgDriver(object):
    """Cyborg new accelerator driver.

    def discover(self):
        """Discover specific accelerator
        :return: list of cyborg.objects.driver_objects.driver_device.

Modify setup.cfg

Add the new driver map into file cyborg/setup.cfg:

cyborg.accelerator.driver =
    intel_fpga_driver =
    new_driver_name = cyborg.accelerator.drivers.example.driver:NewCyborgDriver

Reinstall and Test

Reinstall cyborg:

$ python develop

Restart cyborg-agent:

$ sudo systemctl restart devstack@cyborg-agent