Skip to main content

class delayed_async_event

Declaration

class delayed_async_event : public async_event_impl { /* full declaration omitted */ };

Description

Abstract base class for async_event implementations.

Declared at: include/backend/sycl_backend.h:42

Inherits from: async_event_impl

Member Variables

std::shared_ptr<state> m_state

Member Aliases

  • using shared_state = std::shared_ptr<state>;

Member Function Overview

Inherited from async_event_impl:

Member Functions

delayed_async_event(const shared_state& state)

Declared at: include/backend/sycl_backend.h:55

Parameters

const shared_state& state

std::optional<std::chrono::nanoseconds>
get_native_execution_time()

Description

Returns the time execution time as measured if profiling was enabled in the issuing component. Requires is_complete() to be true.

Declared at: include/backend/sycl_backend.h:59


void* get_result()

Description

There is only one instruction type which returns a result, namely alloc_instruction returning a pointer to the allocated memory, i.e. a void*. Having a void* return type on async_event_impl is somewhat leaky, but we don't gain much by wrapping it in a std::any.

Declared at: include/backend/sycl_backend.h:58


bool is_complete()

Description

If this function returns true once, the implementation must guarantee that it will always do so in the future. The event is expected to be cheap to poll repeatedly, and the operation must proceed in the background even while not being polled.

Declared at: include/backend/sycl_backend.h:57