1
0
mirror of https://github.com/imapsync/imapsync.git synced 2024-11-17 08:12:48 +01:00
imapsync/W/learn/crunch_memory
Nick Bebout 9a927be251 1.882
2018-05-07 09:04:23 -05:00

35 lines
693 B
Perl
Executable File

#!/usr/bin/perl
use strict ;
use warnings ;
use English qw( -no_match_vars ) ;
use Sys::MemInfo ;
use Readonly ;
Readonly my $KIBI => 1024 ;
my $total_ram_memory = total_ram_memory( ) ;
print "Total RAM memory $total_ram_memory\n" ;
current_memory_used( ) ;
sub current_memory_used {
my @ps = qx{ ps -o vsz -p $PROCESS_ID } ;
print( @ps ) ;
shift @ps; # First line is column name "VSZ"
chomp @ps;
# convert to octets
my $val = $KIBI * $ps[ 0 ] ;
print "$val\n" ;
return $val ;
}
sub total_ram_memory {
return(
sprintf( "%.1f GiB", Sys::MemInfo::get("totalmem") / ( 1024 ** 3 ) )
) ;
}