Skip to content
Snippets Groups Projects
  • Glauber Costa's avatar
    a71f8c53
    tests: add java reclaim test · a71f8c53
    Glauber Costa authored
    
    This is a test in which two threads compete for resources. One of them will
    (hopefully) trigger memory allocations that are served by the heap while the other
    will stress the filesystem through reads and/or writes (no mappings).
    
    This is designed to test how well the balloon code works together with the ARC
    reclaimer.
    
    There are three main goals I expect OSv to achieve when running this test:
    
    1) When there is no filesystem activity, the balloon should never trigger, and
    the ARC cache should be reduced to its minimum
    2) When there is no java activity, we should balloon as much as we can, leaving
    the memory available to the filesystem (this one is trickier because the IO code
    is itself a java application - on purpose - so we eventually have to stop)
    3) When both are happening in tandem, the system should stabilize in reasonable
    values and not spend useless cycles switching memory back and forth.
    
    Signed-off-by: default avatarGlauber Costa <glommer@cloudius-systems.com>
    a71f8c53
    History
    tests: add java reclaim test
    Glauber Costa authored
    
    This is a test in which two threads compete for resources. One of them will
    (hopefully) trigger memory allocations that are served by the heap while the other
    will stress the filesystem through reads and/or writes (no mappings).
    
    This is designed to test how well the balloon code works together with the ARC
    reclaimer.
    
    There are three main goals I expect OSv to achieve when running this test:
    
    1) When there is no filesystem activity, the balloon should never trigger, and
    the ARC cache should be reduced to its minimum
    2) When there is no java activity, we should balloon as much as we can, leaving
    the memory available to the filesystem (this one is trickier because the IO code
    is itself a java application - on purpose - so we eventually have to stop)
    3) When both are happening in tandem, the system should stabilize in reasonable
    values and not spend useless cycles switching memory back and forth.
    
    Signed-off-by: default avatarGlauber Costa <glommer@cloudius-systems.com>