---
name: "clGetCommandQueueInfo"
section: "3clc"
platform: "linux"
package: "opencl-1.2-man-doc"
version: "1.0~svn33624-5.1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/clGetCommandQueueInfo"
---

# clGetCommandQueueInfo(3clc)

Query information about a command-queue.

## NAME

clGetCommandQueueInfo - Query information about a command-queue.

##

**cl\_int clGetCommandQueueInfo(cl\_command\_queue** *command\_queue***, cl\_command\_queue\_info** *param\_name***, size\_t** *param\_value\_size***, void \****param\_value***, size\_t \****param\_value\_size\_ret***);**

## PARAMETERS

*command\_queue*

Specifies the command-queue being queried.

*param\_name*

Specifies the information to query.

*param\_value\_size*

Specifies the size in bytes of memory pointed to by *param\_value*. This size must be ≥ size of return type as described in the table below. If *param\_value* is NULL, it is ignored.

*param\_value*

A pointer to memory where the appropriate result being queried is returned. If *param\_value* is NULL, it is ignored.

*param\_value\_size\_ret*

Returns the actual size in bytes of data being queried by *param\_value*. If *param\_value\_size\_ret* is NULL, it is ignored

The list of supported *param\_name* values and the information returned in *param\_value* by **clGetCommandQueueInfo** is described in the table below.

| | |
| --- | --- |
| **cl\_command\_queue\_info** | **Return Type and Information returned in param\_value** |
| **CL\_QUEUE\_CONTEXT** | Return type: **cl\_context** Return the context specified when the command-queue is created. |
| **CL\_QUEUE\_DEVICE** | Return type: **cl\_device\_id** Return the device specified when the command-queue is created. |
| **CL\_QUEUE\_REFERENCE\_COUNT** | Return type: **cl\_uint** Return the command-queue reference count. **CL\_QUEUE\_REFERENCE\_COUNT** should be considered immediately stale. It is unsuitable for general use in applications. This feature is provided for identifying memory leaks. |
| **CL\_QUEUE\_PROPERTIES** | Return type: **cl\_command\_queue\_properties** Return the currently specified properties for the command-queue. These properties are specified by the *properties* argument in [**clCreateCommandQueue**(3clc)](/clCreateCommandQueue/3clc.md). |

## NOTES

It is possible that a device(s) becomes unavailable after a context and command-queues that use this device(s) have been created and commands have been queued to command-queues. In this case the behavior of OpenCL API calls that use this context (and command-queues) are considered to be implementation-defined. The user callback function, if specified, when the context is created can be used to record appropriate information in the *errinfo*, *private\_info* arguments passed to the callback function when the device becomes unavailable.

## ERRORS

Returns CL\_SUCCESS if the function is executed successfully. Otherwise, it returns the following:

•

Returns CL\_INVALID\_COMMAND\_QUEUE if *command\_queue* is not a valid command-queue.

•

Returns CL\_INVALID\_VALUE if *param\_name* is not one of the supported values or if size in bytes specified by *param\_value\_size* is less than size of return type and *param\_value* is not a NULL value.

• CL\_OUT\_OF\_RESOURCES if there is a failure to allocate resources required by the OpenCL implementation on the device.

• CL\_OUT\_OF\_HOST\_MEMORY if there is a failure to allocate resources required by the OpenCL implementation on the host.

## SPECIFICATION

**OpenCL Specification**\[1\]

## SEE ALSO

[**clCreateCommandQueue**(3clc)](/clCreateCommandQueue/3clc.md), [**clReleaseCommandQueue**(3clc)](/clReleaseCommandQueue/3clc.md), [**clRetainCommandQueue**(3clc)](/clRetainCommandQueue/3clc.md)

## AUTHORS

**The Khronos Group**

## COPYRIGHT

Copyright © 2007-2011 The Khronos Group Inc.\
 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and/or associated documentation files (the "Materials"), to deal in the Materials without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Materials, and to permit persons to whom the Materials are furnished to do so, subject to the condition that this copyright notice and permission notice shall be included in all copies or substantial portions of the Materials.

## NOTES

- 1\.

  OpenCL Specification

  page 63, section 5.1 - Command Queues
