Commit Graph

25 Commits

Author SHA1 Message Date
couriersud
e26e327ef9 Rename misleading solver parameters. (nw) 2017-01-08 17:31:25 +01:00
couriersud
d790daa2a7 Remove parameter GS_THRESHOLD. It is now outdated. (nw) 2017-01-08 17:31:24 +01:00
couriersud
1d7b7f59dd Implemented dynamic loading of precompiled solver code. [Couriersud] 2016-04-23 13:54:32 +02:00
couriersud
2762b9f5ac Merge me later 2016-04-18 18:31:49 +02:00
couriersud
d9df811529 Significant speed improvement:
- added a new solver using compressed row format
- fixed sorting

As a result, netlist performance on kidniki nearly doubled. The
performance increase is mainly due to the fact that sorting decreases
the number of operations for gaussian elimination of the kidniki matrix
from ~7800 to 707. In addition, compressed row format improves L1 usage. 
[Couriersud]
2016-04-15 02:09:41 +02:00
couriersud
cd0441b678 Recover from creating solvers by copy paste. Move common code were it
belongs. (nw)
2016-04-15 02:09:41 +02:00
couriersud
4f1ca77643 Moved solver members to proper place. Minor code changes. (nw) 2016-04-15 02:09:26 +02:00
couriersud
b13e02f975 Align with standalone-build. 2016-04-09 12:44:41 +02:00
couriersud
bc936dbc26 Added m62(kidniki) to nl.lua. Started some experiments around parallel
solving of linear equations. This code is not active. Fix kidniki audio
performance. [Couriersud]
2016-04-08 03:30:11 +02:00
couriersud
8eec0786b5 Added woodbury solver to netlist. [Couriersud] 2016-03-29 01:59:51 +02:00
couriersud
628cef3d97 Added some notes about Sherman-Morrison. 2016-03-28 13:48:28 +02:00
couriersud
8c69d3ad15 Fix crash in stat output when no calculations were run 2016-03-28 13:48:27 +02:00
couriersud
93414a8bd7 Fix pivoting and float usage. 2016-03-28 13:03:50 +02:00
couriersud
9d2f61ee92 netlist:
- more code optimization
- hide matrix_solver_t implementation
- use netlist_time for time deltas
2016-03-27 15:41:42 +02:00
couriersud
1a36bfd0eb Fix kidniki sound speed. Make more class members private. 2016-03-26 16:17:39 +01:00
couriersud
489e2919db Netlist: code maintenance
- rename netlist_analog_t to analog_t 
- straighten object model
- reduce access to member variables
- use pvector<analog_net_t::list_t> for groups.
- simple coverity fixes.
2016-03-23 22:03:26 +01:00
couriersud
41c8a9f6fa netlist updates:
- First steps to move towards c++11.
- Base plist on std::vector
- Replace pstack with std::stack
- Remove pnamed_list
- use c++ "for each" in a number of places
- Fixed two "time bombs"
[couriersud]
2016-03-14 20:24:29 +01:00
Miodrag Milanovic
823b8cbc1c Add license to files that were not part of build or are containing data to build sources for cpu emulation (nw) 2016-03-05 10:29:28 +01:00
couriersud
c2a192ec92 Consolidate the scattered model parsing code. Now models support
recursive models,e.g. DIODE("1N914(IS=1e-15)"). Removed ".model" from
model definitions. (nw)
2015-07-23 22:39:39 +02:00
couriersud
b1a72a3e9f Netlist now compiles with
-std=c++98 -Wall -Wpedantic -Wextra -Wno-long-long -Wno-variadic-macros
and
-std=c++11 -Wall -Wpedantic -Wextra
[Couriersud]
2015-06-30 09:04:19 +02:00
couriersud
a68161ee27 Move solver code into own folder. (nw) 2015-06-19 18:33:14 +02:00
couriersud
dad7a6bab5 From 45% to 60% to 99%. That's the improvement achieved for a 89x89
audio matrix mostly solved by elimination. 
Cleaned up some code as well. [Couriersud]
2015-06-10 21:50:10 +02:00
couriersud
8ba33d8d1e Formatted kidniki.c (nl_examples) to be easier to read. (nw) 2015-06-09 00:34:57 +02:00
couriersud
3cf2f2444f Added some more discrete components. (nw) 2015-06-08 01:41:34 +02:00
couriersud
3db351f5c9 Added kidniki sound board netlist to nl_examples. Currently the netlist
boils down to a 87x87 matrix. This is due to a total of 6 opamps which
all are submodels and thus add their own internal nets. 
Gauss Seidel iterative solving comes to it's limits.
nltool runs this at about 50% speed on my machine. Given the complexity
this is quite good. Yet, any m62 game currently will not be playable.
Time for a new cpu :-)
[Andrew Gardner, Couriersud]
2015-06-07 02:16:55 +02:00