Merge pull request #22279 from mpirvu/preferSwapForMemoryDisclaim · eclipse-openj9/openj9@73a0a55

5 files changed

lines changed

Original file line numberDiff line numberDiff line change

@@ -3033,7 +3033,7 @@ J9::Options::disableMemoryDisclaimIfNeeded(J9JITConfig *jitConfig)

30333033

// In these cases, attempt to disclaim on swap if possible.

30343034

TR::CompilationInfo *compInfo = TR::CompilationInfo::get(jitConfig);

30353035

if (TR::Options::getCmdLineOptions()->getOption(TR_DontDisclaimMemoryOnSwap) ||

3036-

!TR::Options::getCmdLineOptions()->getOption(TR_DisclaimMemoryOnSwap) ||

3036+

!TR::Options::getCmdLineOptions()->getOption(TR_PreferSwapForMemoryDisclaim) ||

30373037

compInfo->isSwapMemoryDisabled())

30383038

{

30393039

// Disclaim on backing file is preferred (or the only possibility)

@@ -3053,12 +3053,12 @@ J9::Options::disableMemoryDisclaimIfNeeded(J9JITConfig *jitConfig)

30533053

{

30543054

TR_VerboseLog::writeLineLocked(TR_Vlog_PERF, "WARNING: Disclaim feature disabled because /tmp is not suitable and swap is not available/allowed");

30553055

}

3056-

TR::Options::getCmdLineOptions()->setOption(TR_DisclaimMemoryOnSwap, false);

3056+

TR::Options::getCmdLineOptions()->setOption(TR_PreferSwapForMemoryDisclaim, false);

30573057

}

30583058

else

30593059

{

30603060

// Force the usage of swap space for disclaiming.

3061-

TR::Options::getCmdLineOptions()->setOption(TR_DisclaimMemoryOnSwap);

3061+

TR::Options::getCmdLineOptions()->setOption(TR_PreferSwapForMemoryDisclaim);

30623062

if (TR::Options::getVerboseOption(TR_VerbosePerformance))

30633063

{

30643064

TR_VerboseLog::writeLineLocked(TR_Vlog_PERF, "Memory disclaim will be done on swap because /tmp is not suitable");

Original file line numberDiff line numberDiff line change

@@ -705,7 +705,7 @@ PersistentAllocator::disclaimAllSegments()

705705

#ifdef LINUX

706706

bool verbose = TR::Options::getCmdLineOptions()->getVerboseOption(TR_VerbosePerformance);

707707

TR::CompilationInfo *compInfo = TR::CompilationInfo::get(_javaVM.jitConfig);

708-

bool canDisclaimOnSwap = TR::Options::getCmdLineOptions()->getOption(TR_DisclaimMemoryOnSwap) && !compInfo->isSwapMemoryDisabled();

708+

bool canDisclaimOnSwap = TR::Options::getCmdLineOptions()->getOption(TR_PreferSwapForMemoryDisclaim) && !compInfo->isSwapMemoryDisabled();

709709

j9thread_monitor_enter(_segmentMonitor);

710710

for (auto segmentIterator = _segments.begin(); segmentIterator != _segments.end(); ++segmentIterator)

711711

{

Original file line numberDiff line numberDiff line change

@@ -271,7 +271,7 @@ TR_DataCache* TR_DataCacheManager::allocateNewDataCache(uint32_t minimumSize)

271271

// If swap is enabled, we can allocate memory with mmap(MAP_ANOYNMOUS|MAP_PRIVATE) and disclaim to swap

272272

// If swap is not enabled we can disclaim to a backing file

273273

TR::CompilationInfo * compInfo = TR::CompilationInfo::get(_jitConfig);

274-

if (!TR::Options::getCmdLineOptions()->getOption(TR_DisclaimMemoryOnSwap) || compInfo->isSwapMemoryDisabled())

274+

if (!TR::Options::getCmdLineOptions()->getOption(TR_PreferSwapForMemoryDisclaim) || compInfo->isSwapMemoryDisabled())

275275

{

276276

memoryType |= MEMORY_TYPE_DISCLAIMABLE_TO_FILE;

277277

}

@@ -820,7 +820,7 @@ int TR_DataCacheManager::disclaimAllDataCaches()

820820

int numDisclaimed = 0;

821821

#ifdef LINUX

822822

TR::CompilationInfo *compInfo = TR::CompilationInfo::get(_jitConfig);

823-

bool canDisclaimOnSwap = TR::Options::getCmdLineOptions()->getOption(TR_DisclaimMemoryOnSwap) && !compInfo->isSwapMemoryDisabled();

823+

bool canDisclaimOnSwap = TR::Options::getCmdLineOptions()->getOption(TR_PreferSwapForMemoryDisclaim) && !compInfo->isSwapMemoryDisabled();

824824

OMR::CriticalSection criticalSection(_mutex);

825825

// Traverses all dataCache segments

826826

for (J9MemorySegment *dataCacheSeg = _jitConfig->dataCacheList->nextSegment; dataCacheSeg; dataCacheSeg = dataCacheSeg->nextSegment)

Original file line numberDiff line numberDiff line change

@@ -577,7 +577,7 @@ TR_IProfiler::createPersistentAllocator(J9JITConfig *jitConfig)

577577

PORT_ACCESS_FROM_JITCONFIG(jitConfig);

578578

memoryType |= MEMORY_TYPE_VIRTUAL; // Force the usage of mmap for allocation

579579

TR::CompilationInfo * compInfo = TR::CompilationInfo::get(jitConfig);

580-

if (!TR::Options::getCmdLineOptions()->getOption(TR_DisclaimMemoryOnSwap) || compInfo->isSwapMemoryDisabled())

580+

if (!TR::Options::getCmdLineOptions()->getOption(TR_PreferSwapForMemoryDisclaim) || compInfo->isSwapMemoryDisabled())

581581

{

582582

memoryType |= MEMORY_TYPE_DISCLAIMABLE_TO_FILE;

583583

}

Original file line numberDiff line numberDiff line change

@@ -429,7 +429,7 @@ J9::CodeCacheManager::allocateCodeCacheSegment(size_t segmentSize,

429429

// If swap is enabled, we can allocate memory with mmap(MAP_ANOYNMOUS|MAP_PRIVATE) and disclaim to swap

430430

// If swap is not enabled we can disclaim to a backing file

431431

TR::CompilationInfo * compInfo = TR::CompilationInfo::get(_jitConfig);

432-

if (!TR::Options::getCmdLineOptions()->getOption(TR_DisclaimMemoryOnSwap) || compInfo->isSwapMemoryDisabled())

432+

if (!TR::Options::getCmdLineOptions()->getOption(TR_PreferSwapForMemoryDisclaim) || compInfo->isSwapMemoryDisabled())

433433

{

434434

segmentType |= MEMORY_TYPE_DISCLAIMABLE_TO_FILE;

435435

}

@@ -821,7 +821,7 @@ J9::CodeCacheManager::disclaimAllCodeCaches()

821821
822822

#ifdef LINUX

823823

TR::CompilationInfo *compInfo = TR::CompilationInfo::get(_jitConfig);

824-

bool canDisclaimOnSwap = TR::Options::getCmdLineOptions()->getOption(TR_DisclaimMemoryOnSwap) && !compInfo->isSwapMemoryDisabled();

824+

bool canDisclaimOnSwap = TR::Options::getCmdLineOptions()->getOption(TR_PreferSwapForMemoryDisclaim) && !compInfo->isSwapMemoryDisabled();

825825
826826

CacheListCriticalSection scanCacheList(self());

827827

for (TR::CodeCache *codeCache = self()->getFirstCodeCache(); codeCache; codeCache = codeCache->next())