GetL2BaseAddress#

Fully qualified name: cupva::mem::GetL2BaseAddress

Defined in src/host/cpp_api/include/cupva_host.hpp

void *cupva::mem::GetL2BaseAddress()#

Request a device pointer to the L2SRAM (Orin Only).

This function requires a cupva::Context and will create a default context if not already available.

Pointers returned by this API will always compare as equal. However each CmdProgram has its own L2SRAM allocation which is declared via cupva::CmdProgram::setL2Size(). The pointer returned by this API is a symbolic representation of any CmdProgram’s L2SRAM allocation.

The L2SRAM allocations of separate CmdPrograms can be made to alias and be persistent. Refer to cupva::CmdProgram::setL2Size() for details.

Usage considerations

  • Allowed context for the API call

    • Thread-safe: Yes

  • API group

    • Init: Yes

    • Runtime: No

    • De-Init: No

Throws:
  • Refercupva::Context for possible exceptions if creation of default context is required.

  • cupva::Exception(NotAllowedInOperationalState) – if current context is null and default context does not exist and NVIDIA DRIVE OS VM state is “Operational”

Returns:

L2SRAM device pointer, which can be used to access a CmdProgram’s L2SRAM allocation.