[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lmi-commits] [lmi] master ccb70ce 04/14: Self test: measure speed for '
From: |
Greg Chicares |
Subject: |
[lmi-commits] [lmi] master ccb70ce 04/14: Self test: measure speed for 'finra' as well as 'ill_reg' |
Date: |
Sat, 29 Aug 2020 19:34:48 -0400 (EDT) |
branch: master
commit ccb70ce5ad6378c0c06940dbe3175a704d8b3b5b
Author: Gregory W. Chicares <gchicares@sbcglobal.net>
Commit: Gregory W. Chicares <gchicares@sbcglobal.net>
Self test: measure speed for 'finra' as well as 'ill_reg'
Timings for a 2.4GHz xeon E5-2630 v3 box:
wine ./lmi_cli_shared.exe --accept --data_path=/opt/lmi/data --selftest
Test speed:
naic, no solve : 5.204e-02 s mean; 51406 us least of 20 runs
naic, specamt solve : 9.293e-02 s mean; 92010 us least of 11 runs
naic, ee prem solve : 8.539e-02 s mean; 84856 us least of 12 runs
finra, no solve : 2.106e-02 s mean; 20707 us least of 48 runs
finra, specamt solve: 5.877e-02 s mean; 58168 us least of 18 runs
finra, ee prem solve: 5.467e-02 s mean; 54098 us least of 19 runs
That's how costly the naic-only "guaranteed premium" calculation is.
---
main_cli.cpp | 21 +++++++++++++++++----
1 file changed, 17 insertions(+), 4 deletions(-)
diff --git a/main_cli.cpp b/main_cli.cpp
index 534bdbb..67639ea 100644
--- a/main_cli.cpp
+++ b/main_cli.cpp
@@ -139,17 +139,30 @@ void self_test()
;
}
+ Input finra_no_solve {naic_no_solve};
+ Input finra_solve_specamt {naic_solve_specamt};
+ Input finra_solve_ee_prem {naic_solve_ee_prem};
+ finra_no_solve ["ProductName"] = "sample2finra";
+ finra_solve_specamt["ProductName"] = "sample2finra";
+ finra_solve_ee_prem["ProductName"] = "sample2finra";
+
#if defined _GLIBCXX_DEBUG
std::cout << "Timing test skipped: takes too long in debug mode" <<
std::endl;
#else // !defined _GLIBCXX_DEBUG
std::cout
- << "Test speed: "
- << "\n naic, no solve : "
+ << "Test speed:"
+ << "\n naic, no solve : "
<< TimeAnAliquot(std::bind(z, "CLI_selftest", naic_no_solve))
- << "\n naic, specamt solve: "
+ << "\n naic, specamt solve : "
<< TimeAnAliquot(std::bind(z, "CLI_selftest", naic_solve_specamt))
- << "\n naic, ee prem solve: "
+ << "\n naic, ee prem solve : "
<< TimeAnAliquot(std::bind(z, "CLI_selftest", naic_solve_ee_prem))
+ << "\n finra, no solve : "
+ << TimeAnAliquot(std::bind(z, "CLI_selftest", finra_no_solve))
+ << "\n finra, specamt solve: "
+ << TimeAnAliquot(std::bind(z, "CLI_selftest", finra_solve_specamt))
+ << "\n finra, ee prem solve: "
+ << TimeAnAliquot(std::bind(z, "CLI_selftest", finra_solve_ee_prem))
<< std::endl
;
#endif // !defined _GLIBCXX_DEBUG
- [lmi-commits] [lmi] master updated (c463357 -> 520bb97), Greg Chicares, 2020/08/29
- [lmi-commits] [lmi] master 4c54e90 02/14: Self test: explicitly specify product, Greg Chicares, 2020/08/29
- [lmi-commits] [lmi] master c2f6854 03/14: Self test: print more timings, Greg Chicares, 2020/08/29
- [lmi-commits] [lmi] master ccb70ce 04/14: Self test: measure speed for 'finra' as well as 'ill_reg',
Greg Chicares <=
- [lmi-commits] [lmi] master f6dfcf1 05/14: Filter out self-test timings, Greg Chicares, 2020/08/29
- [lmi-commits] [lmi] master 19be5c7 07/14: Don't initialize what's already been initialized, Greg Chicares, 2020/08/29
- [lmi-commits] [lmi] master 5dec884 01/14: Include appropriate headers, Greg Chicares, 2020/08/29
- [lmi-commits] [lmi] master fa15960 06/14: Don't touch a ledger object before calling its Init(), Greg Chicares, 2020/08/29
- [lmi-commits] [lmi] master 520bb97 14/14: Call ledger Init() less repeatedly [340], Greg Chicares, 2020/08/29
- [lmi-commits] [lmi] master 74927c6 13/14: Eradicate 'EePmt' and 'ErPmt', Greg Chicares, 2020/08/29
- [lmi-commits] [lmi] master c017212 08/14: Make 'daily_interest_accounting' harder to overlook, Greg Chicares, 2020/08/29
- [lmi-commits] [lmi] master 80f3ab4 09/14: Don't touch a ledger object before calling its Init() (bis), Greg Chicares, 2020/08/29
- [lmi-commits] [lmi] master 4a28bc2 10/14: Replace 'EePmt' (antediluvian), Greg Chicares, 2020/08/29
- [lmi-commits] [lmi] master 9ba754c 11/14: Replace 'EePmt' and 'ErPmt' (production), Greg Chicares, 2020/08/29