[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lmi-commits] [lmi] master e8d4b982 08/11: Measure ledger_format() speed
From: |
Greg Chicares |
Subject: |
[lmi-commits] [lmi] master e8d4b982 08/11: Measure ledger_format() speed |
Date: |
Fri, 29 Apr 2022 11:59:33 -0400 (EDT) |
branch: master
commit e8d4b982b276914f8df11963c26d8d2cc89f35ca
Author: Gregory W. Chicares <gchicares@sbcglobal.net>
Commit: Gregory W. Chicares <gchicares@sbcglobal.net>
Measure ledger_format() speed
Baseline:
i686-w64-mingw32
construct : 2.075e-03 s mean; 1776 us least of 100 runs
make_evaluator() : 1.164e-02 s mean; 10358 us least of 86 runs
write_tsv() : 4.719e-03 s mean; 4278 us least of 100 runs
mete_format() : 1.325e-02 s mean; 12848 us least of 76 runs
x86_64-pc-linux-gnu
construct : 5.058e-04 s mean; 496 us least of 100 runs
make_evaluator() : 7.281e-03 s mean; 7001 us least of 100 runs
write_tsv() : 1.389e-03 s mean; 1369 us least of 100 runs
mete_format() : 8.399e-03 s mean; 8362 us least of 100 runs
---
ledger_test.cpp | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/ledger_test.cpp b/ledger_test.cpp
index 57908211..7bfa529d 100644
--- a/ledger_test.cpp
+++ b/ledger_test.cpp
@@ -98,6 +98,27 @@ void ledger_test::test_ledger_format()
LMI_TEST_EQUAL("0.0314" , ledger_format(pi, g3));
}
+void mete_format()
+{
+ constexpr double pi_millions {3141592.65358979323851};
+ constexpr std::pair<int,oenum_format_style> f1(0, oe_format_normal);
+ constexpr std::pair<int,oenum_format_style> f2(2, oe_format_normal);
+ constexpr std::pair<int,oenum_format_style> f3(0, oe_format_percentage);
+ constexpr std::pair<int,oenum_format_style> f4(2, oe_format_percentage);
+ static std::vector<double> const v {pi_millions, 100};
+ for(int j = 0; j < 1000; ++j)
+ {
+ ledger_format(pi_millions, f1);
+ ledger_format(pi_millions, f2);
+ ledger_format(pi_millions, f3);
+ ledger_format(pi_millions, f4);
+ ledger_format(v, f1);
+ ledger_format(v, f2);
+ ledger_format(v, f3);
+ ledger_format(v, f4);
+ }
+}
+
void ledger_test::test_speed()
{
Ledger ledger(100, mce_finra, false, false, false);
@@ -112,6 +133,7 @@ void ledger_test::test_speed()
<< "\n construct : " << TimeAnAliquot(f0)
<< "\n make_evaluator() : " << TimeAnAliquot(f1)
<< "\n write_tsv() : " << TimeAnAliquot(f2)
+ << "\n mete_format() : " << TimeAnAliquot(mete_format)
<< std::endl
;
LMI_TEST(0 == std::remove("tsv_eraseme.values.tsv"));
- [lmi-commits] [lmi] master updated (a2c3a37c -> 92d90368), Greg Chicares, 2022/04/29
- [lmi-commits] [lmi] master 17f6042e 01/11: Test nonstandard "'" printf flag, Greg Chicares, 2022/04/29
- [lmi-commits] [lmi] master 5e493f40 02/11: Rename ncnnnpnn, Greg Chicares, 2022/04/29
- [lmi-commits] [lmi] master a87f01b0 03/11: Rename a function, Greg Chicares, 2022/04/29
- [lmi-commits] [lmi] master 51c6865b 04/11: Use non-long double for duff_fmt(), Greg Chicares, 2022/04/29
- [lmi-commits] [lmi] master e8d7f191 05/11: Use low-level functions for low-level work, Greg Chicares, 2022/04/29
- [lmi-commits] [lmi] master 2202d220 09/11: Reimplement ledger_format() in terms of duff_fmt(), Greg Chicares, 2022/04/29
- [lmi-commits] [lmi] master d46e3440 07/11: Modernize duff_fmt(), Greg Chicares, 2022/04/29
- [lmi-commits] [lmi] master d838ad1f 06/11: Make number of decimals a duff_fmt() argument, Greg Chicares, 2022/04/29
- [lmi-commits] [lmi] master e8d4b982 08/11: Measure ledger_format() speed,
Greg Chicares <=
- [lmi-commits] [lmi] master 92d90368 11/11: Designate release candidate 20220429T1437Z, Greg Chicares, 2022/04/29
- [lmi-commits] [lmi] master 542c0473 10/11: Augment unit test, Greg Chicares, 2022/04/29