GetL2BaseAddress#

Fully qualified name: cupva::mem::GetL2BaseAddress

Defined in 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

    • Interrupt handler: No

    • Signal handler: No

    • Thread-safe: Yes

    • Re-entrant: No

    • Async/Sync: Sync

  • Required privileges: None

  • Allowed execution state

    • Initialization: Yes

    • Operational: No

    • Reinit/Deinit Preparation: Yes

  • Maturity: GA

Throws:
  • Refer – cupva::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.

Pre:

None