/
usr
/
local
/
lib64
/
python3.6
/
site-packages
/
torch
/
include
/
c10
/
core
/
/usr/local/lib64/python3.6/site-packages/torch/include/c10/core
mkdir
upload
Name
Size
Mode
Actions
impl/
-
0755
rm
Allocator.h
8725
0644
edit
dl
rm
AutogradState.h
994
0644
edit
dl
rm
Backend.h
8487
0644
edit
dl
rm
CompileTimeFunctionPointer.h
1677
0644
edit
dl
rm
CopyBytes.h
1229
0644
edit
dl
rm
CPUAllocator.h
2267
0644
edit
dl
rm
DefaultDtype.h
394
0644
edit
dl
rm
DefaultTensorOptions.h
1032
0644
edit
dl
rm
Device.h
5396
0644
edit
dl
rm
DeviceGuard.h
7555
0644
edit
dl
rm
DeviceType.h
2994
0644
edit
dl
rm
DispatchKey.h
18069
0644
edit
dl
rm
DispatchKeySet.h
12951
0644
edit
dl
rm
Event.h
4169
0644
edit
dl
rm
GeneratorImpl.h
3713
0644
edit
dl
rm
GradMode.h
1261
0644
edit
dl
rm
InferenceMode.h
3471
0644
edit
dl
rm
Layout.h
1225
0644
edit
dl
rm
MemoryFormat.h
8571
0644
edit
dl
rm
OptionalRef.h
521
0644
edit
dl
rm
QEngine.h
861
0644
edit
dl
rm
QScheme.h
1562
0644
edit
dl
rm
Scalar.h
6019
0644
edit
dl
rm
ScalarType.h
17073
0644
edit
dl
rm
ScalarTypeToTypeMeta.h
1365
0644
edit
dl
rm
Storage.h
4369
0644
edit
dl
rm
StorageImpl.h
5610
0644
edit
dl
rm
Stream.h
7373
0644
edit
dl
rm
StreamGuard.h
6315
0644
edit
dl
rm
TensorImpl.h
96152
0644
edit
dl
rm
TensorOptions.h
27593
0644
edit
dl
rm
thread_pool.h
2992
0644
edit
dl
rm
UndefinedTensorImpl.h
911
0644
edit
dl
rm
WrapDimMinimal.h
805
0644
edit
dl
rm
Edit:
/usr/local/lib64/python3.6/site-packages/torch/include/c10/core/CPUAllocator.h
(2267B)
#pragma once #include <cstring> #include <unordered_map> #include <c10/core/Allocator.h> #include <c10/util/Logging.h> #include <c10/util/numa.h> // TODO: rename to c10 C10_DECLARE_bool(caffe2_report_cpu_memory_usage); C10_DECLARE_bool(caffe2_cpu_allocator_do_zero_fill); C10_DECLARE_bool(caffe2_cpu_allocator_do_junk_fill); namespace c10 { #ifdef C10_MOBILE // Use 16-byte alignment on mobile // - ARM NEON AArch32 and AArch64 // - x86[-64] < AVX constexpr size_t gAlignment = 16; #else // Use 64-byte alignment should be enough for computation up to AVX512. constexpr size_t gAlignment = 64; #endif using MemoryDeleter = void (*)(void*); // A helper function that is basically doing nothing. C10_API void NoDelete(void*); // Fill the data memory region of num bytes with a particular garbage pattern. // The garbage value is chosen to be NaN if interpreted as floating point value, // or a very large integer. C10_API void memset_junk(void* data, size_t num); C10_API void* alloc_cpu(size_t nbytes); C10_API void free_cpu(void* data); // A simple struct that is used to report C10's memory allocation and // deallocation status to the profiler class C10_API ProfiledCPUMemoryReporter { public: ProfiledCPUMemoryReporter() {} void New(void* ptr, size_t nbytes); void Delete(void* ptr); private: std::mutex mutex_; std::unordered_map<void*, size_t> size_table_; size_t allocated_ = 0; size_t log_cnt_ = 0; }; C10_API ProfiledCPUMemoryReporter& profiledCPUMemoryReporter(); // Get the CPU Allocator. C10_API at::Allocator* GetCPUAllocator(); // Sets the CPU allocator to the given allocator: the caller gives away the // ownership of the pointer. C10_API void SetCPUAllocator(at::Allocator* alloc, uint8_t priority = 0); // Get the Default CPU Allocator C10_API at::Allocator* GetDefaultCPUAllocator(); // Get the Default Mobile CPU Allocator C10_API at::Allocator* GetDefaultMobileCPUAllocator(); // The CPUCachingAllocator is experimental and might disappear in the future. // The only place that uses it is in StaticRuntime. // Set the CPU Caching Allocator C10_API void SetCPUCachingAllocator(Allocator* alloc, uint8_t priority = 0); // Get the CPU Caching Allocator C10_API Allocator* GetCPUCachingAllocator(); } // namespace c10
Save
cmd:
run