From: Adam C. Emerson Date: Tue, 6 Aug 2019 20:18:46 +0000 (-0400) Subject: neorados: Op creation benchmark X-Git-Tag: v16.1.0~2266^2~2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=fa584d71c5b267adfe5985e7867ef92d75942f98;p=ceph.git neorados: Op creation benchmark Signed-off-by: Adam C. Emerson --- diff --git a/src/test/neorados/CMakeLists.txt b/src/test/neorados/CMakeLists.txt index c9a506a1160..14760ab6e8c 100644 --- a/src/test/neorados/CMakeLists.txt +++ b/src/test/neorados/CMakeLists.txt @@ -4,3 +4,7 @@ target_link_libraries(ceph_test_neorados_start_stop global libneorados ${unittes add_executable(ceph_test_neorados_completions completions.cc) target_link_libraries(ceph_test_neorados_completions Boost::system pthread ${unittest_libs}) + +add_executable(ceph_test_neorados_op_speed op_speed.cc) +target_link_libraries(ceph_test_neorados_op_speed + libneorados fmt::fmt ${unittest_libs}) diff --git a/src/test/neorados/op_speed.cc b/src/test/neorados/op_speed.cc new file mode 100644 index 00000000000..587c345d45f --- /dev/null +++ b/src/test/neorados/op_speed.cc @@ -0,0 +1,34 @@ +// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*- +// vim: ts=8 sw=2 smarttab +/* + * Ceph - scalable distributed file system + * + * Copyright (C) 2019 Red Hat + * Author: Adam C. Emerson + * + * This is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software + * Foundation. See file COPYING. + * + */ + +#include "include/neorados/RADOS.hpp" + +constexpr int to_create = 10'000'000; + +int main() { + for (int i = 0; i < to_create; ++i) { + neorados::ReadOp op; + bufferlist bl; + std::uint64_t sz; + ceph::real_time tm; + boost::container::flat_map xattrs; + boost::container::flat_map omap; + bool trunc; + op.read(0, 0, &bl); + op.stat(&sz, &tm); + op.get_xattrs(&xattrs); + op.get_omap_vals(std::nullopt, std::nullopt, 1000, &omap, &trunc); + } +}