maprobe: add continuosly access latency test

This commit is contained in:
William Wang 2023-04-02 13:26:55 +08:00
parent fcdbdc0640
commit ceb50bb657
3 changed files with 21 additions and 4 deletions

View File

@ -87,6 +87,7 @@ extern float test_l1_store_wcb_bandwidth(uint64_t size, int iter, int to_csv);
// key parameter matrix generate
void generate_linear_access_latency_matrix();
void generate_continuosly_access_latency_matrix();
void generate_pointer_tracing_latency_matrix();
void generate_random_access_latency_matrix();
void generate_replacement_test_matrix();

View File

@ -381,6 +381,23 @@ void generate_linear_access_latency_matrix()
print_float_result_matrix(&linear_access_latency_matrix_meta);
}
void generate_continuosly_access_latency_matrix()
{
#define CONTINUOUSLY_ACCESS_MATRIX_SIZE_MAX_POW2_KB 14
// CONTINUOUSLY_ACCESS_MATRIX_SIZE_MAX_POW2_KB 14: 14 cases in total, from 1KB to 8MB
DEFINE_FLOAT_RESULT_MATRIX(continuosly_access_latency,size_kb_pow2,CONTINUOUSLY_ACCESS_MATRIX_SIZE_MAX_POW2_KB,iter,3);
FOR(x,CONTINUOUSLY_ACCESS_MATRIX_SIZE_MAX_POW2_KB) { continuosly_access_latency_row_array[x] = x; }
FOR(x,3) { continuosly_access_latency_column_array[x] = x; }
for (int i = 0; i < CONTINUOUSLY_ACCESS_MATRIX_SIZE_MAX_POW2_KB; i++) {
int warm_up_iter = i < 6 ? 4 : 1;
int test_iter = i < 6 ? 4 : 2;
continuosly_access_latency_result_array[i][0] = test_linear_access_latency((1<<i)*KB,8*BYTE,warm_up_iter,0); //warmup
continuosly_access_latency_result_array[i][1] = test_linear_access_latency((1<<i)*KB,8*BYTE,test_iter,0); //test
continuosly_access_latency_result_array[i][2] = test_linear_access_latency((1<<i)*KB,8*BYTE,test_iter,0); //test
}
print_float_result_matrix(&continuosly_access_latency_matrix_meta);
}
void generate_pointer_tracing_latency_matrix()
{
#define POINTER_CHASING_MATRIX_SIZE_MAX_POW2_KB 14

View File

@ -229,13 +229,10 @@ void legacy_latency_throughput_test()
int main()
{
l2_l3_pressure_test();
return 0;
generate_replacement_test_matrix();
latency_test_example();
generate_linear_access_latency_matrix();
generate_continuosly_access_latency_matrix();
generate_pointer_tracing_latency_matrix();
generate_random_access_latency_matrix();
generate_replacement_test_matrix();
@ -245,5 +242,7 @@ int main()
// pointer_tracing_graph();
// latency_test();
// legacy_latency_throughput_test();
l2_l3_pressure_test();
return 0;
// return 0;
}