Go to the source code of this file.
|
LLVM_ABI cl::opt< bool > | MemProfKeepAllNotColdContexts ("memprof-keep-all-not-cold-contexts", cl::init(false), cl::Hidden, cl::desc("Keep all non-cold contexts (increases cloning overheads)")) |
static MDNode * | createMIBNode (LLVMContext &Ctx, ArrayRef< uint64_t > MIBCallStack, AllocationType AllocType, ArrayRef< ContextTotalSize > ContextSizeInfo, const uint64_t MaxColdSize, bool BuiltFromExistingMetadata, uint64_t &TotalBytes, uint64_t &ColdBytes) |
static void | saveFilteredNewMIBNodes (std::vector< Metadata * > &NewMIBNodes, std::vector< Metadata * > &SavedMIBNodes, unsigned CallerContextLength, uint64_t TotalBytes, uint64_t ColdBytes, bool BuiltFromExistingMetadata) |
|
cl::opt< bool > | MemProfReportHintedSizes ("memprof-report-hinted-sizes", cl::init(false), cl::Hidden, cl::desc("Report total allocation sizes of hinted allocations")) |
cl::opt< unsigned > | MinClonedColdBytePercent ("memprof-cloning-cold-threshold", cl::init(100), cl::Hidden, cl::desc("Min percent of cold bytes to hint alloc cold during cloning")) |
cl::opt< unsigned > | MinCallsiteColdBytePercent ("memprof-callsite-cold-threshold", cl::init(100), cl::Hidden, cl::desc("Min percent of cold bytes at a callsite to discard non-cold " "contexts")) |
cl::opt< unsigned > | MinPercentMaxColdSize ("memprof-min-percent-max-cold-size", cl::init(100), cl::Hidden, cl::desc("Min percent of max cold bytes for critical cold context")) |
◆ DEBUG_TYPE
#define DEBUG_TYPE "memory-profile-info" |
◆ createMIBNode()
Definition at line 207 of file MemoryProfileInfo.cpp.
References assert(), llvm::memprof::buildCallstackMetadata(), llvm::Cold, llvm::ArrayRef< T >::empty(), llvm::MDNode::get(), llvm::MDString::get(), llvm::ValueAsMetadata::get(), llvm::memprof::getAllocTypeAttributeString(), llvm::Type::getInt64Ty(), llvm::memprof::metadataIncludesAllContextSizeInfo(), MinCallsiteColdBytePercent, MinPercentMaxColdSize, llvm::MDTuple::push_back(), and llvm::SmallVectorTemplateBase< T, bool >::push_back().
◆ MemProfKeepAllNotColdContexts()
LLVM_ABI cl::opt< bool > MemProfKeepAllNotColdContexts |
( |
"memprof-keep-all-not-cold-contexts" | , |
|
|
cl::init(false) | , |
|
|
cl::Hidden | , |
|
|
cl::desc("Keep all non-cold contexts (increases cloning overheads)") | ) |
◆ saveFilteredNewMIBNodes()
Definition at line 274 of file MemoryProfileInfo.cpp.
References llvm::append_range(), assert(), llvm::cast(), llvm::Cold, llvm::dyn_cast(), llvm::mdconst::dyn_extract(), llvm::errs(), llvm::format(), llvm::memprof::getMIBAllocType(), llvm::memprof::getMIBStackNode(), llvm::MDNode::getNumOperands(), llvm::MDNode::getOperand(), I, llvm::make_filter_range(), MemProfKeepAllNotColdContexts(), MemProfReportHintedSizes, MinCallsiteColdBytePercent, and llvm::raw_string_ostream::str().
◆ MemProfReportHintedSizes
cl::opt< bool > MemProfReportHintedSizes("memprof-report-hinted-sizes", cl::init(false), cl::Hidden, cl::desc("Report total allocation sizes of hinted allocations")) |
( |
"memprof-report-hinted-sizes" | , |
|
|
cl::init(false) | , |
|
|
cl::Hidden | , |
|
|
cl::desc("Report total allocation sizes of hinted allocations") | ) |
◆ MinCallsiteColdBytePercent
cl::opt< unsigned > MinCallsiteColdBytePercent("memprof-callsite-cold-threshold", cl::init(100), cl::Hidden, cl::desc("Min percent of cold bytes at a callsite to discard non-cold " "contexts")) |
( |
"memprof-callsite-cold-threshold" | , |
|
|
cl::init(100) | , |
|
|
cl::Hidden | , |
|
|
cl::desc("Min percent of cold bytes at a callsite to discard non-cold " "contexts") | ) |
◆ MinClonedColdBytePercent
cl::opt< unsigned > MinClonedColdBytePercent("memprof-cloning-cold-threshold", cl::init(100), cl::Hidden, cl::desc("Min percent of cold bytes to hint alloc cold during cloning")) |
( |
"memprof-cloning-cold-threshold" | , |
|
|
cl::init(100) | , |
|
|
cl::Hidden | , |
|
|
cl::desc("Min percent of cold bytes to hint alloc cold during cloning") | ) |
◆ MinPercentMaxColdSize
cl::opt< unsigned > MinPercentMaxColdSize("memprof-min-percent-max-cold-size", cl::init(100), cl::Hidden, cl::desc("Min percent of max cold bytes for critical cold context")) |
( |
"memprof-min-percent-max-cold-size" | , |
|
|
cl::init(100) | , |
|
|
cl::Hidden | , |
|
|
cl::desc("Min percent of max cold bytes for critical cold context") | ) |