ibp_perf

Synopsis

ibp_perf [-d|-dd] [-network_chksum type blocksize] [-disk_chksum type blocksize] [-validate] [-config ibp.cfg] [-phoebus gateway_list] [-tcpsize tcpbufsize] [-duration duration] [-sync] [-alias] [-progress] [-random] n_depots depot1 port1 resource_id1 ... depotN portN ridN nthreads ibp_timeout alias_createremove_count createremove_count readwrite_count readwrite_alloc_size rw_block_size read_mix_fraction smallio_count small_min_size small_max_size small_read_fraction

Description

This tool is designed to benchmark a collection of depots and a single client by doing low-level allocation creation and data transfers. Some test can be skipped if the count is set to 0.

Options

-d
Enable minimal debug output
-dd
Enable FULL debug output
-network_chksum type blocksize
Enable network checksumming for transfers. type should be SHA256, SHA512, SHA1, or MD5. blocksize determines how many bytes to send between checksums in kbytes.
-disk_chksum type blocksize
Use block level checksum allocations. type should be NONE, SHA256, SHA512, SHA1, or MD5. If NONE is specified it will force the creation of allocations without checksums. If the option is not specified then the resources default options are used. blocksize determines how many bytes to send between checksums in kbytes.
-validate
Validate disk chksum data. Option is ignored unless disk chksumming is enabled.
-config ibp.cfg
Use the IBP configuration defined in given file. nthreads overrides value in config file unless -1.
-phoebus ppath
Use Phoebus protocol for data transfers. The Phoebus path si a comma separated List of phoebus hosts/ports, eg. gateway1/1234,gateway2/4321.
-tcpsize tcpbufsize
Use this value, in KB, for the TCP send/recv buffer sizes.
-duration duration
Allocation duration in sec. Needs to be big enough to last the entire run. The default duration is 900 sec.
-sync
Use the synchronous protocol. Default uses asynchrounous transfers.
-alias
Use alias allocations for all I/O operations.
-progress
Print completion progress.
-random
Initializes the transfer buffers with quasi-random data.
n_depots
Number of depot tuplets defined next
depot port RID
Depot tuple comprised of the depot hostname, port and resource to use. A RID of 0 lets the depot pick a resource.
nthreads
Max Number of simultaneous threads to use. Use -1 for defaults or value in ibp.cfg
ibp_timeout
Timeout(sec) for each IBP copmmand
alias_createremove_count
Number of 0 byte files to create and remove using alias allocations. Set this value to 0 to skip the test.
createremove_count
Number of 0 byte files to create and remove to test metadata performance. Set this value to 0 to skip the test.
readwrite_count
Number of files to write sequentially then read sequentially. Set this value to 0 to skip the test.
readwrite_alloc_size
Size of each allocation in KB for sequential and random tests
rw_block_size
Size of each R/W operation in KB for sequential and random tests
read_mix_fraction
Fraction of Random I/O operations that are READS
smallio_count
Number of random small I/O operations. Set this value to 0 to skip the test.
small_min_size
Minimum size of each small I/O operation(kb)
small_max_size
Max size of each small I/O operation(kb)
small_read_fraction
Fraction of small random I/O operations that are READS

See also

ibp_copyperf, ibp_test