• 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. time delay in simple program

Stats

  • Locked Locked
  • Replies 12
  • Subscribers 144
  • Views 17982
  • 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

time delay in simple program

bloodwayn
bloodwayn over 14 years ago

Hi,

i have a little time problem. i've wrote a program which creates in an area a specific numbers of rectangles ... so it begins in the left buttom corner, creates rectangles on the buttom to the right until the end of the area(with a while loop). after this, with an other while loop i jump up one line. in this line the first while loop makes his work again. and so on until the area is full of rectangles.
so this works in principle. but when the procedure jump in the second line it starts to become extremly slowley. and it doesn't matter how many rectangles are created.

so i can't understand why it becomes so slowely when the program starts the same procedure for a second time.

regards
Philip

p.s.: this is only a short extract out of my program. so in the same time where a rectangle will be created, it creates a new cellview which will be opened an closed again.

  • Cancel
  • Austin CAD Guy
    Austin CAD Guy over 14 years ago

     I suspect that you may be creating enough data in memory that the garbage collection is triggered. This refers to the SKILL data and not to the database data. The garbage collector is triggered to clean up unused variables which you have created.

    Turn on the profiler and run your program and you will see what parts are taking the most time. gc is the garbage collector. If you are building large lists of information using cons or append, you may want to use a command like tconc which modifies the list in place.

    Ted

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • bloodwayn
    bloodwayn over 14 years ago

    Hey Ted

    thanks for your reply. and exactly i've also thought about, if i have understood you correctly. ;)
    but how can i turn on the profiler ^^

    and is there an other possebility to increase the memory or to decrease the data?

    regards
    philip

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Austin CAD Guy
    Austin CAD Guy over 14 years ago

     The profiler is part of the SKILL development environment. It is found under the Tools menu in the CIW. There is some good documentation on it in the help files.

     Without seeing the code, I cannot tell you how to modify it. You may be able to do things in the database (use arrayed instances) or in the code itself (mapcar). That will be determined by exactly what you need the program to do.

     

    Ted

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • bloodwayn
    bloodwayn over 14 years ago

    thanks ... i've found it.

    here is the list which was created by the SKILL-Profiler. So i can see  how many memory are necassary for each function. but what conclusion can i draw out of it. Can you say me anything more?

    Regards
    philip

    Function Name                        Total   Inside
    -------------                        -----   ------
    TOTAL (Memory Allocated)           7063928  7063928 bytes
    toplevel                           7063928     2088
    Bitterlemon                        6826504        0
    compare                            3482420        0
    kkLeGenFillStruct                  3480212        0
    leSetLayerValid                    3015620   524196
    cpSelFigures                       1670388        0
    deNewCellView                      1584600        0
    _deNew                             1581360      720
    deNew                              1581360        0
    deOpenCellView                     1423140        0
    _deOpen                            1418916     1488
    deOpen                             1418916        0
    leiUpdateLayerField                1383992        0
    leiCreateTechConnectLists          1107432        0
    drFindPacket                       1067120  1067120
    leGetValidLayerList                1034640  1034640
    hiMakeLPChoiceList                  866000   866000
    hiDisplayWindow                     788144   788144
    _deOpenLevel                        773956      744
    _deCallDataTrigger                  686484        0
    geDataTrigger                       685740        0
    geCheckTFPackets                    684784        0
    _dePostOpenProcess                  609848        0
    list                                579516   579516
    getSGq                              566656   566656
    tconc                               424008   424008
    kkLeGenFillPattern                  224420        0
    _deCompleteNewFileSpec              195356      720
    _deCreateNewFields                  188172      720
    _deCreateNewForm                    188172        0
    _deCallPostInstallTrigger           150212        0
    _lePostInstallTrigger               149096        0
    parser                              121488     9412
    ddsTriggerCB                        110632        0
    ddsLogCommand                       108184      348
    ddUpdateLibList                     106792     2088
    cons                                106752   106752
    calcFILLDEGREE                       85340        0
    kkLeGenFillArea                      79696        0
    techGetLPPacketName                  78776    78776
    _deUpdateLibChoices                  63388    36888
    techGetSpacingRule                   62928    62928
    hiGetBannerMenus                     52752    52752
    plus                                 51296    51296
    kkLeUnderOverSizeFig                 50640        0
    ddGetLibList                         45756    45756
    _deSetWindowName                     45300        0
    hiiInsertBannerMenu                  41664    41664
    geiUpdateLibListTrigger              41316        0
    kkLeCopyAllFigToCellView             41296        0
    dbGetOpenCellViews                   37008    37008
    hiCloseWindow                        36104     1440
    _deCallUserPostInstallTrigger        34968        0
    errset                               34596      372
    _dePullTrigger                       34596        0
    TLinstallLayoutTrigger               34224     8928
    _deApplyTrigger                      34224        0
    apply                                34224        0
    mapcar                               31176    20784
    geCreateContext                      27776    27776
    POINT_IN_RECTANGLE                   27648        0
    _deMakeBannerMenus                   27276        0
    ddMapGetToolNameList                 26544    26544
    _deListViewTypes                     25668        0
    deGetAllViewTypes                    25668        0
    leEIPZoomAbsoluteScale               24976        0
    _deCallAppTrigger                    24616        0
    leAppTrigger                         23872        0
    _deCallMenuTrigger                   22812        0
    leMenuTrigger                        22068      232
    geSelectFigNoFilter                  21792    21792
    hiInsertBannerMenu                   20832        0
    kkLeSelectListFig                    20784        0
    geAppTrigger                         19904        0
    float                                19776    19776
    leLayerAnd                           19200    19200
    difference                           19136    19136
    leLayerSize                          18576    18576
    _deMakeStackTopArgs                  17800        0
    _deMakeStackArgs                     17440        0
    times                                17248    17248
    load                                 17064      532
    leUpdateLayoutMenus                  15056        0
    _deCompleteOpenFileSpec              14888      792
    append1                              14880    14880
    quotient                             14496    14496
    _deCreateOpenForm                    12968       88
    deGetRootType                        12808    12808
    leUpdateMenus                        12300       56
    range                                12144    12144
    hiScaleBox                           11520        0
    _leSetTurboMenuItems                 11088        0
    kkLeDeleteListFig                    10392        0
    dbProduceOverlap                     10200    10200
    _deCreateOpenFields                  10000     1576
    leLayerAndNot                         9960     9960
    makeTable                             9424     9424
    ipcBeginProcess                       9360     9360
    leGetEntryLayer                       9132     9132
    dbCreateRect                          8520     8520
    geSave                                8500        0
    leSearchHierarchy                     8280     8280
    copy                                  8184     8184
    parseString                           8080     8080
    geSetWindowStatus                     7688     2976
    geDeleteContext                       7092     7092
    dbSave                                6960     6612
    dbOpenCellViewByType                  6852     5060
    leSetLayerSelectable                  6696     6696
    leSetLayerVisible                     6696     6696
    ddMapGetToolNameViewType              6616     6616
    geGetEditCellView                     6604     6604
    geUpdateWindowMenus                   5940       12
    deGetCellView                         5832     5832
    _sprintf                              5616     5616
    convTEXTtoALL                         5400     1440
    get_pname                             5248     5248
    ddGetObj                              5096     3864
    _leGetQrcMenu                         4952        0
    geEditToWindowPoint                   4800     4800
    _dePushStack                          4464     4464
    _leiIsLeCapEnabled                    4464     4464
    _leiIsLeEditCapEnabled                4464     4464
    geEciContextTrigger                   4464     3348
    geGetWindowCellView                   4428     4428
    leWindowBBoxProc                      4200        0
    hiReplaceAllBannerMenus               4092        0
    deGetMaxEditLevel                     4020     4020
    linereadstring                        3960        0
    deGetViewType                         3844     3844
    _dePushExtStack                       3720     3720
    _leIsLevelEnabled                     3720     3720
    hiBoxCenter                           3600        0
    _leSetWindowName                      3468        0
    deGetEditLevel                        3264     3264
    _leDrdCheckConn                       2976     2976
    _deSetExtDETopLevel                   2928     2928
    _deSetWindowBusy                      2880     2880
    _deInitializeWindow                   2852      744
    _deLibNameCB                          2796      208
    symbolToString                        2624        0
    leGetTechFormList                     2508     2508
    leiGetTechLayerField                  2508     2508
    deGetConfigId                         2232     2232
    geInstallContext                      2232     2232
    leIsLeEditCapEnabled                  2232        0
    _deIsWindowBusy                       2208     2208
    leiRegWindowTriggers                  2208     2208
    _deCallEnableTrigger                  2204        0
    _deGetConfigIdAtWindowLevel           2184     2184
    deGetEIP                              2184     2184
    deGetPushed                           2184     2184
    techGetLP                             2004     2004
    geiUpdateMenu                         1872        0
    ddsCreateTrigger                      1792        0
    strcat                                1760     1760
    geDeselectAllFig                      1656     1656
    deSetContext                          1488     1488
    hiiAddFixedMenu                       1488     1488
    putprop                               1488     1488
    leEnableTrigger                       1460        0
    _deGetDefaultViewType                 1444        0
    _deIsWindowLevelConfigSubTop          1440     1440
    _deSetExtMaxInContextLevel            1440     1440
    _ddsTriggerEnter                      1404        0
    hiGetWindowList                       1284     1284
    hiiCreateWindow                       1240     1240
    _deGetDefaultAppFromEnv               1196        0
    _deCallProbeTrigger                   1116        0
    _deClearStack                         1116        0
    _deUnwind                             1116        0
    geEcRegCloseProc                      1116        0
    hiRegCloseProc                        1116        0
    leIsLeCapEnabled                      1116        0
    sqrt                                  1104     1104
    geAddSelectBox                        1080     1080
    leYankFigs                            1080     1080
    geSelectArea                          1080        0
    substring                             1064     1064
    geGetSelSetCount                      1056     1056
    leGetContactNameArray                 1056     1056
    info                                  1044     1044
    hiFormCancel                          1044      696
    _leVioPostSaveTrigger                  972      972
    min                                    960      960
    hiEnableMenuItem                       864        0
    _deCheckLibCell                        776        0
    _deInitWindowInfo                      744      744
    _deSetMaxInContextLevel                744      744
    deGetMaxInContextLevel                 744      744
    envGetVal                              744      744
    leCreateStatusBanner                   744      744
    leInitLayerWindow                      744      744
    leiCreateConnections                   744      744
    leiRegAbutmentCV                       744      744
    _deSetExtPrependStack                  744        0
    _deTranslateAppName                    744        0
    _deValidateAppNameOrTitle              744        0
    deIsEditInContext                      744        0
    hiAddFixedMenu                         744        0
    dbGetCellViewDdId                      728      728
    _deGetExtMaxLevel                      720      720
    _dePopExtStack                         720      720
    _dePopStack                            720      720
    deGetContext                           720      720
    deGetVector                            720      720
    geCancelCellViewEditors                720      720
    geiDeleting                            720      720
    lePasteFigs                            720      720
    leiDestroyConnections                  720      720
    _dePrePop                              720        0
    _aaBeforeProc                          676        0
    hiCreateWindow                         620        0
    hiGetWindowState                       600      600
    hiGetWidgetType                        576      576
    append                                 540      540
    hiGetAppType                           528      528
    ddMapGetViewTypeFileName               504      504
    drGetDisplay                           496      496
    _loCoreOptionsCB                       496        0
    _loOptionsCB                           496        0
    ipcReadProcess                         488      280
    makeVector                             480      480
    artMakeString                          472        0
    _deOpenCellNameCB                      436      256
    ddGetObjReadPath                       408      408
    leGetEditLayout                        376        0
    _deCallUserAppTrigger                  372        0
    _deGetAppSubType                       372        0
    geiValidateWindow                      360        0
    dbCreateLabel                          348      348
    deDBox                                 272       36
    ddGetUpdatedLib                        256      256
    getWorkingDir                          256      256
    simplifyFilename                       256      256
    _deMakeDMSpec                          248        0
    _deSetViewNames                        240      112
    lmFeatList                             224      224
    TLcheckLicensesAgain                   208        0
    aaiCallListToString                    208        0
    outfile                                180      180
    hiDisableMenuItem                      180        0
    getWarn                                176      176
    geiAskOverwriteMode                    176        0
    hiDisplayAppDBox                       172       72
    dbGetDatabaseType                      160      160
    TLcheckLicenses                        144        0
    _deCompareLibs                         104        0
    sort                                   104        0
    _hiDisplayForm                          96       96
    geGetCellViewWindow                     96       96
    geiGetEditCellViewWindow                96       96
    hiDisplayForm                           96        0
    hiiDialogBox                            80       80
    evalalias                               72       72
    geEcCloseProc                           72        0
    ddMapGetFileViewType                    56       56
    ddsUpdateLibListTrigger                 40        0
    hiGetWindowName                         32       32
    eval                                    28       12
    dbCopyFig                               24       24
    _geIsCVNew                               8        0
    ilProfUpdateStatus                       8        0
     

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • bloodwayn
    bloodwayn over 14 years ago

    thanks ... i've found it.

    here is the list which was created by the SKILL-Profiler. So i can see  how many memory are necassary for each function. but what conclusion can i draw out of it. Can you say me anything more?

    Regards
    philip

    Function Name                        Total   Inside
    -------------                        -----   ------
    TOTAL (Memory Allocated)           7063928  7063928 bytes
    toplevel                           7063928     2088
    Bitterlemon                        6826504        0
    compare                            3482420        0
    kkLeGenFillStruct                  3480212        0
    leSetLayerValid                    3015620   524196
    cpSelFigures                       1670388        0
    deNewCellView                      1584600        0
    _deNew                             1581360      720
    deNew                              1581360        0
    deOpenCellView                     1423140        0
    _deOpen                            1418916     1488
    deOpen                             1418916        0
    leiUpdateLayerField                1383992        0
    leiCreateTechConnectLists          1107432        0
    drFindPacket                       1067120  1067120
    leGetValidLayerList                1034640  1034640
    hiMakeLPChoiceList                  866000   866000
    hiDisplayWindow                     788144   788144
    _deOpenLevel                        773956      744
    _deCallDataTrigger                  686484        0
    geDataTrigger                       685740        0
    geCheckTFPackets                    684784        0
    _dePostOpenProcess                  609848        0
    list                                579516   579516
    getSGq                              566656   566656
    tconc                               424008   424008
    kkLeGenFillPattern                  224420        0
    _deCompleteNewFileSpec              195356      720
    _deCreateNewFields                  188172      720
    _deCreateNewForm                    188172        0
    _deCallPostInstallTrigger           150212        0
    _lePostInstallTrigger               149096        0
    parser                              121488     9412
    ddsTriggerCB                        110632        0
    ddsLogCommand                       108184      348
    ddUpdateLibList                     106792     2088
    cons                                106752   106752
    calcFILLDEGREE                       85340        0
    kkLeGenFillArea                      79696        0
    techGetLPPacketName                  78776    78776
    _deUpdateLibChoices                  63388    36888
    techGetSpacingRule                   62928    62928
    hiGetBannerMenus                     52752    52752
    plus                                 51296    51296
    kkLeUnderOverSizeFig                 50640        0
    ddGetLibList                         45756    45756
    _deSetWindowName                     45300        0
    hiiInsertBannerMenu                  41664    41664
    geiUpdateLibListTrigger              41316        0
    kkLeCopyAllFigToCellView             41296        0
    dbGetOpenCellViews                   37008    37008
    hiCloseWindow                        36104     1440
    _deCallUserPostInstallTrigger        34968        0
    errset                               34596      372
    _dePullTrigger                       34596        0
    TLinstallLayoutTrigger               34224     8928
    _deApplyTrigger                      34224        0
    apply                                34224        0
    mapcar                               31176    20784
    geCreateContext                      27776    27776
    POINT_IN_RECTANGLE                   27648        0
    _deMakeBannerMenus                   27276        0
    ddMapGetToolNameList                 26544    26544
    _deListViewTypes                     25668        0
    deGetAllViewTypes                    25668        0
    leEIPZoomAbsoluteScale               24976        0
    _deCallAppTrigger                    24616        0
    leAppTrigger                         23872        0
    _deCallMenuTrigger                   22812        0
    leMenuTrigger                        22068      232
    geSelectFigNoFilter                  21792    21792
    hiInsertBannerMenu                   20832        0
    kkLeSelectListFig                    20784        0
    geAppTrigger                         19904        0
    float                                19776    19776
    leLayerAnd                           19200    19200
    difference                           19136    19136
    leLayerSize                          18576    18576
    _deMakeStackTopArgs                  17800        0
    _deMakeStackArgs                     17440        0
    times                                17248    17248
    load                                 17064      532
    leUpdateLayoutMenus                  15056        0
    _deCompleteOpenFileSpec              14888      792
    append1                              14880    14880
    quotient                             14496    14496
    _deCreateOpenForm                    12968       88
    deGetRootType                        12808    12808
    leUpdateMenus                        12300       56
    range                                12144    12144
    hiScaleBox                           11520        0
    _leSetTurboMenuItems                 11088        0
    kkLeDeleteListFig                    10392        0
    dbProduceOverlap                     10200    10200
    _deCreateOpenFields                  10000     1576
    leLayerAndNot                         9960     9960
    makeTable                             9424     9424
    ipcBeginProcess                       9360     9360
    leGetEntryLayer                       9132     9132
    dbCreateRect                          8520     8520
    geSave                                8500        0
    leSearchHierarchy                     8280     8280
    copy                                  8184     8184
    parseString                           8080     8080
    geSetWindowStatus                     7688     2976
    geDeleteContext                       7092     7092
    dbSave                                6960     6612
    dbOpenCellViewByType                  6852     5060
    leSetLayerSelectable                  6696     6696
    leSetLayerVisible                     6696     6696
    ddMapGetToolNameViewType              6616     6616
    geGetEditCellView                     6604     6604
    geUpdateWindowMenus                   5940       12
    deGetCellView                         5832     5832
    _sprintf                              5616     5616
    convTEXTtoALL                         5400     1440
    get_pname                             5248     5248
    ddGetObj                              5096     3864
    _leGetQrcMenu                         4952        0
    geEditToWindowPoint                   4800     4800
    _dePushStack                          4464     4464
    _leiIsLeCapEnabled                    4464     4464
    _leiIsLeEditCapEnabled                4464     4464
    geEciContextTrigger                   4464     3348
    geGetWindowCellView                   4428     4428
    leWindowBBoxProc                      4200        0
    hiReplaceAllBannerMenus               4092        0
    deGetMaxEditLevel                     4020     4020
    linereadstring                        3960        0
    deGetViewType                         3844     3844
    _dePushExtStack                       3720     3720
    _leIsLevelEnabled                     3720     3720
    hiBoxCenter                           3600        0
    _leSetWindowName                      3468        0
    deGetEditLevel                        3264     3264
    _leDrdCheckConn                       2976     2976
    _deSetExtDETopLevel                   2928     2928
    _deSetWindowBusy                      2880     2880
    _deInitializeWindow                   2852      744
    _deLibNameCB                          2796      208
    symbolToString                        2624        0
    leGetTechFormList                     2508     2508
    leiGetTechLayerField                  2508     2508
    deGetConfigId                         2232     2232
    geInstallContext                      2232     2232
    leIsLeEditCapEnabled                  2232        0
    _deIsWindowBusy                       2208     2208
    leiRegWindowTriggers                  2208     2208
    _deCallEnableTrigger                  2204        0
    _deGetConfigIdAtWindowLevel           2184     2184
    deGetEIP                              2184     2184
    deGetPushed                           2184     2184
    techGetLP                             2004     2004
    geiUpdateMenu                         1872        0
    ddsCreateTrigger                      1792        0
    strcat                                1760     1760
    geDeselectAllFig                      1656     1656
    deSetContext                          1488     1488
    hiiAddFixedMenu                       1488     1488
    putprop                               1488     1488
    leEnableTrigger                       1460        0
    _deGetDefaultViewType                 1444        0
    _deIsWindowLevelConfigSubTop          1440     1440
    _deSetExtMaxInContextLevel            1440     1440
    _ddsTriggerEnter                      1404        0
    hiGetWindowList                       1284     1284
    hiiCreateWindow                       1240     1240
    _deGetDefaultAppFromEnv               1196        0
    _deCallProbeTrigger                   1116        0
    _deClearStack                         1116        0
    _deUnwind                             1116        0
    geEcRegCloseProc                      1116        0
    hiRegCloseProc                        1116        0
    leIsLeCapEnabled                      1116        0
    sqrt                                  1104     1104
    geAddSelectBox                        1080     1080
    leYankFigs                            1080     1080
    geSelectArea                          1080        0
    substring                             1064     1064
    geGetSelSetCount                      1056     1056
    leGetContactNameArray                 1056     1056
    info                                  1044     1044
    hiFormCancel                          1044      696
    _leVioPostSaveTrigger                  972      972
    min                                    960      960
    hiEnableMenuItem                       864        0
    _deCheckLibCell                        776        0
    _deInitWindowInfo                      744      744
    _deSetMaxInContextLevel                744      744
    deGetMaxInContextLevel                 744      744
    envGetVal                              744      744
    leCreateStatusBanner                   744      744
    leInitLayerWindow                      744      744
    leiCreateConnections                   744      744
    leiRegAbutmentCV                       744      744
    _deSetExtPrependStack                  744        0
    _deTranslateAppName                    744        0
    _deValidateAppNameOrTitle              744        0
    deIsEditInContext                      744        0
    hiAddFixedMenu                         744        0
    dbGetCellViewDdId                      728      728
    _deGetExtMaxLevel                      720      720
    _dePopExtStack                         720      720
    _dePopStack                            720      720
    deGetContext                           720      720
    deGetVector                            720      720
    geCancelCellViewEditors                720      720
    geiDeleting                            720      720
    lePasteFigs                            720      720
    leiDestroyConnections                  720      720
    _dePrePop                              720        0
    _aaBeforeProc                          676        0
    hiCreateWindow                         620        0
    hiGetWindowState                       600      600
    hiGetWidgetType                        576      576
    append                                 540      540
    hiGetAppType                           528      528
    ddMapGetViewTypeFileName               504      504
    drGetDisplay                           496      496
    _loCoreOptionsCB                       496        0
    _loOptionsCB                           496        0
    ipcReadProcess                         488      280
    makeVector                             480      480
    artMakeString                          472        0
    _deOpenCellNameCB                      436      256
    ddGetObjReadPath                       408      408
    leGetEditLayout                        376        0
    _deCallUserAppTrigger                  372        0
    _deGetAppSubType                       372        0
    geiValidateWindow                      360        0
    dbCreateLabel                          348      348
    deDBox                                 272       36
    ddGetUpdatedLib                        256      256
    getWorkingDir                          256      256
    simplifyFilename                       256      256
    _deMakeDMSpec                          248        0
    _deSetViewNames                        240      112
    lmFeatList                             224      224
    TLcheckLicensesAgain                   208        0
    aaiCallListToString                    208        0
    outfile                                180      180
    hiDisableMenuItem                      180        0
    getWarn                                176      176
    geiAskOverwriteMode                    176        0
    hiDisplayAppDBox                       172       72
    dbGetDatabaseType                      160      160
    TLcheckLicenses                        144        0
    _deCompareLibs                         104        0
    sort                                   104        0
    _hiDisplayForm                          96       96
    geGetCellViewWindow                     96       96
    geiGetEditCellViewWindow                96       96
    hiDisplayForm                           96        0
    hiiDialogBox                            80       80
    evalalias                               72       72
    geEcCloseProc                           72        0
    ddMapGetFileViewType                    56       56
    ddsUpdateLibListTrigger                 40        0
    hiGetWindowName                         32       32
    eval                                    28       12
    dbCopyFig                               24       24
    _geIsCVNew                               8        0
    ilProfUpdateStatus                       8        0
     

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 14 years ago

    If it's time you're worried about, you might be better off profiling time rather than memory.  Also make sure that you start the "run" button just before you invoke your SKILL code (try to remove the effect of anything else in the system), and hit the "stop" button right after it completing. Make sure you hit "reset" before runs.

    You can also through the UI show the critical path - this can help in prioritizing it. 

    From what you've shown, it appears that most of the memory is being used in  various Cadence functions:

    drFindPacket                       1067120  1067120
    leGetValidLayerList                1034640  1034640
    hiMakeLPChoiceList                  866000   866000
    hiDisplayWindow                     788144   788144

    However, it's pretty much impossible to tell you what to improve without seeing the code! We have no idea what your code is doing.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • dmay
    dmay over 14 years ago

    I agree with Andrew. The time profiling is a lot more telling. Looking at the amount of memory used by commands like "drFindPacket", "leSetLayerValid", "techGetSpacingRule" and "leGetValidLayerList", it would seem like you are calling these commands more than necessary. Running these commands once and storing off the values can save a lot of time.

    Derek

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Austin CAD Guy
    Austin CAD Guy over 14 years ago

     Derek and Andrew are correct, you want to look more at the time each command is using rather than the memory. The gc command is the garbage collector and that gets triggered when you free a large amount of data such as reinitializing variables.

    In your command list you have a number of interactive commands, (leSetLayerValid, drFindPacket), are these part of your code? Be sure, as Andrew said, to profile only the code by starting and stopping around the execution of the procedure.

     Ted

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • bloodwayn
    bloodwayn over 14 years ago

     hi,

    and first a happy new year at all.

    i've saved the times. i hope you're able to make use of these data.

    http://nopaste.info/c455c23d96.html

    regards
    philip

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 14 years ago

    Hi Philip,

    As I said, it's almost impossible to comment further without seeing the code.

    Regards,

    Andrew.

    • 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