• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC SKILL
  3. Multiple calls of schNetExprEvalNames( ) with the same arguments...

Stats

  • Locked Locked
  • Replies 1
  • Subscribers 143
  • Views 13497
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Multiple calls of schNetExprEvalNames( ) with the same arguments generates crash of virtuoso

marcelpreda
marcelpreda over 8 years ago

Hi *,

In an SKILL code we had a crash of virtuoso. I was able to isolate the problem and to reproduce it on IC616 ( IC6.1.6-64b.500.13.2) and IC617 (IC6.1.7-64b.500.8.EHF2985) .

So, if I call schNetExprEvalNames( ) with the same arguments enough times I get a crash of virtuoso.

For now the solution will be to cache some results, but I would like to understand what is the reason and if there is other way to fix it.

Here is the code and at the end the crash messages.

I've also added a gcsummary() output before going into the loop, and gcsummary() just before crashing.

I've monitored the memory allocated for the respective process, and before the crash it is ~1.32GB , so it doesn't look like a memory issue.

on sub-version  IC6.1.6-64b.500.13.2 always after 2106 calls I get the crash 

/* -----  code --- */

myLibName = "wk_predamar"
myCellName = "tb_ESD"
myViewName = "schematic"
mySwitchViewList = "veriloga ahdl spectre spectre_bjt spectre_simple spectre_2pi netlist schematic av_analog_extracted av_extracted symbol"
myStopViewList = "veriloga ahdl spectre spectre_bjt spectre_simple spectre_2pi"

myDs = list(nil
'libName myLibName
'cellName myCellName
'viewName myViewName
'switchViewList mySwitchViewList
'stopViewList myStopViewList)

myInstName = "/CNV_CP/CNV_CP_SUP/I1"

myI = 0

gcsummary()
while( myI < 3000
    myI++
    if( myI> 2100 then
        gcsummary()
    )
    myNetEvalList = schNetExprEvalNames( myDs list(myInstName) ?listCellView t)
    printf("myI=%d myNetEvalList length=%d \n" myI length(car(myNetEvalList)))
)

/**--- END code ---*/

// First gcsummary() call

\o GC Policy: 4 (Floating Border)
\o Maximum Process Size (i.e., voMemoryUsed) = 334819328
\o Total Number of Bytes Allocated by IL = 177092899
\o Total Number of Static Bytes = 17960960
\o Total Pause Time = 0.154 sec
\o Longest Pause Time = 0.084 sec
\o Average Pause Time = 0.019 sec
\o -----------------------------------------------------------
\o Type Size Allocated Free Static GC count
\o -----------------------------------------------------------
\o binary 32 0 0 139264 0
\o funobj 40 9572352 1521400 487424 1
\o list 24 60391424 151752 7012352 4
\o fixnum 16 0 0 0 0
\o fixnumLF 16 0 0 0 0
\o symbol 56 0 0 7929856 0
\o stdobj 24 208896 205392 0 0
\o envobj 24 19382272 4434576 0 1
\o flonum 16 520192 366944 241664 0
\o string 16 3080192 185440 1245184 1
\o port 104 65536 9776 0 0
\o array 24 299008 178104 110592 0
\o other 16 0 0 0 0
\o ptrnum 16 16384 16160 0 0
\o TOTALS -- 93536256 7069544 17166336 7
\o -----------------------------------------------------------
\o User Type (ID) Allocated Free GC count
\o -----------------------------------------------------------
\o assocTable (20) 1298432 566528 0
\o topContextSkillForm (21) 0 0 0
\o nameSpace (22) 0 0 0
\o emsHandleIlUserType (23) 262144 260016 0
\o emsCatalogIdIlUserType (24) 262144 260016 0
\o emsMsgTypeIlUserType (25) 0 0 0
\o nmpIlUserType (26) 0 0 0
\o wtype (27) 262144 260064 0
\o HilToolbarList (28) 262144 260080 0
\o hiField (29) 262144 252480 0
\o hiToggleItem (30) 262144 258280 0
\o hiMenu (31) 262144 253656 0
\o hiMenuItem (32) 262144 233728 0
\o hiListBox (33) 0 0 0
\o hiTreeItem (34) 0 0 0
\o hiTree (35) 0 0 0
\o hiToolBar (36) 0 0 0
\o hiToolBarItem (37) 262144 258480 0
\o dfStep (38) 0 0 0
\o dfStepInst (39) 0 0 0
\o dfFlowchart (40) 0 0 0
\o dfFlowchartInst (41) 0 0 0
\o dbobject (42) 262144 241944 1
\o ddUserType (43) 262144 227328 0
\o dbBagType (44) 0 0 0
\o tc (45) 0 0 0
\o cdfDataUT (46) 262144 256920 0
\o cdfParamUT (47) 262144 241536 0
\o rodObj (48) 0 0 0
\o pcdbobject (49) 0 0 0
\o rodCoord (50) 0 0 0
\o geEnvironment (51) 0 0 0
\o geProbe (52) 0 0 0
\o geProbeCxt (53) 0 0 0
\o geHilightDataUT (54) 0 0 0
\o viaEngineDataUT (55) 0 0 0
\o layer (56) 0 0 0
\o ddCatUserType (57) 0 0 0
\o gdmSpecIlUserType (58) 0 0 0
\o gdmSpecListIlUserType (59) 0 0 0
\o hdbobject (60) 0 0 0
\o lbssSStruct (61) 0 0 0
\o lbssWStruct (62) 0 0 0
\o HiQReplayFieldUT (63) 0 0 0
\o ciUserType (64) 0 0 0
\o cpfUserType (65) 0 0 0
\o teEnvUserType (66) 0 0 0
\o psInfoId (67) 0 0 0
\o raeCellView (68) 0 0 0
\o seeContext (69) 0 0 0
\o seeCategory (70) 0 0 0
\o seeResult (71) 0 0 0
\o opfcontext (72) 0 0 0
\o opffile (73) 0 0 0
\o aelEnv (74) 0 0 0
\o aelLineage (75) 0 0 0
\o adtComplex (76) 0 0 0
\o adtDoubleInt (77) 0 0 0
\o adtDpl (78) 0 0 0
\o adtAnyPtr (79) 0 0 0
\o adtString (80) 0 0 0
\o srrifVec (81) 0 0 0
\o srrifWave (82) 0 0 0
\o srrifCxt (83) 0 0 0
\o srrifToken (84) 0 0 0
\o srrCxtUT (85) 0 0 0
\o dalResDataUT (86) 0 0 0
\o dalDataSetUT (87) 0 0 0
\o pslSemanticIL (88) 0 0 0
\o drDataFile (89) 0 0 0
\o drFixedLeafNode (90) 0 0 0
\o drAllData (91) 0 0 0
\o drFixedIntrNode (92) 0 0 0
\o drAnalInst (93) 0 0 0
\o drRunObjFile (94) 0 0 0
\o drRunObj (95) 0 0 0
\o drFixedSwpNode (96) 0 0 0
\o drAnalInstNode (97) 0 0 0
\o drDataIntrNode (98) 0 0 0
\o drDataLeafNode (99) 0 0 0
\o drInstIntrNode (100) 0 0 0
\o drInstLeafNode (101) 0 0 0
\o drAmapReader (102) 0 0 0
\o msp (103) 0 0 0
\o cph (104) 0 0 0
\o lam (105) 0 0 0
\o parLasDesign (106) 0 0 0
\o amsobject (107) 262144 260032 0
\o epHierBnd (108) 0 0 0
\o mapiobject (109) 0 0 0
\o mpsHandle (110) 262144 257344 0
\o cdsEvalObject (111) 0 0 0
\o ipcUT (112) 262144 258960 0
\o TOTALS -- 5492736 4607392 1
\o -----------------------------------------------------------
\o Bytes allocated for :
\o arrays = 768768
\o arrays(stat) = 103024
\o strings = 3608564
\o strings(perm)= 1713247
\o vcode = 8755240
\o vcode(stat) = 25930000
\o std slots = 720
\o env slots = 17153912
\o IL stacks = 524256 + 2097152 + 128000
\o (Internal) = 28672
\o TOTAL GC COUNT 8
\o ----- Summary of Symbol Table Statistics -----
\o Total Number of Symbols = 140237
\o Hash Buckets Occupied = 85919 out of 131072
\o Average chain length = 1.632200
\o Longest chain length = 8
\o No of sym lookups = 701076

// Last gcsummary() call, 

\o myI=2107 myNetEvalList length=24
\o
\o ************* SUMMARY OF MEMORY ALLOCATION *************
\o GC Policy: 4 (Floating Border)
\o Maximum Process Size (i.e., voMemoryUsed) = 545980416
\o Total Number of Bytes Allocated by IL = 192480793
\o Total Number of Static Bytes = 18075648
\o Total Pause Time = 0.493 sec
\o Longest Pause Time = 0.088 sec
\o Average Pause Time = 0.041 sec
\o -----------------------------------------------------------
\o Type Size Allocated Free Static GC count
\o -----------------------------------------------------------
\o binary 32 0 0 139264 0
\o funobj 40 9572352 8186040 475136 1
\o list 24 89849856 8406096 7049216 8
\o fixnum 16 0 0 0 0
\o fixnumLF 16 0 0 0 0
\o symbol 56 0 0 7991296 0
\o stdobj 24 208896 205392 0 0
\o envobj 24 19382272 18280776 0 1
\o flonum 16 520192 353712 249856 0
\o string 16 4268032 600896 1265664 1
\o port 104 131072 128856 0 0
\o array 24 299008 184608 110592 0
\o other 16 0 0 0 0
\o ptrnum 16 16384 16160 0 0
\o TOTALS -- 124248064 36362536 17281024 11
\o -----------------------------------------------------------
\o User Type (ID) Allocated Free GC count
\o -----------------------------------------------------------
\o assocTable (20) 1298432 571136 0
\o topContextSkillForm (21) 0 0 0
\o nameSpace (22) 0 0 0
\o emsHandleIlUserType (23) 262144 260016 0
\o emsCatalogIdIlUserType (24) 262144 260016 0
\o emsMsgTypeIlUserType (25) 0 0 0
\o nmpIlUserType (26) 0 0 0
\o wtype (27) 262144 260064 0
\o HilToolbarList (28) 262144 260080 0
\o hiField (29) 262144 252480 0
\o hiToggleItem (30) 262144 258280 0
\o hiMenu (31) 262144 254736 0
\o hiMenuItem (32) 262144 241664 0
\o hiListBox (33) 0 0 0
\o hiTreeItem (34) 0 0 0
\o hiTree (35) 0 0 0
\o hiToolBar (36) 0 0 0
\o hiToolBarItem (37) 262144 258480 0
\o dfStep (38) 0 0 0
\o dfStepInst (39) 0 0 0
\o dfFlowchart (40) 0 0 0
\o dfFlowchartInst (41) 0 0 0
\o dbobject (42) 262144 221736 1
\o ddUserType (43) 262144 252640 0
\o dbBagType (44) 0 0 0
\o tc (45) 0 0 0
\o cdfDataUT (46) 262144 241400 0
\o cdfParamUT (47) 262144 188592 0
\o rodObj (48) 0 0 0
\o pcdbobject (49) 0 0 0
\o rodCoord (50) 0 0 0
\o geEnvironment (51) 0 0 0
\o geProbe (52) 0 0 0
\o geProbeCxt (53) 0 0 0
\o geHilightDataUT (54) 0 0 0
\o viaEngineDataUT (55) 0 0 0
\o layer (56) 0 0 0
\o ddCatUserType (57) 0 0 0
\o gdmSpecIlUserType (58) 0 0 0
\o gdmSpecListIlUserType (59) 0 0 0
\o hdbobject (60) 0 0 0
\o lbssSStruct (61) 0 0 0
\o lbssWStruct (62) 0 0 0
\o HiQReplayFieldUT (63) 0 0 0
\o ciUserType (64) 0 0 0
\o cpfUserType (65) 0 0 0
\o teEnvUserType (66) 0 0 0
\o psInfoId (67) 0 0 0
\o raeCellView (68) 0 0 0
\o seeContext (69) 0 0 0
\o seeCategory (70) 0 0 0
\o seeResult (71) 0 0 0
\o opfcontext (72) 0 0 0
\o opffile (73) 0 0 0
\o aelEnv (74) 0 0 0
\o aelLineage (75) 0 0 0
\o adtComplex (76) 0 0 0
\o adtDoubleInt (77) 0 0 0
\o adtDpl (78) 0 0 0
\o adtAnyPtr (79) 0 0 0
\o adtString (80) 0 0 0
\o srrifVec (81) 0 0 0
\o srrifWave (82) 0 0 0
\o srrifCxt (83) 0 0 0
\o srrifToken (84) 0 0 0
\o srrCxtUT (85) 0 0 0
\o dalResDataUT (86) 0 0 0
\o dalDataSetUT (87) 0 0 0
\o pslSemanticIL (88) 0 0 0
\o drDataFile (89) 0 0 0
\o drFixedLeafNode (90) 0 0 0
\o drAllData (91) 0 0 0
\o drFixedIntrNode (92) 0 0 0
\o drAnalInst (93) 0 0 0
\o drRunObjFile (94) 0 0 0
\o drRunObj (95) 0 0 0
\o drFixedSwpNode (96) 0 0 0
\o drAnalInstNode (97) 0 0 0
\o drDataIntrNode (98) 0 0 0
\o drDataLeafNode (99) 0 0 0
\o drInstIntrNode (100) 0 0 0
\o drInstLeafNode (101) 0 0 0
\o drAmapReader (102) 0 0 0
\o msp (103) 0 0 0
\o cph (104) 0 0 0
\o lam (105) 0 0 0
\o parLasDesign (106) 0 0 0
\o amsobject (107) 262144 260032 0
\o epHierBnd (108) 0 0 0
\o mapiobject (109) 0 0 0
\o mpsHandle (110) 262144 257344 0
\o cdsEvalObject (111) 0 0 0
\o ipcUT (112) 262144 259168 0
\o TOTALS -- 5492736 4557864 1
\o -----------------------------------------------------------
\o Bytes allocated for :
\o arrays = 652200
\o arrays(stat) = 103024
\o strings = 4145005
\o strings(perm)= 1726948
\o vcode = 8617632
\o vcode(stat) = 26107888
\o std slots = 720
\o env slots = 1241456
\o IL stacks = 524256 + 2097152 + 128000
\o (Internal) = 28672
\o TOTAL GC COUNT 12
\o ----- Summary of Symbol Table Statistics -----
\o Total Number of Symbols = 141349
\o Hash Buckets Occupied = 86312 out of 131072
\o Average chain length = 1.637652
\o Longest chain length = 8
\o No of sym lookups = 2212304
\o INFO (DB-170018): (dbPanic) dumping stack
\o libvirtuos_sh.so:voStackTrace+85()
\o virtuoso:dbPanic+61()
\o libvirtuos_sh.so:voDoAbortFuncs+36()
\o libvirtuos_sh.so:voSigAbortInfo+157()
\o libpthread.so.0:__restore_rt+0()
\o 0x25bc5e80
\o Local time (crash) Monday 02 October 2017, 12:11:05 PM
\o X server: Hummingbird - Open Text
\o virtuoso has encountered a fatal internal application error and will now exit.

  • Cancel
  • skillUser
    skillUser over 8 years ago

    Hi Marcel,

    I'm not quite sure why you sent this to the user forum, it is unlikely that anyone can help you with this issue through this channel. You should file a ticket with Cadence Customer Support and provide them with the details (and maybe a test case?) so that they can work with you and Cadence R&D to address the problem.

    Best regards,

    Lawrence.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information