Component encapsulating the UCP context. More...
#include <context.h>
Public Member Functions | |
| Context (const Context &)=delete | |
| Context & | operator= (Context const &)=delete |
| Context (Context &&o)=delete | |
| Context & | operator= (Context &&o)=delete |
| ~Context () | |
ucxx::Context destructor | |
| ConfigMap | getConfig () |
| Get the context configuration. More... | |
| ucp_context_h | getHandle () |
Get the underlying ucp_context_h handle. More... | |
| std::string | getInfo () |
| Get information from UCP context. More... | |
| uint64_t | getFeatureFlags () const |
| Get feature flags that were used to construct the UCP context. More... | |
| bool | hasCudaSupport () const |
| Query whether CUDA support is available. More... | |
| WorkerBuilder | workerBuilder () |
Create a builder for a new ucxx::Worker. More... | |
| MemoryHandleBuilder | memoryHandleBuilder (size_t size) |
Create a builder for a new ucxx::MemoryHandle. More... | |
Public Member Functions inherited from ucxx::Component | |
| void | setParent (std::shared_ptr< Component > parent) |
| Set the internal parent reference. More... | |
| std::shared_ptr< Component > | getParent () const |
| Get the internal parent reference. More... | |
Static Public Attributes | |
| static constexpr uint64_t | defaultFeatureFlags |
| Suggested default context feature flags to use. More... | |
Friends | |
| class | detail::ConstructorFactory |
| class | ContextBuilder |
| Allow ContextBuilder to access private constructor. | |
Additional Inherited Members | |
Protected Attributes inherited from ucxx::Component | |
| std::shared_ptr< Component > | _parent {nullptr} |
| A reference-counted pointer to the parent. | |
Component encapsulating the UCP context.
The UCP layer provides a handle to access its context in form of ucp_context_h object, this class encapsulates that object and provides methods to simplify its handling.
Use ucxx::contextBuilder to create and configure Context instances.
| ConfigMap ucxx::Context::getConfig | ( | ) |
Get the context configuration.
The context configuration is a ConfigMap containing entries of the UCX variables that were set upon creation of the UCP context. Only those variables known to UCP can be acquired.
ConfigMap corresponding to the context's configuration. | uint64_t ucxx::Context::getFeatureFlags | ( | ) | const |
Get feature flags that were used to construct the UCP context.
Get feature flags that were used to construct the UCP context, this has the same value that was specified by the user when creating the ucxx::Context object.
| ucp_context_h ucxx::Context::getHandle | ( | ) |
Get the underlying ucp_context_h handle.
Lifetime of the ucp_context_h handle is managed by the ucxx::Context object and its ownership is non-transferrable. Once the ucxx::Context is destroyed the handle is not valid anymore, it is the user's responsibility to ensure the owner's lifetime while using the handle.
ucp_context_h handle | std::string ucxx::Context::getInfo | ( | ) |
Get information from UCP context.
Get information from UCP context, including memory domains, transport resources, and other useful information. This method is a wrapper to ucp_context_print_info.
| bool ucxx::Context::hasCudaSupport | ( | ) | const |
Query whether CUDA support is available.
Query whether the UCP context has CUDA support available. This is a done through a combination of verifying whether CUDA memory support is available and UCX_TLS allows CUDA to be enabled, essentially UCX_TLS must explicitly be one of the following:
all;cuda;^ (disable all listed transports) and NOT contain a field named either cuda or cuda_copy.| MemoryHandleBuilder ucxx::Context::memoryHandleBuilder | ( | size_t | size | ) |
Create a builder for a new ucxx::MemoryHandle.
Calling this method only creates the builder. Finalizing it with .build() or implicit conversion maps memory as a child of this context.
| [in] | size | the minimum size of the memory allocation. |
| WorkerBuilder ucxx::Context::workerBuilder | ( | ) |
Create a builder for a new ucxx::Worker.
Calling this method only creates the builder. Finalizing it with .build() or implicit conversion constructs a ucxx::Worker as a child of this context.
|
staticconstexpr |
Suggested default context feature flags to use.