Ticket #718 (closed: duplicate)

Opened 11 years ago

Last modified 5 years ago

Further memory management improvements

Reported by: Russell Taylor Owned by:
Priority: minor Milestone: Iteration 22
Component: Keywords:
Cc: Blocked By:
Blocking: Tester:

Description

If we run into issues down the line with memory fragmentation, there are a number of strategies we can employ to try and improve this.

  • We can use a Low Fragmentation Heap in Windows.
  • In Linux, we can change the M_MMAP_THRESHOLD parameter of malloc using mallopt to obtain large chunks of memory (i.e. MantidVecs) using mmap, so that they'll be located separately in memory and released to the kernel when a workspace is deleted.
  • We can write a custom Allocator to use with the workspace data storage that uses mmap/munmap on Linux and VirtualAlloc/VirtualFree on Windows to keep the workspace data in a separate area of memory that shouldn't get polluted by other 'little' objects.

Change History

comment:1 Changed 11 years ago by Nick Draper

  • Milestone changed from Iteration 18 to Iteration 19

Moved as part of iteration 18 end

comment:2 Changed 11 years ago by Nick Draper

  • Milestone changed from Iteration 19 to Iteration 20

Moved as part of the end of Iteration 19

comment:3 Changed 11 years ago by Nick Draper

  • Status changed from new to closed
  • Resolution set to duplicate

This work has already been done on another ticket

comment:4 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 1566

Note: See TracTickets for help on using tickets.