When I simulate a circuit with a large S-parameters file (13x13x13251), I get the error message "Memory exhausted". I think the error come from source code filename PARSE_TOUCHSTONE.CPP, yyoverflow with YYMAXDEPTH 1000000
Another thing that I noticed, on similar machine, simulations runs about 7 to 8 times faster on Mac OsX (64b) than PC Win10 (64b).
Thanks
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
thanks, I can reproduce the issue; indeed increasing YYMAXDEPTH the file can be parsed. I'm not an expert on this, but from the doc it seems that this may depend on how the parsing rules were written.
I'm surprised by the speed difference, I never compared across different OSs before. Did you compile Qucs yourself or used the precompiled packages?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I used the pre-compiled package for Windows and OsX to do the benchmark. I did not try to compile the source code.
Most of my experience with the Win QUCS pre-compiled version. In order to check for the overflow in parsing S-parameters matrix, I decided to install QUCS executable on my Mac. Problem is the same on Win and OsX.
When running same simulations on Mac, I was myself surprized by the speed of execution difference. It is not only few percent, it is 700 to 800% faster!
My guess: maybe the code is not compiled with optimization turned ON for Windows target, the code is compile for 32b target Windows, ...?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I found the Win 64b binary incorporating the fix for parsing large S-parameters files. It did resolve the problem. I found the binary in: https://github.com/Qucs/qucs/pull/791
The 64b binary runs much faster than the official 0.0.19 32b binary. Here is a quick run time benchmark with a schematic with 13 ports and 13251 frequencies data point:
Win 32b is 160 sec
Win 64b is 38 sec
OSX 64b is 28 sec
The run time of the new 64b binary is now more inline with run time from ADS.
Thanks a lot
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
When I simulate a circuit with a large S-parameters file (13x13x13251), I get the error message "Memory exhausted". I think the error come from source code filename PARSE_TOUCHSTONE.CPP, yyoverflow with YYMAXDEPTH 1000000
Another thing that I noticed, on similar machine, simulations runs about 7 to 8 times faster on Mac OsX (64b) than PC Win10 (64b).
Thanks
thanks, I can reproduce the issue; indeed increasing YYMAXDEPTH the file can be parsed. I'm not an expert on this, but from the doc it seems that this may depend on how the parsing rules were written.
I'm surprised by the speed difference, I never compared across different OSs before. Did you compile Qucs yourself or used the precompiled packages?
I used the pre-compiled package for Windows and OsX to do the benchmark. I did not try to compile the source code.
Most of my experience with the Win QUCS pre-compiled version. In order to check for the overflow in parsing S-parameters matrix, I decided to install QUCS executable on my Mac. Problem is the same on Win and OsX.
When running same simulations on Mac, I was myself surprized by the speed of execution difference. It is not only few percent, it is 700 to 800% faster!
My guess: maybe the code is not compiled with optimization turned ON for Windows target, the code is compile for 32b target Windows, ...?
I found the Win 64b binary incorporating the fix for parsing large S-parameters files. It did resolve the problem. I found the binary in: https://github.com/Qucs/qucs/pull/791
The 64b binary runs much faster than the official 0.0.19 32b binary. Here is a quick run time benchmark with a schematic with 13 ports and 13251 frequencies data point:
Win 32b is 160 sec
Win 64b is 38 sec
OSX 64b is 28 sec
The run time of the new 64b binary is now more inline with run time from ADS.
Thanks a lot