@Fra I guess you meant CKTload(), not SMPload(), for device model evaluation.
Hi, Francesco, I did a quick test of your patch on 27 sept, and it seems it works for the test case I contrived. I tested with branch CUSPICE+6-untested-b+ of latest ngspice from sf.net, with the following configure options: ../configure --with-x --with-readline=yes --enable-cuspice --enable-xgraph Attached contains: the test circuit log without patch: cuda kernel failure reports can be seen log with patch: no cuda kernel failure report anymore Since the circuit is not meaningful, the op analysis...
Yesterday I asked a qeustion on scicomp.stackexchange.com regarding an idea to speed up Newton iteration in solving non-linear system of equations in general, since I am not sure if this is a viable idea and if it's studied/implemented already: Parallelizing Newton-method in solving non-linear systems. The answer from Thales indicates that the idea has some connection with more general optimization methods widely studied/used in AI field. This gives me more incentive to try to test the idea based...
Thank you, Francesco!
It seems that the array size of rhs[] is one more than the matrix size, as shown in NIreinit(); And CKTcircuit.CKTrhs[0] is usually set to 0.0 after calling SMPsolve(); Looking into SMPsolve(), it seems that spSolve() does not touch RHS[0]. What's the purpose of this extra element, and why it's set to 0.0 after SMPsolve()? Many thanks!
Thank you, Francesco!
Hi, Francesco, Thanks for your reply. I am new to circuit analysis, so my questions may seem too dumb... What you mean by "the voltage and current sources are NOT supported in all the variations which are supported in the single core environment"? Looking at the "splicelib/devices/" tree, I found that the following devices have a CUSPICE subdirectory, so I was assuming that these devices are supported in CUSPICE, namely: res, cap, ind, vsrc, isrc, and bsim4v7 mosfet. In my test circuit above, I have...
Hi, Reading cuBSIM4v7load(), it seems that it creates two Cuda streams trying to utilize GPU capability. however, in the loop through all models, the stream index is increase by i++, but not follwed by i%=2... I made a simple test that creating 3 nmos models and use all 3 models in a simple circuit: .title simple MOSFET circuit .include "model1.pm" ; BSIM4v7 model `nmos1` .include "model2.pm" ; BSIM4v7 model `nmos2` .include "model3.pm" ; BSIM4v7 model `nmos3` v_input vin gnd 0.0 pulse(0 1 10m 10m...