Visible to Intel only — GUID: GUID-45B606D1-D8D7-4F3C-9937-F92B401A69E3
Visible to Intel only — GUID: GUID-45B606D1-D8D7-4F3C-9937-F92B401A69E3
Configuration- and queue-committing member function
This page describes the configuration- and queue-committing member function commit of the descriptor class template, which belongs to the oneapi::mkl::dft namespace and is declared in oneapi/mkl/dft.hpp (file to be included).
namespace oneapi::mkl::dft {
template <precision prec, domain dom>
class descriptor {
public:
void commit(sycl::queue &user_queue);
}
}
The usage of prepended namespace specifiers oneapi::mkl::dft is omitted below for conciseness.
Invocation of this functions notifies that the calling object’s configuration is completed and triggers it to complete the required initialization steps (e.g., pre-computing data, exploring various factorizations, assessing suitability of various algorithms) relevant to enqueueing the DFT computations that it defines to the user-provided user_queue. That sycl::queue object defines the targeted computation device (among other runtime-related characteristics).
Upon successful completion, the calling object is “committed” (its configuration value associated with config_param::COMMIT_STATUS is then config_value::COMMITTED). descriptor objects must be committed to be used in any compute function.
As previously noted, changing any configuration setting of a committed object effectively leaves it “uncommitted” (its configuration value associated with config_param::COMMIT_STATUS is then config_value::UNCOMMITTED). As a consequence, it is best to avoid any call to any set_value member function after invoking the commit member function.
Input parameter
Name |
Type |
Description |
---|---|---|
user_queue |
sycl::queue |
Queue to which DFT computations are to be enqueued by the calling object, when used in compute functions thereafter |
Exceptions
The configuration- and queue-committing member function may throw
a oneapi::mkl::unimplemented exception, e.g., if the calling object’s configuration is not supported (yet);
an std::runtime_error exception, e.g., if the calling object’s configuration is found inconsistent.