diff --git a/README.md b/README.md index f7c59dff2e983363eacb65d6be81f842e0996327..8ee51f834394f32f128ceb0cba8fcde2d01d413a 100644 --- a/README.md +++ b/README.md @@ -46,7 +46,7 @@ l3_cache=25344 After the optional creation of the configuration file, the tool can executed as: ``` -python run.py <path_config_file> --name <name> --test <test> --inst <fp_inst> --num_ops <num_ops> --isa <[isa]> --precision <[data_precision]> --ld_st_ratio <ld_st_ratio> --fp_ld_st_ratio <fp_ld_st_ratio> --dram_bytes <dram_bytes> is the size of the array used for the DRAM benchmark in KiB; --threads <[num_threads]> --freq <frequency> --l1_size <l1_size> --l2_size <l2_size> --l3_size <l3_size> --threads_per_l1 <threads_per_l1> --threads_per_l2 <threads_per_l2> --vector_length <vector_length> --verbose [0, 1, 2, 3] [--only_ld] [--only_st] [--no_freq_measure] [--set_freq] [--interleaved] [--dram_auto] [--plot] +python run.py <path_config_file> --name <name> --test <test> --inst <fp_inst> --num_ops <num_ops> --isa <[isa]> --precision <[data_precision]> --ld_st_ratio <ld_st_ratio> --fp_ld_st_ratio <fp_ld_st_ratio> --l3_kbytes <l3_kbytes> --dram_kbytes <dram_kbytes> --threads <[num_threads]> --freq <frequency> --l1_size <l1_size> --l2_size <l2_size> --l3_size <l3_size> --threads_per_l1 <threads_per_l1> --threads_per_l2 <threads_per_l2> --vector_length <vector_length> --verbose [0, 1, 2, 3, 4] [--only_ld] [--only_st] [--no_freq_measure] [--set_freq] [--interleaved] [--dram_auto] [--plot] ``` where @@ -59,7 +59,8 @@ where - --precision <data_precision> is the precision of the data, multiple options can be seletcted by spacing them (dp, sp); - --ld_st_ratio <ld_st_ratio> is the number of loads per store involed in the memory benchmarks; - --fp_ld_st_ratio <fp_ld_st_ratio> is the FP to Load/Store ratio involved in the mixed benchmarks; - - --dram_bytes <dram_bytes> is the size of the array used for the DRAM benchmark in KiB; + - --l3_kbytes <l3_kbytes> is the total size of the array for the L3 test in KiB; + - --dram_kbytes <dram_kbytes> is the total size of the array for the DRAM test in KiB (Default: 524288 (512 MiB)); - --threads <num_threads> is the number of threads used for the test, multiple options can be selected by spacing them - --freq <frequency> expected CPU frequency if not auto-measuring (in GHz) - --l1_size <l1_size> is the L1 size per core of the machine being benchmarked @@ -68,7 +69,7 @@ where - --threads_per_l1 <threads_per_l1> are the expected number of threads that will share the same L1 cache (Default: 1) - --threads_per_l2 <threads_per_l2> are the expected number of threads that will share the same L2 cache (Default: 2) - --vector_length <vector_length> is the desired vector length in elements to be used (for riscvvector only, tool will use the max by default) - - --verbose [0, 1, 2, 3] is the level of output information to be displayed during execution (0 -> No Output 1 -> Only ISA Errors and Test Details, 2 -> Intermediate Test Results, 3 -> Configuration Values Selected/Detected) + - --verbose [0, 1, 2, 3, 4] is the level of terminal output details (0 -> No Output 1 -> Only ISA/Configuration Errors and Test Specifications, 2 -> Test Results, 3 -> Configuration Values Selected/Detected, 4 -> Debug Output) - [--only_ld] indicates that the memory benchmarks will just contain loads (<ld_st_ratio> is ignored); - [--only_st] indicates that the memory benchmarks will just contain stores (<ld_st_ratio> is ignored); - [--no_freq_measure] disables the automatic frequency measuring (CPU frequency should be provided in config file or via --freq argument) diff --git a/run.py b/run.py index 5b088fdeac30f413f1a866ad3e47964b3b09a9ce..6e89f8c3bdff7012cb62bf4e01f6748287da0d11 100644 --- a/run.py +++ b/run.py @@ -1183,7 +1183,7 @@ def main(): parser.add_argument('--freq', default='2.0', nargs='?', type = float, help='Expected/Desired CPU frequency during test (if no_freq_measure or set_freq is enabled)') parser.add_argument('--set_freq', dest='set_freq', action='store_const', const=1, default=0, help='Set Processor frequency to indicated one (x86 only, might require admin priviliges and might not work for certain systems)') parser.add_argument('--name', default='unnamed', nargs='?', type = str, help='Name for results file (if not using config file)') - parser.add_argument('-v', '--verbose', default=3, nargs='?', type = int, choices=[0, 1, 2, 3, 4], help='Level of terminal output (0 -> No Output 1 -> Only ISA/Configuration Errors and Test Specifications, 2 -> Test Results, 3 -> Configuration Values Selected/Detected, 4 -> Debug Output)') + parser.add_argument('-v', '--verbose', default=3, nargs='?', type = int, choices=[0, 1, 2, 3, 4], help='Level of terminal output details (0 -> No Output 1 -> Only ISA/Configuration Errors and Test Specifications, 2 -> Test Results, 3 -> Configuration Values Selected/Detected, 4 -> Debug Output)') parser.add_argument('--inst', default='add', nargs='?', choices=['add', 'mul', 'div', 'fma'], help='FP Instruction (Default: add), FMA performance is measured by default too.') parser.add_argument('-vl', '--vector_length', default=1, nargs='?', type=positive_int, help='Vector Length in double-precision elements for RVV configuration (Default: 1)') parser.add_argument('-vlmul', '--vector_lmul', default=1, nargs='?', type = int, choices=[1, 2, 4, 8], help='Vector Register Grouping for RVV configuration (Default: 1)')