def setUp(self):
     # super(OpenclinterfaceTestCase, self).setUp();
     super(OpenclkernelsinterfaceTestCase, self).setUp()
     self.testResources = LaptopResources()
     self.Devices = os_openclinterface.OpenCLDevices()
     self.Contexts = os_openclinterface.OpenCLContexts()
     self.Programs = os_openclprogramsinterface.OpenCLPrograms()
     self.Kernels = os_openclkernelsinterface.OpenCLKernels()
     self.Buffers = os_openclbuffersinterface.OpenCLBuffers()
     req = Request()
     body = {'Devices': self.testResources.listDevicesIDs, 'Properties': []}
     resp = self.Contexts.create(req, body)['CreateResp']
     self.assertEqual(resp['CL_ERROR_CODE'], 0)
     self.contextID = resp['id']
     req = Request()
     listProgramStringsPairs = []
     for progstr in self.testResources.programCodeStrings:
         listProgramStringsPairs.append({'ProgramString': progstr})
     body = {'Context': self.contextID, 'ListProgramStrings': listProgramStringsPairs}
     resp = self.Programs.create(req, body)['CreateResp']
     self.programID = resp['id']
     retErr = resp['CL_ERROR_CODE']
     self.assertEqual(retErr, 0)
     buildOptions = ""
     body = {'ListDevices': self.testResources.listDevicesIDs, 'CompileOptions': buildOptions}
     retErr = self.Programs.build(req, str(self.programID), body)['CL_ERROR_CODE']
     self.assertEqual(retErr, 0)
     # create buffers
     bufferSize = 512
     body = {'Context': self.contextID, 'MEM_SIZE': bufferSize, 'BufferProperties': []}
     bufferCreateResp = self.Buffers.create(req, body)['CreateResp']
     self.bufferID = bufferCreateResp['id']
     self.assertEqual(bufferCreateResp['CL_ERROR_CODE'], 0)
Ejemplo n.º 2
0
    def get_resources(self):
        # register OpenCLDevices RESTful resource
        resources = []
        #initialize the OpenCLInterface if there are any errors do not register any resources

        res = extensions.ResourceExtension('os-opencldevices',
                                           controller=OpenCLDevices())
        resources.append(res)
        res = extensions.ResourceExtension('os-openclcontexts',
                                           controller=OpenCLContexts(),
                                           member_actions={
                                               "retain": "POST",
                                               "release": "POST",
                                           })
        resources.append(res)
        res = extensions.ResourceExtension(
            'os-openclqueues',
            controller=openclqueuesinterface.OpenCLQueues(),
            member_actions={
                "retain": "POST",
                "release": "POST",
                "enqueuereadbuffer": "POST",
                "enqueuewritebuffer": "POST",
                "enqueuecopybuffer": "POST",
                "enqueuendrangekernel": "POST",
                "enqueuetask": "POST",
                "enqueuebarrier": "POST",
                "finish": "POST",
            })
        resources.append(res)
        res = extensions.ResourceExtension(
            'os-openclbuffers',
            controller=openclbuffersinterface.OpenCLBuffers(),
            member_actions={
                "retain": "POST",
                "release": "POST",
            })
        resources.append(res)
        res = extensions.ResourceExtension(
            'os-openclprograms',
            controller=openclprogramsinterface.OpenCLPrograms(),
            member_actions={
                "retain": "POST",
                "release": "POST",
                "build": "POST",
                "buildinfo": "POST",
            })
        resources.append(res)
        res = extensions.ResourceExtension(
            'os-openclkernels',
            controller=openclkernelsinterface.OpenCLKernels(),
            member_actions={
                "retain": "POST",
                "release": "POST",
                "setkernelarg": "POST",
            })
        resources.append(res)
        return resources
 def setUp(self):
     # super(OpenclinterfaceTestCase, self).setUp();
     super(OpenclbuffersinterfaceTestCase, self).setUp()
     self.deviceResponses = LaptopResponses()
     self.Devices = os_openclinterface.OpenCLDevices()
     self.Contexts = os_openclinterface.OpenCLContexts()
     self.Buffers = os_openclbuffersinterface.OpenCLBuffers()
     req = Request()
     body = {
         'Devices': self.deviceResponses.listDevicesIDs,
         'Properties': []
     }
     resp = self.Contexts.create(req, body)['CreateResp']
     self.assertEqual(resp['CL_ERROR_CODE'], 0)
     self.contextID = resp['id']
Ejemplo n.º 4
0
 def setUp(self):
     # super(OpenclinterfaceTestCase, self).setUp();
     super(OpenclqueuesinterfaceBufferCopyTestCase, self).setUp()
     self.testResources = LaptopResources()
     self.Devices = os_openclinterface.OpenCLDevices()
     self.Contexts = os_openclinterface.OpenCLContexts()
     self.Queues = os_openclqueuesinterface.OpenCLQueues()
     self.Buffers = os_openclbuffersinterface.OpenCLBuffers()
     req = Request()
     body = {'Devices': self.testResources.listDevicesIDs, 'Properties': []}
     resp = self.Contexts.create(req, body)['CreateResp']
     self.assertEqual(resp['CL_ERROR_CODE'], 0)
     self.contextID = resp['id']
     # create buffers
     self.bufferSize1 = 32
     body = {
         'Context': self.contextID,
         'MEM_SIZE': self.bufferSize1,
         'BufferProperties': []
     }
     bufferCreateResp = self.Buffers.create(req, body)['CreateResp']
     self.bufferID1 = bufferCreateResp['id']
     self.assertEqual(bufferCreateResp['CL_ERROR_CODE'], 0)
     self.bufferSize2 = 32
     body = {
         'Context': self.contextID,
         'MEM_SIZE': self.bufferSize2,
         'BufferProperties': []
     }
     bufferCreateResp = self.Buffers.create(req, body)['CreateResp']
     self.bufferID2 = bufferCreateResp['id']
     self.assertEqual(bufferCreateResp['CL_ERROR_CODE'], 0)
     # create queue
     body = {
         'Context': self.contextID,
         'Device': self.testResources.listDevicesOnSystem[0]
     }
     resp = self.Queues.create(req, body)['CreateResp']
     self.queueID = resp['id']
     self.assertEqual(resp['CL_ERROR_CODE'], 0)
Ejemplo n.º 5
0
 def setUp(self):
     # super(OpenclinterfaceTestCase, self).setUp();
     super(OpenclqueuesinterfaceKernelLaunchTestCase, self).setUp()
     self.testResources = LaptopResources()
     self.Devices = os_openclinterface.OpenCLDevices()
     self.Contexts = os_openclinterface.OpenCLContexts()
     self.Queues = os_openclqueuesinterface.OpenCLQueues()
     self.Buffers = os_openclbuffersinterface.OpenCLBuffers()
     self.Programs = os_openclprogramsinterface.OpenCLPrograms()
     self.Kernels = os_openclkernelsinterface.OpenCLKernels()
     req = Request()
     body = {'Devices': self.testResources.listDevicesIDs, 'Properties': []}
     resp = self.Contexts.create(req, body)['CreateResp']
     self.assertEqual(resp['CL_ERROR_CODE'], 0)
     self.contextID = resp['id']
     # create buffers
     self.bufferSize1 = 32
     body = {
         'Context': self.contextID,
         'MEM_SIZE': self.bufferSize1,
         'BufferProperties': []
     }
     bufferCreateResp = self.Buffers.create(req, body)['CreateResp']
     self.bufferID1 = bufferCreateResp['id']
     self.assertEqual(bufferCreateResp['CL_ERROR_CODE'], 0)
     self.bufferSize2 = 32
     body = {
         'Context': self.contextID,
         'MEM_SIZE': self.bufferSize2,
         'BufferProperties': []
     }
     bufferCreateResp = self.Buffers.create(req, body)['CreateResp']
     self.bufferID2 = bufferCreateResp['id']
     self.assertEqual(bufferCreateResp['CL_ERROR_CODE'], 0)
     # create queue
     body = {
         'Context': self.contextID,
         'Device': self.testResources.listDevicesOnSystem[0]
     }
     resp = self.Queues.create(req, body)['CreateResp']
     self.queueID = resp['id']
     self.assertEqual(resp['CL_ERROR_CODE'], 0)
     # create and build program
     listProgramStringsPairs = []
     for progstr in self.testResources.programCodeStrings:
         listProgramStringsPairs.append({'ProgramString': progstr})
     body = {
         'Context': self.contextID,
         'ListProgramStrings': listProgramStringsPairs
     }
     resp = self.Programs.create(req, body)['CreateResp']
     self.programID = resp['id']
     retErr = resp['CL_ERROR_CODE']
     self.assertEqual(retErr, 0)
     buildOptions = ""
     body = {
         'ListDevices': self.testResources.listDevicesIDs,
         'CompileOptions': buildOptions
     }
     retErr = self.Programs.build(req, str(self.programID),
                                  body)['CL_ERROR_CODE']
     self.assertEqual(retErr, 0)
     # create kernel
     kernelName = self.testResources.KernelFunctionName
     body = {'Program': self.programID, 'KernelName': kernelName}
     resp = self.Kernels.create(req, body)['CreateResp']
     self.kernelID = resp['id']
     self.assertEqual(resp['CL_ERROR_CODE'], 0)