Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add experimental extension for mutable command lists #264

Merged
merged 5 commits into from
Jan 24, 2024

Conversation

wdamon-intel
Copy link
Contributor

Resolves #260

@wdamon-intel
Copy link
Contributor Author

@MichalMrozek for review

@wdamon-intel
Copy link
Contributor Author

@zzdanowicz for review

- type: $x_command_list_handle_t
name: hCommandList
desc: "[in] handle of the command list"
- type: "const $x_mutable_command_id_exp_desc_t*"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

part of x_mutable_command_id_exp_desc_t is x_mutable_command_list_exp_flags_t - does it mean we can specify in advance when getting CommandID which part of next append are going to mutate?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, that's the goal

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok, thanks

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@zzdanowicz The mutable command id descriptor does not currently contain the command list flags, only the command flags. The command list properties reports out both command list and command flags.

Is it a requirement that the command list flags be built into the command id descriptor? The command flags should be sufficient.

Copy link
Contributor

@zzdanowicz zzdanowicz Jan 24, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, command flags. I just added (embargo) definitions, for the development purposes before official header arrives.
Treat them as temporary and only for sake of development - did I got it right?

typedef uint32_t ze_mutable_command_exp_flags_t;
typedef enum _ze_mutable_command_exp_flag_t {
    ZE_MUTABLE_COMMAND_EXP_FLAG_KERNEL_ARGUMENTS = ZE_BIT(0),
    ZE_MUTABLE_COMMAND_EXP_FLAG_GROUP_COUNT = ZE_BIT(1),
    ZE_MUTABLE_COMMAND_EXP_FLAG_GROUP_SIZE = ZE_BIT(2),
    ZE_MUTABLE_COMMAND_EXP_FLAG_GLOBAL_OFFSET = ZE_BIT(3),
    ZE_MUTABLE_COMMAND_EXP_FLAG_SIGNAL_EVENT = ZE_BIT(4),
    ZE_MUTABLE_COMMAND_EXP_FLAG_WAIT_EVENTS = ZE_BIT(5),
    ZE_MUTABLE_COMMAND_EXP_FLAG_FORCE_UINT32 = 0x7fffffff
} ze_mutable_command_exp_flag_t;

#define ZE_STRUCTURE_TYPE_MUTABLE_COMMAND_ID_EXP_DESC (ze_structure_type_t)0x00040001

typedef struct _ze_mutable_command_id_exp_desc_t {
    ze_structure_type_t stype;
    const void *pNext;
    ze_mutable_command_exp_flags_t flags;
} ze_mutable_command_id_exp_desc_t;

@wdamon-intel wdamon-intel merged commit 954e0e2 into oneapi-src:master Jan 24, 2024
@wdamon-intel wdamon-intel deleted the issue260-mutable branch January 24, 2024 15:43
lisanna-dettwyler pushed a commit that referenced this pull request Nov 13, 2024
…anges (#264)

* Update documentation on Init and add deprecation comments for init changes

Signed-off-by: Neil R. Spruit <neil.r.spruit@intel.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Experimental extension to mutate commands in a command list
5 participants