aboutsummaryrefslogtreecommitdiff
path: root/tests/performance_tests/crypto_ops.h
diff options
context:
space:
mode:
authormoneromooo-monero <moneromooo-monero@users.noreply.github.com>2018-11-04 15:38:59 +0000
committermoneromooo-monero <moneromooo-monero@users.noreply.github.com>2018-11-04 15:44:56 +0000
commit5d7c2316045e416d0152dd5cd3a941be3843c67c (patch)
treeb791b34f2887a2242acc2583bbdb83e699ea40b7 /tests/performance_tests/crypto_ops.h
parentMerge pull request #4676 (diff)
downloadmonero-5d7c2316045e416d0152dd5cd3a941be3843c67c.tar.xz
rct: add a zeroCommit cache for common pre-rct case
This is called for every pre-rct output at blockchain sync time, and a lot of them wil hit the cache, saving a scalarmult each.
Diffstat (limited to 'tests/performance_tests/crypto_ops.h')
-rw-r--r--tests/performance_tests/crypto_ops.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/tests/performance_tests/crypto_ops.h b/tests/performance_tests/crypto_ops.h
index 3c68583c5..25ab008db 100644
--- a/tests/performance_tests/crypto_ops.h
+++ b/tests/performance_tests/crypto_ops.h
@@ -40,6 +40,7 @@ enum test_op
op_sc_mul,
op_ge_add_raw,
op_ge_add_p3_p3,
+ op_zeroCommitCached,
ops_fast,
op_addKeys,
@@ -54,6 +55,7 @@ enum test_op
op_addKeys3,
op_addKeys3_2,
op_isInMainSubgroup,
+ op_zeroCommitUncached,
};
template<test_op op>
@@ -108,6 +110,8 @@ public:
case op_addKeys3: rct::addKeys3(key, scalar0, point0, scalar1, precomp1); break;
case op_addKeys3_2: rct::addKeys3(key, scalar0, precomp0, scalar1, precomp1); break;
case op_isInMainSubgroup: rct::isInMainSubgroup(point0); break;
+ case op_zeroCommitUncached: rct::zeroCommit(9001); break;
+ case op_zeroCommitCached: rct::zeroCommit(9000); break;
default: return false;
}
return true;