Search the Community
Showing results for tags 'increase stack size'.
-
Dear all, I need to simulate a (very) large RC network modeling a circuit equivalent model to simulate thermal distribution, ~12,000 Rs, ~4,000 Cs, ~4,000 nodes). When I run the simulation, I get a segmentation fault. GDB says that the call is caused by a call to: sca_core::sca_implementation::sca_conservative_view::move_connected_module( and, if I look at the call stack, I see that many invocations of these function are recursively done, until the simulation crashes. I had a look at the code with Valgrind, and got that the seg fault is caused by a stack overflow: I tried to increase stack size, by recompiling both SystemC (2.3.1) and SystemC AMS (2.1), as suggested in the INSTALL: However, I still get the same error and the same output from Valgrind. Is there any other way to increase stack size, or to improve the code so that I can run the simulation? Or am I simply being too ambitious? :) For the sake of clarity, here is a (very brief) extract of the RC network I have to simulate, just to show how network elements are being declared: SC_MODULE(network) { //Interface declaration: sca_tdf::sca_in<double> p_die_grid_1_1; sca_tdf::sca_out<double> t_die_grid_1_1; ... // isource to use values on input ports as currents sca_eln::sca_tdf::sca_isource* itemp_1_1_grid; ... // vsink to write voltage values on output ports sca_eln::sca_tdf::sca_vsink* vtemp_1_1_grid; ... // network elements sca_eln::sca_r* r_amb_grid_1_1; sca_eln::sca_c* c_1_1_SILICON; sca_eln::sca_node node_1_1_SILICON; ... sca_eln::sca_node_ref gnd; SC_CTOR(network){...}; ~network(){...} } Regards, S.
- 7 replies
-
- stack overflow
- move_connected_module
- (and 2 more)