diff --git a/generators/input/bordeaux.rb b/generators/input/bordeaux.rb index 7f18447b58e5dfb1590fd35dec671b723dfb5f8f..0f03f86eaaaf97c8c798de5fe98b50d5117bad35 100755 --- a/generators/input/bordeaux.rb +++ b/generators/input/bordeaux.rb @@ -3,8 +3,8 @@ site :bordeaux do |site_uid| location "Bordeaux, France" web "http://www.grid5000.fr/mediawiki/index.php/Bordeaux:Home" description "Grid5000 Bordeaux site" - latitude "44° 50’ 18’’ Nord" - longitude "Nord 0° 34’ 41’’ Ouest" + latitude 44.833333 + longitude -0.566667 email_contact "bordeaux-staff@lists.grid5000.fr" sys_admin_contact "bordeaux-staff@lists.grid5000.fr" security_contact "bordeaux-staff@lists.grid5000.fr" @@ -30,16 +30,16 @@ version 1.48" :vendor => "AMD", :model => "AMD Opteron", :version => "248", - :clock_speed => 2.2.giga, + :clock_speed => 2.2.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, - :cache_l1i => "64K", - :cache_l1d => "64K", - :cache_l2 => 1.MB + :cache_l1i => 64.KiB, + :cache_l1d => 64.KiB, + :cache_l2 => 1.MiB }) main_memory({ - :ram_size => 2.GB(true), # bytes + :ram_size => 2.GiB, # bytes :virtual_size => nil }) operating_system({ @@ -48,14 +48,14 @@ version 1.48" :version => nil }) storage_devices [ - {:interface => 'IDE', :size => 80.GB(false), :driver => "amd74xx"} + {:interface => 'IDE', :size => 80.GB, :driver => "amd74xx"} ] network_adapters [ - {:interface => 'Myri-2000', :rate => 2.giga, + {:interface => 'Myri-2000', :rate => 2.G, :switch => "sbdm", :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :vendor => 'Myrinet', :version => "M3F-PCIXD-2", :enabled => true}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, :driver => "tg3"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false, :driver => "tg3"} + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :driver => "tg3"}, + {:interface => 'Ethernet', :rate => 1.G, :enabled => false, :driver => "tg3"} ] end end @@ -77,16 +77,16 @@ version 1.48" :vendor => "Intel", :model => "Intel Xeon", :version => "EM64T", - :clock_speed => 3.giga, + :clock_speed => 3.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, :cache_l1i => nil, - :cache_l1d => "16K", - :cache_l2 => 1.MB + :cache_l1d => 16.KiB, + :cache_l2 => 1.MiB }) main_memory({ - :ram_size => 2.GB(true), # bytes + :ram_size => 2.GiB, # bytes :virtual_size => nil }) operating_system({ @@ -95,14 +95,14 @@ version 1.48" :version => nil }) storage_devices [ - {:interface => 'SCSI', :size => 70.GB(false), :driver => "mptspi"} + {:interface => 'SCSI', :size => 70.GB, :driver => "mptspi"} ] network_adapters [ - {:interface => 'InfiniBand', :rate => 10.giga, + {:interface => 'InfiniBand', :rate => 10.G, :switch => "sbdp", :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :vendor => 'InfiniHost', :version => "MT25208", :enabled => true}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, :driver => "e1000"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false, :driver => "e1000"} + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :driver => "e1000"}, + {:interface => 'Ethernet', :rate => 1.G, :enabled => false, :driver => "e1000"} ] end end @@ -124,16 +124,16 @@ version 1.48" :vendor => "AMD", :model => "Dual-Core AMD Opteron Processor", :version => "2218", - :clock_speed => 2.6.giga, + :clock_speed => 2.6.G, :instruction_set => "x86-64", :other_description => "", :cache_l1 => nil, - :cache_l1i => "64K", - :cache_l1d => "64K", - :cache_l2 => 1.MB + :cache_l1i => 64.KiB, + :cache_l1d => 64.KiB, + :cache_l2 => 1.MiB }) main_memory({ - :ram_size => 4.GB(true), # bytes + :ram_size => 4.GiB, :virtual_size => nil }) operating_system({ @@ -142,13 +142,13 @@ version 1.48" :version => nil }) storage_devices [ - {:interface => 'SATA', :size => 80.GB(false), :driver => "sata_svw", :vendor => "Hitachi", :version => "HDS72168"} + {:interface => 'SATA', :size => 80.GB, :driver => "sata_svw", :vendor => "Hitachi", :version => "HDS72168"} ] network_adapters [ - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :switch => nil, :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :driver => "tg3", :vendor => "Broadcom", :version => "BCM5704"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, :driver => "tg3", :vendor => "Broadcom", :version => "BCM5704"} + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :driver => "tg3", :vendor => "Broadcom", :version => "BCM5704"} ] end end @@ -170,16 +170,16 @@ version 1.48" :vendor => "AMD", :model => "Dual-Core AMD Opteron Processor 8218", :version => "2218", - :clock_speed => 2.6.giga, + :clock_speed => 2.6.G, :instruction_set => "x86-64", :other_description => "", :cache_l1 => nil, - :cache_l1i => "64K", - :cache_l1d => "64K", - :cache_l2 => 2.MB + :cache_l1i => 64.KiB, + :cache_l1d => 64.KiB, + :cache_l2 => 2.MiB }) main_memory({ - :ram_size => 32.GB(true), # bytes + :ram_size => 32.GiB, :virtual_size => nil }) operating_system({ @@ -188,17 +188,17 @@ version 1.48" :version => "5.0" }) storage_devices [ - {:interface => 'SAS', :size => 600.GB(false), :driver => nil} + {:interface => 'SAS', :size => 600.GB, :driver => nil} ] network_adapters [ - {:interface => 'Myri-10G', :rate => 10.giga, + {:interface => 'Myri-10G', :rate => 10.G, :switch => nil, :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :vendor => 'Myrinet', :version => "10G-PCIE-8A-C", :enabled => true}, - {:interface => 'InfiniBand', :rate => 10.giga, :vendor => 'InfiniHost', :version => "MT25408", :enabled => true}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, :driver => "e1000"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false, :driver => "e1000"} + {:interface => 'InfiniBand', :rate => 10.G, :vendor => 'InfiniHost', :version => "MT25408", :enabled => true}, + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :driver => "e1000"}, + {:interface => 'Ethernet', :rate => 1.G, :enabled => false, :driver => "e1000"} ] end end end # cluster borderline -end \ No newline at end of file +end diff --git a/generators/input/environments.rb b/generators/input/environments.rb index 37f12175b566b2fcacef217683867a5135e6f4cc..675ea1dc07746b5a571a3d781f18c8ce4e84498e 100755 --- a/generators/input/environments.rb +++ b/generators/input/environments.rb @@ -10,7 +10,7 @@ environment 'sid-x64-base-1.0' do applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ") x11_forwarding true max_open_files 8192 - tcp_bandwidth 1.giga + tcp_bandwidth 1.G end environment 'sid-x64-base-1.1' do @@ -25,7 +25,7 @@ environment 'sid-x64-base-1.1' do applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ") x11_forwarding true max_open_files 8192 - tcp_bandwidth 1.giga + tcp_bandwidth 1.G end environment 'sid-x64-nfs-1.0' do @@ -40,7 +40,7 @@ environment 'sid-x64-nfs-1.0' do applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ") x11_forwarding true max_open_files 8192 - tcp_bandwidth 1.giga + tcp_bandwidth 1.G end environment 'sid-x64-nfs-1.1' do @@ -55,7 +55,7 @@ environment 'sid-x64-nfs-1.1' do applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ") x11_forwarding true max_open_files 8192 - tcp_bandwidth 1.giga + tcp_bandwidth 1.G end environment 'sid-x64-big-1.1' do @@ -70,7 +70,7 @@ environment 'sid-x64-big-1.1' do applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ") x11_forwarding true max_open_files 8192 - tcp_bandwidth 1.giga + tcp_bandwidth 1.G end environment 'etch-x64-base-1.0' do @@ -85,7 +85,7 @@ environment 'etch-x64-base-1.0' do applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ") x11_forwarding true max_open_files 8192 - tcp_bandwidth 1.giga + tcp_bandwidth 1.G end environment 'etch-x64-base-1.1' do @@ -100,7 +100,7 @@ environment 'etch-x64-base-1.1' do applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ") x11_forwarding true max_open_files 8192 - tcp_bandwidth 1.giga + tcp_bandwidth 1.G end environment 'etch-x64-nfs-1.0' do @@ -115,7 +115,7 @@ environment 'etch-x64-nfs-1.0' do applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ") x11_forwarding true max_open_files 8192 - tcp_bandwidth 1.giga + tcp_bandwidth 1.G end environment 'etch-x64-nfs-1.1' do @@ -130,7 +130,7 @@ environment 'etch-x64-nfs-1.1' do applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ") x11_forwarding true max_open_files 8192 - tcp_bandwidth 1.giga + tcp_bandwidth 1.G end environment 'etch-x64-big-1.0' do @@ -145,7 +145,7 @@ environment 'etch-x64-big-1.0' do applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ") x11_forwarding true max_open_files 8192 - tcp_bandwidth 1.giga + tcp_bandwidth 1.G end environment 'etch-x64-big-1.1' do @@ -160,7 +160,7 @@ environment 'etch-x64-big-1.1' do applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ") x11_forwarding true max_open_files 8192 - tcp_bandwidth 1.giga + tcp_bandwidth 1.G end environment 'etch-x64-xen-1.0' do @@ -175,7 +175,7 @@ environment 'etch-x64-xen-1.0' do applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ") x11_forwarding true max_open_files 8192 - tcp_bandwidth 1.giga + tcp_bandwidth 1.G end environment 'lenny-x64-base-0.9' do @@ -190,7 +190,7 @@ environment 'lenny-x64-base-0.9' do applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ") x11_forwarding true max_open_files 8192 - tcp_bandwidth 1.giga + tcp_bandwidth 1.G end environment 'lenny-x64-base-1.0' do @@ -205,7 +205,7 @@ environment 'lenny-x64-base-1.0' do applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ") x11_forwarding true max_open_files 8192 - tcp_bandwidth 1.giga + tcp_bandwidth 1.G end environment 'lenny-x64-nfs-0.9' do @@ -220,7 +220,7 @@ environment 'lenny-x64-nfs-0.9' do applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ") x11_forwarding true max_open_files 8192 - tcp_bandwidth 1.giga + tcp_bandwidth 1.G end environment 'lenny-x64-big-0.9' do @@ -235,5 +235,5 @@ environment 'lenny-x64-big-0.9' do applications "Vim, XEmacs, JED, nano, JOE, Perl, Python, Ruby".split(", ") x11_forwarding true max_open_files 8192 - tcp_bandwidth 1.giga + tcp_bandwidth 1.G end \ No newline at end of file diff --git a/generators/input/grenoble.rb b/generators/input/grenoble.rb index eb379055199ff419031c7cd964eceec3572f4c07..083d2804588a21ef9327316aa9ea70ce3ecbb216 100755 --- a/generators/input/grenoble.rb +++ b/generators/input/grenoble.rb @@ -29,7 +29,7 @@ site :grenoble do |site_uid| :vendor => "Intel", :model => "Intel Xeon", :version => "E5420 QC", - :clock_speed => 2.5.giga, + :clock_speed => 2.5.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, @@ -38,7 +38,7 @@ site :grenoble do |site_uid| :cache_l2 => nil }) main_memory({ - :ram_size => 8.GB(true), # bytes + :ram_size => 8.GiB, # bytes :virtual_size => nil }) operating_system({ @@ -47,12 +47,12 @@ site :grenoble do |site_uid| :version => nil }) storage_devices [ - {:interface => 'SATA', :size => 160.GB(false), :driver => nil} + {:interface => 'SATA', :size => 160.GB, :driver => nil} ] network_adapters [ - {:interface => 'InfiniBand 10G', :rate => 10.giga, :enabled => true, + {:interface => 'InfiniBand 10G', :rate => 10.G, :enabled => true, :switch => nil, :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr")}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false} + {:interface => 'Ethernet', :rate => 1.G, :enabled => false} ] end end diff --git a/generators/input/input.description.ignore b/generators/input/input.description.ignore index 5312f1e53644cae75506ddc4b65eafce06bdd505..962c5041862890ab82ba875047f60705d9588548 100644 --- a/generators/input/input.description.ignore +++ b/generators/input/input.description.ignore @@ -29,7 +29,7 @@ site :rennes do |site_uid| # General description of the site. # describes the architecture of the node architecture({ :smp_size => 2, # number of physical CPUs - :smt_size => 4, # number of logical CPUs (cores) + :smt_size => 4, # total number of logical CPUs (cores) :platform_type => "x86_64" }) # describes the processors @@ -37,7 +37,7 @@ site :rennes do |site_uid| # General description of the site. :vendor => "Intel", :model => "Intel Xeon", :version => "5148 LV", - :clock_speed => 2.33.giga, # giga = 10^9 + :clock_speed => 2.33.G, # G = 10^9, M = 10^6, etc. :instruction_set => "", # x86-64, IA-64, ... :other_description => "", :cache_l1 => nil, # first-level unified cache size of the processor @@ -46,7 +46,7 @@ site :rennes do |site_uid| # General description of the site. :cache_l2 => nil # second-level unified cache size of the processor }) main_memory({ - :ram_size => 4.GB(true), # the amount of RAM (indicating true means "true bytes" (multiple of 2^10)) + :ram_size => 4.GiB, # the amount of RAM. MAKE SURE YOU USE GiB or MiB or KiB, and not GB, MB, KB... :virtual_size => nil # the amount of virtual memory (RAM+Swap) }) # Information about the default operating system of the node @@ -62,21 +62,22 @@ site :rennes do |site_uid| # General description of the site. :version => nil # version of the operating system }) # Describes the list of storage devices available on the node + # Notice the use of ***GB*** (and not GiB) # Required properties include: :interface, :size # You may add the :driver property, or a :raid property (e.g. :raid => "0") if needed. storage_devices [ - {:interface => 'SATA', :size => 160.GB(false), :driver => "mptsas"} + {:interface => 'SATA', :size => 160.GB, :driver => "mptsas"} ] # Describes the list of network adapters available on the node # Required properties include: :interface, :rate, :switch, :network_address, :ip, :enabled # You may add properties such as: :driver, :vendor, :version # You may include adapters reserved for management (in this case, set enabled to false) network_adapters [ - {:interface => 'Myri-10G', :rate => 10.giga, + {:interface => 'Myri-10G', :rate => 10.G, :switch => "c6509-grid", :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :vendor => 'Myrinet', :version => "10G-PCIE-8A-C", :enabled => true}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false} + {:interface => 'Ethernet', :rate => 1.G, :enabled => true}, + {:interface => 'Ethernet', :rate => 1.G, :enabled => false} ] end end diff --git a/generators/input/lille.rb b/generators/input/lille.rb index df3befd46a92425ccda2e8b81fdfb0d002c9dbe2..22a43895bc60b66afac4d8ad99666dfdc5ca8f51 100755 --- a/generators/input/lille.rb +++ b/generators/input/lille.rb @@ -29,16 +29,16 @@ site :lille do |site_uid| :vendor => "AMD", :model => "AMD Opteron", :version => "248", - :clock_speed => 2.2.giga, + :clock_speed => 2.2.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, :cache_l1i => nil, :cache_l1d => nil, - :cache_l2 => 1.MB + :cache_l2 => 1.MiB }) main_memory({ - :ram_size => 4.GB(true), # bytes + :ram_size => 4.GiB, :virtual_size => nil }) operating_system({ @@ -47,10 +47,10 @@ site :lille do |site_uid| :version => nil }) storage_devices [ - {:interface => 'SATA', :size => 80.GB(false), :driver => "sata_sil"} + {:interface => 'SATA', :size => 80.GB, :driver => "sata_sil"} ] network_adapters [ - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :switch => "switch1", :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :driver => "tg3"} ] @@ -74,16 +74,16 @@ site :lille do |site_uid| :vendor => "AMD", :model => "AMD Opteron", :version => "252", - :clock_speed => 2.6.giga, + :clock_speed => 2.6.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, :cache_l1i => nil, :cache_l1d => nil, - :cache_l2 => 1.MB + :cache_l2 => 1.MiB }) main_memory({ - :ram_size => 4.GB(true), # bytes + :ram_size => 4.GiB, # bytes :virtual_size => nil }) operating_system({ @@ -92,10 +92,10 @@ site :lille do |site_uid| :version => nil }) storage_devices [ - {:interface => 'SATA', :size => 80.GB(false), :driver => "sata_svw"} + {:interface => 'SATA', :size => 80.GB, :driver => "sata_svw"} ] network_adapters [ - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :switch => "switch1", :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :driver => "tg3"} ] @@ -118,16 +118,16 @@ site :lille do |site_uid| :vendor => "AMD", :model => "AMD Opteron", :version => "285", - :clock_speed => 2.6.giga, + :clock_speed => 2.6.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, :cache_l1i => nil, :cache_l1d => nil, - :cache_l2 => 1.MB + :cache_l2 => 1.MiB }) main_memory({ - :ram_size => 4.GB(true), # bytes + :ram_size => 4.GiB, # bytes :virtual_size => nil }) operating_system({ @@ -136,10 +136,10 @@ site :lille do |site_uid| :version => nil }) storage_devices [ - {:interface => 'SATA', :size => 80.GB(false), :driver => "sata_svw"} + {:interface => 'SATA', :size => 80.GB, :driver => "sata_svw"} ] network_adapters [ - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :switch => "switch1", :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :driver => "tg3"} ] @@ -162,16 +162,16 @@ site :lille do |site_uid| :vendor => "Intel", :model => "Intel Xeon", :version => "E5440 QC", - :clock_speed => 2.83.giga, + :clock_speed => 2.83.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, :cache_l1i => nil, :cache_l1d => nil, - :cache_l2 => 4.MB + :cache_l2 => 4.MiB }) main_memory({ - :ram_size => 8.GB(true), # bytes + :ram_size => 8.GiB, # bytes :virtual_size => nil }) operating_system({ @@ -180,10 +180,10 @@ site :lille do |site_uid| :version => nil }) storage_devices [ - {:interface => 'SATA II', :size => 250.GB(false), :driver => "ahci"} + {:interface => 'SATA II', :size => 250.GB, :driver => "ahci"} ] network_adapters [ - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :switch => nil, :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :driver => "e1000"} ] diff --git a/generators/input/lyon.rb b/generators/input/lyon.rb index fb3c785eebf1664a04047d068a90c943e8828910..96009ded6d035f73c3b4421cee44cc846b90a8e4 100755 --- a/generators/input/lyon.rb +++ b/generators/input/lyon.rb @@ -29,16 +29,16 @@ site :lyon do |site_uid| :vendor => "AMD", :model => "AMD Opteron", :version => "246", - :clock_speed => 2.giga, + :clock_speed => 2.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, :cache_l1i => nil, :cache_l1d => nil, - :cache_l2 => 1.MB + :cache_l2 => 1.MiB }) main_memory({ - :ram_size => 2.GB(true), # bytes + :ram_size => 2.GiB, # bytes :virtual_size => nil }) operating_system({ @@ -47,13 +47,13 @@ site :lyon do |site_uid| :version => nil }) storage_devices [ - {:interface => 'IDE', :size => 80.GB(false), :driver => "amd74xx"} + {:interface => 'IDE', :size => 80.GB, :driver => "amd74xx"} ] network_adapters [ - {:interface => 'Myri-2000', :rate => 2.giga, + {:interface => 'Myri-2000', :rate => 2.G, :switch => "little-ego", :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :vendor => 'Myrinet', :version => "M3F-PCIXF-2", :enabled => true}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, :driver => "tg3"} + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :driver => "tg3"} ] end end @@ -74,16 +74,16 @@ site :lyon do |site_uid| :vendor => "AMD", :model => "AMD Opteron", :version => "250", - :clock_speed => 2.4.giga, + :clock_speed => 2.4.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, :cache_l1i => nil, :cache_l1d => nil, - :cache_l2 => 1.MB + :cache_l2 => 1.MiB }) main_memory({ - :ram_size => 2.GB(true), # bytes + :ram_size => 2.GiB, # bytes :virtual_size => nil }) operating_system({ @@ -92,10 +92,10 @@ site :lyon do |site_uid| :version => nil }) storage_devices [ - {:interface => 'SCSI', :size => 73.GB(false), :driver => "mptspi"} + {:interface => 'SCSI', :size => 73.GB, :driver => "mptspi"} ] network_adapters [ - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :switch => "little-ego", :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :driver => "tg3"} ] diff --git a/generators/input/nancy.rb b/generators/input/nancy.rb index 1d5f30390774e25176d55a533257e96407b6bd4b..4f045090c294bbc1ba3d3ba368c545d9849a4fe0 100755 --- a/generators/input/nancy.rb +++ b/generators/input/nancy.rb @@ -28,16 +28,16 @@ site :nancy do |site_uid| :vendor => "Intel", :model => "Intel Xeon", :version => "5110", - :clock_speed => 1.6.giga, + :clock_speed => 1.6.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, :cache_l1i => nil, :cache_l1d => nil, - :cache_l2 => 4.MB + :cache_l2 => 4.MiB }) main_memory({ - :ram_size => 2.GB(true), # bytes + :ram_size => 2.GiB, # bytes :virtual_size => nil }) operating_system({ @@ -46,13 +46,13 @@ site :nancy do |site_uid| :version => nil }) storage_devices [ - {:interface => 'SATA', :size => 80.GB(false), :driver => "ata_piix"} + {:interface => 'SATA', :size => 80.GB, :driver => "ata_piix"} ] network_adapters [ - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :switch => "sgrelon1", :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :driver => "tg3", :vendor => "Broadcom", :version => "BCM5721"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, :driver => "tg3", :vendor => "Broadcom", :version => "BCM5721"} + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :driver => "tg3", :vendor => "Broadcom", :version => "BCM5721"} ] end end @@ -73,16 +73,16 @@ site :nancy do |site_uid| :vendor => "Intel", :model => "Intel Xeon", :version => "L5420", - :clock_speed => 2.5.giga, + :clock_speed => 2.5.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, :cache_l1i => nil, :cache_l1d => nil, - :cache_l2 => 12.MB + :cache_l2 => 12.MiB }) main_memory({ - :ram_size => 16.GB(true), # bytes + :ram_size => 16.GiB, :virtual_size => nil }) operating_system({ @@ -91,14 +91,14 @@ site :nancy do |site_uid| :version => nil }) storage_devices [ - {:interface => 'SATA II', :size => 320.GB(false), :driver => "ata_piix"} + {:interface => 'SATA II', :size => 320.GB, :driver => "ata_piix"} ] network_adapters [ - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :switch => "sgriffon1", :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :driver => "e1000e", :vendor => "intel", :version => "80003ES2LAN"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false, :driver => "e1000e", :vendor => "intel", :version => "BCM5721"}, - {:interface => 'Infiniband 20G', :rate => 20.giga, :enabled => true, + {:interface => 'Ethernet', :rate => 1.G, :enabled => false, :driver => "e1000e", :vendor => "intel", :version => "BCM5721"}, + {:interface => 'Infiniband 20G', :rate => 20.G, :enabled => true, :switch => "ib_switch", :driver => "mlx4_core", :vendor => "Mellanox", :version => "MT26418" } ] end diff --git a/generators/input/orsay.rb b/generators/input/orsay.rb index dbc0a81949855bedf8ba77c528808d9373a805cb..75517bd6dda2ff0f80f9c27966d5b25489b31e58 100755 --- a/generators/input/orsay.rb +++ b/generators/input/orsay.rb @@ -29,16 +29,16 @@ site :orsay do |site_uid| :vendor => "AMD", :model => "AMD Opteron", :version => "246", - :clock_speed => 2.giga, + :clock_speed => 2.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, :cache_l1i => nil, :cache_l1d => nil, - :cache_l2 => 1.MB + :cache_l2 => 1.MiB }) main_memory({ - :ram_size => 2.GB(true), # bytes + :ram_size => 2.GiB, # bytes :virtual_size => nil }) operating_system({ @@ -47,16 +47,16 @@ site :orsay do |site_uid| :version => nil }) storage_devices [ - {:interface => 'SATA', :size => 80.GB(false), :driver => nil} + {:interface => 'SATA', :size => 80.GB, :driver => nil} ] network_adapters [ - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :switch => nil, :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :driver => nil}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :switch => nil, :network_address => "#{node_uid}-eth1.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}-eth1.#{site_uid}.grid5000.fr"), :driver => nil}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :switch => nil, :network_address => "#{node_uid}-eth2.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}-eth2.#{site_uid}.grid5000.fr"), :driver => nil} ] @@ -82,16 +82,16 @@ site :orsay do |site_uid| :vendor => "AMD", :model => "AMD Opteron", :version => "246", - :clock_speed => 2.giga, + :clock_speed => 2.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, :cache_l1i => nil, :cache_l1d => nil, - :cache_l2 => 1.MB + :cache_l2 => 1.MiB }) main_memory({ - :ram_size => 2.GB(true), # bytes + :ram_size => 2.GiB, # bytes :virtual_size => nil }) operating_system({ @@ -100,14 +100,14 @@ site :orsay do |site_uid| :version => nil }) storage_devices [ - {:interface => 'SATA', :size => 80.GB(false), :driver => nil} + {:interface => 'SATA', :size => 80.GB, :driver => nil} ] network_adapters [ - {:interface => 'Myri-10G', :rate => 10.giga, :enabled => true, + {:interface => 'Myri-10G', :rate => 10.G, :enabled => true, :switch => nil, :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :vendor => "Myrinet", :version => "10G-PCIE-8A-C"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false} + {:interface => 'Ethernet', :rate => 1.G, :enabled => true}, + {:interface => 'Ethernet', :rate => 1.G, :enabled => false} ] end end @@ -117,7 +117,7 @@ site :orsay do |site_uid| node "#{cluster_uid}-#{182+i}" do processor({ :version => "250", - :clock_speed => 2.4.giga + :clock_speed => 2.4.G }) end end diff --git a/generators/input/rennes.rb b/generators/input/rennes.rb index 45a3742bf22f80cd1ba8e30bd8f4de00c6b87a06..5578efac9269f860a996555fc9e10f8ddeb1b3e6 100755 --- a/generators/input/rennes.rb +++ b/generators/input/rennes.rb @@ -30,7 +30,7 @@ site :rennes do |site_uid| :vendor => "Intel", :model => "Intel Xeon", :version => "5148 LV", - :clock_speed => 2.33.giga, + :clock_speed => 2.33.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, @@ -39,7 +39,7 @@ site :rennes do |site_uid| :cache_l2 => nil }) main_memory({ - :ram_size => 8.GB(true), # bytes + :ram_size => 8.GiB, :virtual_size => nil }) operating_system({ @@ -49,15 +49,15 @@ site :rennes do |site_uid| :kernel => "2.6.19.1" }) storage_devices [ - {:interface => 'SATA', :size => 300.GB(false), :driver => "megaraid_sas", :raid => "0"}, - {:interface => 'SATA', :size => 300.GB(false), :driver => "megaraid_sas", :raid => "0"} + {:interface => 'SATA', :size => 300.GB, :driver => "megaraid_sas", :raid => "0"}, + {:interface => 'SATA', :size => 300.GB, :driver => "megaraid_sas", :raid => "0"} ] network_adapters [ - {:interface => 'Myri-10G', :rate => 10.giga, + {:interface => 'Myri-10G', :rate => 10.G, :switch => "c6509-grid", :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :vendor => 'Myrinet', :version => "10G-PCIE-8A-C", :enabled => true}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, :driver => "bnx2"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false, :driver => "bnx2"} + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :driver => "bnx2"}, + {:interface => 'Ethernet', :rate => 1.G, :enabled => false, :driver => "bnx2"} ] end end @@ -79,7 +79,7 @@ site :rennes do |site_uid| :vendor => "Intel", :model => "Intel Xeon", :version => "5148 LV", - :clock_speed => 2.33.giga, + :clock_speed => 2.33.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, @@ -88,7 +88,7 @@ site :rennes do |site_uid| :cache_l2 => nil }) main_memory({ - :ram_size => 4.GB(true), # bytes + :ram_size => 4.GiB, :virtual_size => nil }) operating_system({ @@ -98,14 +98,14 @@ site :rennes do |site_uid| :kernel => "2.6.19.1" }) storage_devices [ - {:interface => 'SATA', :size => 160.GB(false), :driver => "mptsas"} + {:interface => 'SATA', :size => 160.GB, :driver => "mptsas"} ] network_adapters [ - {:interface => 'Myri-10G', :rate => 10.giga, + {:interface => 'Myri-10G', :rate => 10.G, :switch => "c6509-grid", :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :vendor => 'Myrinet', :version => "10G-PCIE-8A-C", :enabled => true}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, :driver => "bnx2"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false, :driver => "bnx2"} + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :driver => "bnx2"}, + {:interface => 'Ethernet', :rate => 1.G, :enabled => false, :driver => "bnx2"} ] end end @@ -127,7 +127,7 @@ site :rennes do |site_uid| :vendor => "Intel", :model => "Intel Xeon", :version => "L5420", - :clock_speed => 2.5.giga, + :clock_speed => 2.5.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, @@ -136,7 +136,7 @@ site :rennes do |site_uid| :cache_l2 => nil }) main_memory({ - :ram_size => 32.GB(true), # bytes + :ram_size => 32.GiB, :virtual_size => nil }) operating_system({ @@ -146,11 +146,11 @@ site :rennes do |site_uid| :kernel => "2.6.28" }) storage_devices [ - {:interface => 'SATA', :size => 160.GB(false), :driver => "ata_piix"} + {:interface => 'SATA', :size => 160.GB, :driver => "ata_piix"} ] network_adapters [ - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, :driver => "e1000e"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false, :driver => "e1000e"} + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :driver => "e1000e"}, + {:interface => 'Ethernet', :rate => 1.G, :enabled => false, :driver => "e1000e"} ] end end diff --git a/generators/input/sophia.rb b/generators/input/sophia.rb index 2f0f550b4b6c7c90841f5016d345d37047795f45..b39e83fa291ff2213ff2fbebbc5458255edf400a 100755 --- a/generators/input/sophia.rb +++ b/generators/input/sophia.rb @@ -28,16 +28,16 @@ site :sophia do |site_uid| :vendor => "AMD", :model => "AMD Opteron", :version => "246", - :clock_speed => 2.giga, + :clock_speed => 2.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, :cache_l1i => nil, :cache_l1d => nil, - :cache_l2 => 1.MB + :cache_l2 => 1.MiB }) main_memory({ - :ram_size => 2.GB(true), # bytes + :ram_size => 2.GiB, # bytes :virtual_size => nil }) operating_system({ @@ -46,14 +46,14 @@ site :sophia do |site_uid| :version => nil }) storage_devices [ - {:interface => 'IDE', :size => 80.GB(false), :driver => "amd74xx"} + {:interface => 'IDE', :size => 80.GB, :driver => "amd74xx"} ] network_adapters [ - {:interface => 'Myri-2000', :rate => 2.giga, :enabled => true, + {:interface => 'Myri-2000', :rate => 2.G, :enabled => true, :switch => "cisco1", :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :vendor => 'Myrinet', :version => "M3F-PCIXF-2"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, :driver => "tg3"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false, :driver => "tg3"} + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :driver => "tg3"}, + {:interface => 'Ethernet', :rate => 1.G, :enabled => false, :driver => "tg3"} ] end end @@ -74,16 +74,16 @@ site :sophia do |site_uid| :vendor => "AMD", :model => "AMD Opteron", :version => "275", - :clock_speed => 2.2.giga, + :clock_speed => 2.2.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, :cache_l1i => nil, :cache_l1d => nil, - :cache_l2 => 1.MB + :cache_l2 => 1.MiB }) main_memory({ - :ram_size => 4.GB(true), # bytes + :ram_size => 4.GiB, # bytes :virtual_size => nil }) operating_system({ @@ -92,17 +92,17 @@ site :sophia do |site_uid| :version => nil }) storage_devices [ - {:interface => 'SAS', :size => 73.GB(false), :driver => "mptsas", :raid => "0"}, - {:interface => 'SAS', :size => 73.GB(false), :driver => "mptsas", :raid => "0"} + {:interface => 'SAS', :size => 73.GB, :driver => "mptsas", :raid => "0"}, + {:interface => 'SAS', :size => 73.GB, :driver => "mptsas", :raid => "0"} ] network_adapters [ - {:interface => 'Myri-2000', :rate => 2.giga, :enabled => true, + {:interface => 'Myri-2000', :rate => 2.G, :enabled => true, :switch => "edgeiron48gs", :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :vendor => 'Myrinet', :version => "M3F-PCIXF-2"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, :driver => "e1000"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false, :driver => "e1000"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false, :driver => "e1000"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false, :driver => "e1000"} + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :driver => "e1000"}, + {:interface => 'Ethernet', :rate => 1.G, :enabled => false, :driver => "e1000"}, + {:interface => 'Ethernet', :rate => 1.G, :enabled => false, :driver => "e1000"}, + {:interface => 'Ethernet', :rate => 1.G, :enabled => false, :driver => "e1000"} ] end end @@ -123,16 +123,16 @@ site :sophia do |site_uid| :vendor => "AMD", :model => "AMD Opteron", :version => "2218", - :clock_speed => 2.6.giga, + :clock_speed => 2.6.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, :cache_l1i => nil, :cache_l1d => nil, - :cache_l2 => 1.MB + :cache_l2 => 1.MiB }) main_memory({ - :ram_size => 4.GB(true), # bytes + :ram_size => 4.GiB, # bytes :virtual_size => nil }) operating_system({ @@ -141,15 +141,15 @@ site :sophia do |site_uid| :version => nil }) storage_devices [ - {:interface => 'SATA', :size => 250.GB(false), :driver => "sata_nv"} + {:interface => 'SATA', :size => 250.GB, :driver => "sata_nv"} ] network_adapters [ - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :switch => "fastiron", :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :vendor => "NVIDIA", :version => "MCP55 Pro"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, :vendor => "NVIDIA", :version => "MCP55 Pro"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false, :vendor => "Broadcom", :version => "BCM5715c"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false, :vendor => "Broadcom", :version => "BCM5715c"} + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :vendor => "NVIDIA", :version => "MCP55 Pro"}, + {:interface => 'Ethernet', :rate => 1.G, :enabled => false, :vendor => "Broadcom", :version => "BCM5715c"}, + {:interface => 'Ethernet', :rate => 1.G, :enabled => false, :vendor => "Broadcom", :version => "BCM5715c"} ] end end diff --git a/generators/input/toulouse.rb b/generators/input/toulouse.rb index 14f222647697c74f9fc943af9bc63e6c836bbf5a..c1734d1df0fa873c20a3766070faddbebb6e7f4a 100755 --- a/generators/input/toulouse.rb +++ b/generators/input/toulouse.rb @@ -29,7 +29,7 @@ site :toulouse do |site_uid| :vendor => "AMD", :model => "AMD Opteron", :version => "248", - :clock_speed => 2.2.giga, + :clock_speed => 2.2.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, @@ -38,7 +38,7 @@ site :toulouse do |site_uid| :cache_l2 => nil }) main_memory({ - :ram_size => 2.GB(true), # bytes + :ram_size => 2.GiB, # bytes :virtual_size => nil }) operating_system({ @@ -47,13 +47,13 @@ site :toulouse do |site_uid| :version => nil }) storage_devices [ - {:interface => 'SCSI', :size => 73.GB(false), :driver => "mptspi"} + {:interface => 'SCSI', :size => 73.GB, :driver => "mptspi"} ] network_adapters [ - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :switch => "cict-switch", :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :driver => "tg3"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false, :driver => "tg3"} + {:interface => 'Ethernet', :rate => 1.G, :enabled => false, :driver => "tg3"} ] end end @@ -75,16 +75,16 @@ site :toulouse do |site_uid| :vendor => "AMD", :model => "AMD Opteron", :version => "2218", - :clock_speed => 2.6.giga, + :clock_speed => 2.6.G, :instruction_set => "", :other_description => "", :cache_l1 => nil, :cache_l1i => nil, :cache_l1d => nil, - :cache_l2 => 1.MB + :cache_l2 => 1.MiB }) main_memory({ - :ram_size => 8.GB(true), # bytes + :ram_size => 8.GiB, # bytes :virtual_size => nil }) operating_system({ @@ -93,15 +93,15 @@ site :toulouse do |site_uid| :version => nil }) storage_devices [ - {:interface => 'SATA', :size => 250.GB(false), :driver => "sata_nv"} + {:interface => 'SATA', :size => 250.GB, :driver => "sata_nv"} ] network_adapters [ - {:interface => 'Ethernet', :rate => 1.giga, :enabled => true, + {:interface => 'Ethernet', :rate => 1.G, :enabled => true, :switch => "r4", :network_address => "#{node_uid}.#{site_uid}.grid5000.fr", :ip => dns_lookup("#{node_uid}.#{site_uid}.grid5000.fr"), :vendor => "NVIDIA", :version => "MCP55 Pro", :driver => "forcedeth"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false, :vendor => "NVIDIA", :version => "MCP55 Pro", :driver => "forcedeth"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false, :vendor => "Broadcom", :version => "BCM5715c", :driver => "tg3"}, - {:interface => 'Ethernet', :rate => 1.giga, :enabled => false, :vendor => "Broadcom", :version => "BCM5715c", :driver => "tg3"} + {:interface => 'Ethernet', :rate => 1.G, :enabled => false, :vendor => "NVIDIA", :version => "MCP55 Pro", :driver => "forcedeth"}, + {:interface => 'Ethernet', :rate => 1.G, :enabled => false, :vendor => "Broadcom", :version => "BCM5715c", :driver => "tg3"}, + {:interface => 'Ethernet', :rate => 1.G, :enabled => false, :vendor => "Broadcom", :version => "BCM5715c", :driver => "tg3"} ] end end diff --git a/generators/lib/core_extensions.rb b/generators/lib/core_extensions.rb index e03c75f47b4cdb7809be032d1ffcce90131b5cdf..7b06bca9995b5f7d64e71d6ef87209bf10ab3cba 100755 --- a/generators/lib/core_extensions.rb +++ b/generators/lib/core_extensions.rb @@ -1,21 +1,18 @@ class Numeric - def TB(correct = true) - if correct then self*1024**4; else self.tera/(1.024**4); end - end - # Returns the number of bytes. - # - # If you know that the provided number is not correct (in the case of hard drive capacities for example), - # setting +correct+ to +false+ will return the "real" number of bytes (e.g. HD 160GB has in reality 149011611938.477 bytes). - def GB(correct = true) - if correct then self*1024**3; else self.giga/(1.024**3); end - end - def MB(correct = true) - if correct then self*1024**2; else self.mega/(1.024**2); end + def K; self*10**3; end + def M; self*10**6; end + def G; self*10**9; end + def T; self*10**12; end + + { + :KiB => 1024, :MiB => 1024**2, :GiB => 1024**3, :TiB => 1024**4, + :KB => 1.K/1.024, :MB => 1.M/1.024**2, :GB => 1.G/1.024**3, :TB => 1.T/1.024**4 + }.each do |method, multiplier| + define_method(method) do + self*multiplier + end end - def mega; self*1_000_000; end - def giga; self*1_000_000_000; end - def tera; self*1_000_000_000_000; end end class String