Skip to content

Instantly share code, notes, and snippets.

@tanelsuurhans
Created October 22, 2012 07:19
Show Gist options
  • Save tanelsuurhans/3930087 to your computer and use it in GitHub Desktop.
Save tanelsuurhans/3930087 to your computer and use it in GitHub Desktop.
SHM calculation script
#!/usr/bin/env ruby
def halt
puts "----------------------------------"
puts " Usage "
puts "----------------------------------"
puts "./shm.rb <size> <units>"
puts "\tsize = integer > 0"
puts "\tunits = MB or GB"
exit
end
if ARGV.size != 2
halt
end
size = ARGV[0].to_i
units = ARGV[1]
if size <= 0
halt
end
if units != "MB" && units != "GB"
halt
end
case units
when "MB"
size = size * 1024 * 1024;
when "GB"
size = size * 1024 * 1024 * 1024;
end
puts "----------------------------------"
puts " Linux "
puts "----------------------------------"
puts "kernel.shmmax = #{size}"
puts "kernel.shmall = #{size / 4096}"
puts
puts "----------------------------------"
puts " OS X "
puts "----------------------------------"
puts "kern.sysv.shmmax = #{size}"
puts "kern.sysv.shmmin = 1"
puts "kern.sysv.shmmni = 32"
puts "kern.sysv.shmseg = 8"
puts "kern.sysv.shmall = #{size / 4096}"
puts
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment