-
Notifications
You must be signed in to change notification settings - Fork 142
Conversation
Thanks for your contribution in opening this pull request! Now you can be rewarded with a CORTX sticker by requesting cortx sticker |
Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Somnath Ghule.
|
Can one of the admins verify this patch? |
Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Somnath Ghule.
|
4 similar comments
Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Somnath Ghule.
|
Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Somnath Ghule.
|
Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Somnath Ghule.
|
Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Somnath Ghule.
|
Result after fix: info: done workload 0 |
Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Somnath Ghule, root.
|
2a49a0a
to
531b9cd
Compare
Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Somnath Ghule.
|
531b9cd
to
6eec6ed
Compare
Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Somnath Ghule.
|
6eec6ed
to
a27a003
Compare
Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Somnath Ghule.
|
a27a003
to
8a5acb0
Compare
Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: somnathbghule.
|
motr/m0crate/crate_index.c
Outdated
@@ -308,6 +308,8 @@ struct cr_idx_w { | |||
struct cr_time_measure_ctx exec_time_ctx; | |||
size_t exec_time; | |||
enum cr_op_selector op_selector; | |||
m0_time_t kv_op_acc_time[CRATE_OP_NR]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
how about name exec_time_per_kv_op_type?
Add comment
// see enum cr_opcode, 4 kv op types for now
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you may want to have struct cr_idx_w_results
and move measurements outside workload descriptor.
example
struct cr_idx_ops_result {
const char * c_op_type; // label
int op_type; // comes from cr_opcode::CRATE_OP_PUT
m0_time_t total_time_all_ops_s;
m0_time_t time_per_op_ns;
}
struct cr_idx_w_results {
m0_time_t total_time; // entire workload
cr_idx_ops_result ops_result[CRATE_OP_NR]; // per op result for each put, get, del, next
}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed as per discussion.
motr/m0crate/crate_index.c
Outdated
@@ -308,6 +308,8 @@ struct cr_idx_w { | |||
struct cr_time_measure_ctx exec_time_ctx; | |||
size_t exec_time; | |||
enum cr_op_selector op_selector; | |||
m0_time_t kv_op_acc_time[CRATE_OP_NR]; | |||
int kv_op_count[CRATE_OP_NR]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
total_ops_count_per_kv_op_type
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed.
motr/m0crate/crate_index.c
Outdated
w.wit->key_size, w.wit->value_size, w.nr_ops_total); | ||
|
||
if (w.kv_op_count[CRATE_OP_PUT]) | ||
fprintf(stdout, "result: put_s, %f, avg_time_per_op_ns, %"PRIu64", ops, %d\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ops should not have _s for secs, like put_s
use key as total_time_s
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done.
motr/m0crate/crate_index.c
Outdated
t->elapsed, m0_time_nanoseconds(t->test_time) / w.nr_ops_total, | ||
w.wit->key_size, w.wit->value_size, w.nr_ops_total); | ||
|
||
if (w.kv_op_count[CRATE_OP_PUT]) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Simply to reduce fprintf/if-else ladder as discussed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done.
This issue/pull request has been marked as |
1439443
to
0dacfed
Compare
motr/m0crate/tests/test1.yaml
Outdated
WORKLOAD_SEED: tstamp | ||
NUM_KVP: 8 | ||
NXRECORDS: default # int or default | ||
RECORD_SIZE: 32 # int [units] or random |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
since we are updating these files, lets update to use latest params as key size and value size and just deprecate RECORD_SIZE
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same for other sample yaml files.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes, we can remove the "RECORD_SIZE" from these sample yaml config files.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed RECORD_SIZE and MAX_RSIZE from sample yaml config files.
Removed unwanted info from kv test run o/p, added KEY_SIZE support. Added m0crate index value_size changes. Cleaned record size changes and added changes for max key and value. added changes for total op time and time per ops in ns. added changes for total op time and time per ops in ns. Signed-off-by: somnathbghule <somnath.b.ghule@seagate.com>
Signed-off-by: somnathbghule <somnath.b.ghule@seagate.com>
Signed-off-by: somnathbghule <somnath.b.ghule@seagate.com>
Signed-off-by: somnathbghule <somnath.b.ghule@seagate.com>
Signed-off-by: somnathbghule <somnath.b.ghule@seagate.com>
Signed-off-by: somnathbghule <somnath.b.ghule@seagate.com>
Signed-off-by: somnathbghule <somnath.b.ghule@seagate.com>
Signed-off-by: somnathbghule <somnath.b.ghule@seagate.com>
Signed-off-by: somnathbghule <somnath.b.ghule@seagate.com>
Signed-off-by: somnathbghule <somnath.b.ghule@seagate.com>
Signed-off-by: somnathbghule <somnath.b.ghule@seagate.com>
Signed-off-by: somnathbghule <somnath.b.ghule@seagate.com>
Signed-off-by: somnathbghule <somnath.b.ghule@seagate.com>
Signed-off-by: somnathbghule <somnath.b.ghule@seagate.com>
Signed-off-by: somnathbghule <somnath.b.ghule@seagate.com>
Signed-off-by: somnathbghule <somnath.b.ghule@seagate.com>
Signed-off-by: somnathbghule <somnath.b.ghule@seagate.com>
0dacfed
to
e3c8132
Compare
ok to test |
Thanks for your contribution to CORTX! 🎉 |
Thanks @huanghua78 for your support in getting this reviewed and merged! Thanks @somnathbghule for the improvements! |
* Removed unwanted info from kv test run o/p, added KEY_SIZE support. * Added m0crate index value_size changes. * Cleaned record size changes and added changes for max key and value. * Added changes for total op time and time per ops in ns. * Removed RECORD_SIZE and MAX_RSIZE from tests/*.yaml files. Signed-off-by: somnathbghule <somnath.b.ghule@seagate.com>
There are improvement areas such as,
Implementation of specifying the specific KEY and VALUE sizes in kv test run, sizes can be number (int) or random.