You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datasketches.apache.org by al...@apache.org on 2020/09/29 19:58:10 UTC
[incubator-datasketches-characterization] 01/02: theta and tuple
sketch and union update time plots
This is an automated email from the ASF dual-hosted git repository.
alsay pushed a commit to branch tuple_sketch
in repository https://gitbox.apache.org/repos/asf/incubator-datasketches-characterization.git
commit 74c86e3e7fca38c9ac6fe57842b04f6e3af729fb
Author: AlexanderSaydakov <Al...@users.noreply.github.com>
AuthorDate: Tue Sep 29 12:52:51 2020 -0700
theta and tuple sketch and union update time plots
---
cpp/matlab/theta_sketch_update_time.m | 38 ++++++++++++++++++++++++++++++++
cpp/matlab/theta_union_update_time.m | 41 +++++++++++++++++++++++++++++++++++
2 files changed, 79 insertions(+)
diff --git a/cpp/matlab/theta_sketch_update_time.m b/cpp/matlab/theta_sketch_update_time.m
new file mode 100644
index 0000000..4956b5f
--- /dev/null
+++ b/cpp/matlab/theta_sketch_update_time.m
@@ -0,0 +1,38 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+clf;
+theta_12=load('../results/theta_sketch_timing_lgk12_x8_gcc9.tsv');
+theta_12_test=load('../results/theta_sketch_timing_lgk12_x8_gcc9_experimental.tsv');
+tuple_12_double=load('../results/tuple_sketch_timing_double_lgk12_x8_gcc9.tsv');
+aod_12=load('../results/aod_sketch_timing_lgk12_x8_gcc9.tsv');
+aod_12_java=load('../../results/aod_sketch_update_timing_lgk12_x8.tsv');
+
+hold on;
+
+semilogx(theta_12(:,1), theta_12(:,4), 'linewidth', 2);
+semilogx(theta_12_test(:,1), theta_12_test(:,4), 'linewidth', 2);
+semilogx(tuple_12_double(:,1), tuple_12_double(:,4), 'linewidth', 2);
+semilogx(aod_12(:,1), aod_12(:,4), 'linewidth', 2);
+semilogx(aod_12_java(:,1), aod_12_java(:,3), 'linewidth', 2);
+
+set(gca, 'fontsize', 16);
+title 'Update time of Theta sketches'
+xlabel 'number of distinct values'
+legend('Theta lgk=12 x8 gcc9', 'Theta lgk=12 x8 gcc9 experimental', 'Tuple double lgk=12 x8 gcc9', 'AOD lgk=12 x8 gcc9', 'AOD lgk=12 x8 Java', 'location', 'northeast');
+ylabel 'update time, ns'
+grid minor on
diff --git a/cpp/matlab/theta_union_update_time.m b/cpp/matlab/theta_union_update_time.m
new file mode 100644
index 0000000..3de62a8
--- /dev/null
+++ b/cpp/matlab/theta_union_update_time.m
@@ -0,0 +1,41 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+clf;
+
+theta_cpp=load('../results/theta_union_timing_lgk12_32way_compact_trimmed_gcc9.tsv');
+theta_cpp_exp=load('../results/theta_union_timing_lgk12_32way_compact_trimmed_gcc9_experimental.tsv');
+theta_java=load('../../results/theta_union_update_timing_lgk12_32way.tsv');
+tuple_cpp=load('../results/tuple_union_timing_double_lgk12_32way_compact_trimmed_gcc9.tsv');
+aod_java=load('../../results/aod_union_update_timing_lgk12_32way.tsv');
+aod_cpp=load('../results/aod_union_timing_lgk12_32way_compact_trimmed_gcc9.tsv');
+
+hold on;
+
+semilogx(theta_cpp(:,1), theta_cpp(:,8), 'linewidth', 2);
+semilogx(theta_cpp_exp(:,1), theta_cpp_exp(:,8), 'linewidth', 2);
+semilogx(theta_java(:,1), theta_java(:,3), 'linewidth', 2);
+semilogx(tuple_cpp(:,1), tuple_cpp(:,8), 'linewidth', 2);
+semilogx(aod_java(:,1), aod_java(:,3), 'linewidth', 2);
+semilogx(aod_cpp(:,1), aod_cpp(:,8), 'linewidth', 2);
+
+set(gca, 'fontsize', 16);
+title 'Update time of 32-way union'
+xlabel 'number of distinct values'
+legend('Theta lgk=12 compact trimmed gcc9', 'Theta experimental', 'Theta lgk=12 compact trimmed Java', 'Tuple double lgk=12 compact trimmed gcc9', 'AOD compact trimmed Java', 'AOD compact trimmed gcc9', 'location', 'northwest');
+ylabel 'update time, nanoseconds'
+grid minor on
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datasketches.apache.org
For additional commands, e-mail: commits-help@datasketches.apache.org