mirror of
https://github.com/dashpay/dash.git
synced 2024-12-26 12:32:48 +01:00
Merge #13025: Dead code removal
1bf3f33b46
node: Removed unused wallet-related methods from the Node interface. (Thomas Snider)b38200459f
benchmark: Removed bench/perf.cpp (Thomas Snider) Pull request description: Not sure if these should be separate PRs. First is removal of a platform abstraction for getting cycle counters where possible. Since the benchmarking switch to counting number of iterations over a fixed window instead of counting cycles per iteration, these are unused. Second is removal of a few methods from the Node interface that seem vestigial from when the concepts of wallet/node were not as clearly separated. Tree-SHA512: de1460a7d4473ca19db4e2ca845185c63c765d12462c2685044a1f27dedab266cd908bc52235a881a7ad98bc251a4abf4eae523e5f599c169e3511e489f19a0d
This commit is contained in:
commit
39cf27faf3
@ -25,8 +25,6 @@ bench_bench_bitcoin_SOURCES = \
|
|||||||
bench/verify_script.cpp \
|
bench/verify_script.cpp \
|
||||||
bench/base58.cpp \
|
bench/base58.cpp \
|
||||||
bench/lockedpool.cpp \
|
bench/lockedpool.cpp \
|
||||||
bench/perf.cpp \
|
|
||||||
bench/perf.h \
|
|
||||||
bench/prevector.cpp
|
bench/prevector.cpp
|
||||||
|
|
||||||
nodist_bench_bench_bitcoin_SOURCES = $(GENERATED_BENCH_FILES)
|
nodist_bench_bench_bitcoin_SOURCES = $(GENERATED_BENCH_FILES)
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
||||||
|
|
||||||
#include <bench/bench.h>
|
#include <bench/bench.h>
|
||||||
#include <bench/perf.h>
|
|
||||||
|
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
@ -96,7 +95,6 @@ benchmark::BenchRunner::BenchRunner(std::string name, benchmark::BenchFunction f
|
|||||||
|
|
||||||
void benchmark::BenchRunner::RunAll(Printer& printer, uint64_t num_evals, double scaling, const std::string& filter, bool is_list_only)
|
void benchmark::BenchRunner::RunAll(Printer& printer, uint64_t num_evals, double scaling, const std::string& filter, bool is_list_only)
|
||||||
{
|
{
|
||||||
perf_init();
|
|
||||||
if (!std::ratio_less_equal<benchmark::clock::period, std::micro>::value) {
|
if (!std::ratio_less_equal<benchmark::clock::period, std::micro>::value) {
|
||||||
std::cerr << "WARNING: Clock precision is worse than microsecond - benchmarks may be less accurate!\n";
|
std::cerr << "WARNING: Clock precision is worse than microsecond - benchmarks may be less accurate!\n";
|
||||||
}
|
}
|
||||||
@ -126,8 +124,6 @@ void benchmark::BenchRunner::RunAll(Printer& printer, uint64_t num_evals, double
|
|||||||
}
|
}
|
||||||
|
|
||||||
printer.footer();
|
printer.footer();
|
||||||
|
|
||||||
perf_fini();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool benchmark::State::UpdateTimer(const benchmark::time_point current_time)
|
bool benchmark::State::UpdateTimer(const benchmark::time_point current_time)
|
||||||
|
@ -1,53 +0,0 @@
|
|||||||
// Copyright (c) 2016-2017 The Bitcoin Core developers
|
|
||||||
// Distributed under the MIT software license, see the accompanying
|
|
||||||
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|
||||||
|
|
||||||
#include <bench/perf.h>
|
|
||||||
|
|
||||||
#if defined(__i386__) || defined(__x86_64__)
|
|
||||||
|
|
||||||
/* These architectures support querying the cycle counter
|
|
||||||
* from user space, no need for any syscall overhead.
|
|
||||||
*/
|
|
||||||
void perf_init(void) { }
|
|
||||||
void perf_fini(void) { }
|
|
||||||
|
|
||||||
#elif defined(__linux__)
|
|
||||||
|
|
||||||
#include <unistd.h>
|
|
||||||
#include <sys/syscall.h>
|
|
||||||
#include <linux/perf_event.h>
|
|
||||||
|
|
||||||
static int fd = -1;
|
|
||||||
static struct perf_event_attr attr;
|
|
||||||
|
|
||||||
void perf_init(void)
|
|
||||||
{
|
|
||||||
attr.type = PERF_TYPE_HARDWARE;
|
|
||||||
attr.config = PERF_COUNT_HW_CPU_CYCLES;
|
|
||||||
fd = syscall(__NR_perf_event_open, &attr, 0, -1, -1, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
void perf_fini(void)
|
|
||||||
{
|
|
||||||
if (fd != -1) {
|
|
||||||
close(fd);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
uint64_t perf_cpucycles(void)
|
|
||||||
{
|
|
||||||
uint64_t result = 0;
|
|
||||||
if (fd == -1 || read(fd, &result, sizeof(result)) < (ssize_t)sizeof(result)) {
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
#else /* Unhandled platform */
|
|
||||||
|
|
||||||
void perf_init(void) { }
|
|
||||||
void perf_fini(void) { }
|
|
||||||
uint64_t perf_cpucycles(void) { return 0; }
|
|
||||||
|
|
||||||
#endif
|
|
@ -1,37 +0,0 @@
|
|||||||
// Copyright (c) 2016 The Bitcoin Core developers
|
|
||||||
// Distributed under the MIT software license, see the accompanying
|
|
||||||
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|
||||||
|
|
||||||
/** Functions for measurement of CPU cycles */
|
|
||||||
#ifndef BITCOIN_BENCH_PERF_H
|
|
||||||
#define BITCOIN_BENCH_PERF_H
|
|
||||||
|
|
||||||
#include <stdint.h>
|
|
||||||
|
|
||||||
#if defined(__i386__)
|
|
||||||
|
|
||||||
static inline uint64_t perf_cpucycles(void)
|
|
||||||
{
|
|
||||||
uint64_t x;
|
|
||||||
__asm__ volatile (".byte 0x0f, 0x31" : "=A" (x));
|
|
||||||
return x;
|
|
||||||
}
|
|
||||||
|
|
||||||
#elif defined(__x86_64__)
|
|
||||||
|
|
||||||
static inline uint64_t perf_cpucycles(void)
|
|
||||||
{
|
|
||||||
uint32_t hi, lo;
|
|
||||||
__asm__ __volatile__ ("rdtsc" : "=a"(lo), "=d"(hi));
|
|
||||||
return ((uint64_t)lo)|(((uint64_t)hi)<<32);
|
|
||||||
}
|
|
||||||
#else
|
|
||||||
|
|
||||||
uint64_t perf_cpucycles(void);
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
void perf_init(void);
|
|
||||||
void perf_fini(void);
|
|
||||||
|
|
||||||
#endif // BITCOIN_BENCH_PERF_H
|
|
@ -216,9 +216,6 @@ class NodeImpl : public Node
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
CFeeRate getDustRelayFee() override { return ::dustRelayFee; }
|
CFeeRate getDustRelayFee() override { return ::dustRelayFee; }
|
||||||
CFeeRate getFallbackFee() override { CHECK_WALLET(return CWallet::fallbackFee); }
|
|
||||||
CFeeRate getPayTxFee() override { CHECK_WALLET(return ::payTxFee); }
|
|
||||||
void setPayTxFee(CFeeRate rate) override { CHECK_WALLET(::payTxFee = rate); }
|
|
||||||
UniValue executeRpc(const std::string& command, const UniValue& params, const std::string& uri) override
|
UniValue executeRpc(const std::string& command, const UniValue& params, const std::string& uri) override
|
||||||
{
|
{
|
||||||
JSONRPCRequest req;
|
JSONRPCRequest req;
|
||||||
|
@ -173,15 +173,6 @@ public:
|
|||||||
//! Get dust relay fee.
|
//! Get dust relay fee.
|
||||||
virtual CFeeRate getDustRelayFee() = 0;
|
virtual CFeeRate getDustRelayFee() = 0;
|
||||||
|
|
||||||
//! Get fallback fee.
|
|
||||||
virtual CFeeRate getFallbackFee() = 0;
|
|
||||||
|
|
||||||
//! Get pay tx fee.
|
|
||||||
virtual CFeeRate getPayTxFee() = 0;
|
|
||||||
|
|
||||||
//! Set pay tx fee.
|
|
||||||
virtual void setPayTxFee(CFeeRate rate) = 0;
|
|
||||||
|
|
||||||
//! Execute rpc command.
|
//! Execute rpc command.
|
||||||
virtual UniValue executeRpc(const std::string& command, const UniValue& params, const std::string& uri) = 0;
|
virtual UniValue executeRpc(const std::string& command, const UniValue& params, const std::string& uri) = 0;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user