allocate - allocate memory
$ allocate [--unit B/KiB/MiB/GiB] [--sleep-time N] [number]
allocate
allocates a specific amount of virtual memory. If nothing is specified then it will allocate 100 bytes of memory. If number
is specified without unit
, it will default to number
of bytes. It also writes to each allocated page and then sleeps for N seconds (by default 10). It is primarily used to test the kernel's memory management capabilities.
-u
, --size-unit
: Allocation's Size Unit (Base 2 units - B, KiB, MiB or GiB)-n
, --sleep-time
: Number of seconds to sleep before freeing memory$ allocate 500
allocating memory (500 bytes)...
done in 0ms
writing one byte to each page of allocated memory...
done in 0ms
sleeping for 10 seconds...
0
1
2
3
4
5
6
7
8
9
done.
freeing memory...
done in 0ms
$ allocate 500 -u KiB
allocating memory (512000 bytes)...
done in 0ms
writing one byte to each page of allocated memory...
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
done in 4ms
sleeping for 10 seconds...
0
1
2
3
4
5
6
7
8
9
done.
freeing memory...
done in 0ms
$ allocate -u KiB -n 2 500
allocating memory (512000 bytes)...
done in 0ms
writing one byte to each page of allocated memory...
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
step took 1ms (46.875MiB/s)
done in 0ms
sleeping for 2 seconds...
0
1
done.
freeing memory...
done in 0ms