Halide 19.0.0
Halide compiler and libraries
Loading...
Searching...
No Matches
memory_resources.h File Reference
#include "../HalideRuntime.h"

Go to the source code of this file.

Classes

struct  Halide::Runtime::Internal::MemoryProperties
 
struct  Halide::Runtime::Internal::MemoryBlock
 
struct  Halide::Runtime::Internal::MemoryRange
 
struct  Halide::Runtime::Internal::MemoryRegion
 
struct  Halide::Runtime::Internal::MemoryRequest
 
struct  Halide::Runtime::Internal::BlockResource
 
struct  Halide::Runtime::Internal::BlockRegion
 
struct  Halide::Runtime::Internal::SystemMemoryAllocatorFns
 
struct  Halide::Runtime::Internal::HalideSystemAllocatorFns
 
struct  Halide::Runtime::Internal::MemoryBlockAllocatorFns
 
struct  Halide::Runtime::Internal::MemoryRegionAllocatorFns
 

Namespaces

namespace  Halide
 This file defines the class FunctionDAG, which is our representation of a Halide pipeline, and contains methods to using Halide's bounds tools to query properties of it.
 
namespace  Halide::Runtime
 
namespace  Halide::Runtime::Internal
 

Typedefs

typedef void *(* Halide::Runtime::Internal::AllocateSystemFn) (void *, size_t)
 
typedef void(* Halide::Runtime::Internal::DeallocateSystemFn) (void *, void *)
 
typedef int(* Halide::Runtime::Internal::AllocateBlockFn) (void *, MemoryBlock *)
 
typedef int(* Halide::Runtime::Internal::DeallocateBlockFn) (void *, MemoryBlock *)
 
typedef int(* Halide::Runtime::Internal::ConformBlockRequestFn) (void *, MemoryRequest *)
 
typedef int(* Halide::Runtime::Internal::AllocateRegionFn) (void *, MemoryRegion *)
 
typedef int(* Halide::Runtime::Internal::DeallocateRegionFn) (void *, MemoryRegion *)
 
typedef int(* Halide::Runtime::Internal::ConformBlockRegionFn) (void *, MemoryRequest *)
 

Enumerations

enum class  Halide::Runtime::Internal::AllocationStatus {
  Halide::Runtime::Internal::InvalidStatus , Halide::Runtime::Internal::InUse , Halide::Runtime::Internal::Available , Halide::Runtime::Internal::Purgeable ,
  Halide::Runtime::Internal::Dedicated
}
 
enum class  Halide::Runtime::Internal::MemoryVisibility {
  Halide::Runtime::Internal::InvalidVisibility , Halide::Runtime::Internal::HostOnly , Halide::Runtime::Internal::DeviceOnly , Halide::Runtime::Internal::DeviceToHost ,
  Halide::Runtime::Internal::HostToDevice , Halide::Runtime::Internal::DefaultVisibility
}
 
enum class  Halide::Runtime::Internal::MemoryUsage {
  Halide::Runtime::Internal::InvalidUsage , Halide::Runtime::Internal::StaticStorage , Halide::Runtime::Internal::DynamicStorage , Halide::Runtime::Internal::UniformStorage ,
  Halide::Runtime::Internal::TransferSrc , Halide::Runtime::Internal::TransferDst , Halide::Runtime::Internal::TransferSrcDst , Halide::Runtime::Internal::DefaultUsage
}
 
enum class  Halide::Runtime::Internal::MemoryCaching {
  Halide::Runtime::Internal::InvalidCaching , Halide::Runtime::Internal::Cached , Halide::Runtime::Internal::Uncached , Halide::Runtime::Internal::CachedCoherent ,
  Halide::Runtime::Internal::UncachedCoherent , Halide::Runtime::Internal::DefaultCaching
}
 

Functions

ALWAYS_INLINE bool Halide::Runtime::Internal::is_power_of_two_alignment (size_t x)
 
ALWAYS_INLINE size_t Halide::Runtime::Internal::aligned_offset (size_t offset, size_t alignment)
 
ALWAYS_INLINE size_t Halide::Runtime::Internal::conform_alignment (size_t requested, size_t required)
 
ALWAYS_INLINE size_t Halide::Runtime::Internal::aligned_size (size_t offset, size_t size, size_t alignment)
 
ALWAYS_INLINE size_t Halide::Runtime::Internal::conform_size (size_t offset, size_t size, size_t alignment, size_t nearest_multiple)
 
ALWAYS_INLINE size_t Halide::Runtime::Internal::clamped_size (size_t value, size_t min_value, size_t max_value)
 
ALWAYS_INLINE const void * Halide::Runtime::Internal::offset_address (const void *address, size_t byte_offset)
 
ALWAYS_INLINE void * Halide::Runtime::Internal::offset_address (void *address, size_t byte_offset)
 
ALWAYS_INLINE void * Halide::Runtime::Internal::native_system_malloc (void *user_context, size_t bytes)
 
ALWAYS_INLINE void Halide::Runtime::Internal::native_system_free (void *user_context, void *ptr)
 
WEAK const char * halide_memory_visibility_name (MemoryVisibility value)
 
WEAK const char * halide_memory_usage_name (MemoryUsage value)
 
WEAK const char * halide_memory_caching_name (MemoryCaching value)
 

Function Documentation

◆ halide_memory_visibility_name()

◆ halide_memory_usage_name()

◆ halide_memory_caching_name()