• 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. Functional Verification
  3. increase virtual memory to sn_compile.sh

Stats

  • Locked Locked
  • Replies 7
  • Subscribers 66
  • Views 15955
  • 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

increase virtual memory to sn_compile.sh

amirb
amirb over 11 years ago
 
How do I increase the virtual memory allocated to sn_compile.sh? We have an environment compilation crashing because of an “out of virtual memory” error.
 
  • Cancel
  • hannes
    hannes over 11 years ago

    I believe virtual memory is related to the OS, so this can not really be controlled by chaning some sn_compile or Specman flag.
    Please can you be a bit more specific, and share the error message and sn_compile parameters.

    Another option would be to optimize the compilation by using the -parallel option. This should reduce the size of the generated C code,  improve compilation performance and reduce the amount of virtual memory required.

    -hannes 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • amirb
    amirb over 11 years ago
    Hi,

    My command is:

    sn_compile.sh -shlib /vobs/cc33xx/modules/wsoc_wmac/SPECMAN/E_USR/pmac_top.e -enable_DAC -e /sim/cc33xx/wsoc_wmac/cc33xx_amirb_int2/SNAPSHOTS/wsoc_wmac_tb/wsoc_wmac_tb.lnx8664.13.20.nc/specman.13.20.002-p/scratch -t /sim/cc33xx/wsoc_wmac/cc33xx_amirb_int2/SNAPSHOTS/wsoc_wmac_tb/wsoc_wmac_tb.lnx8664.13.20.nc/specman.13.20.002-p/scratch/precomp_tmp -o libsn_precomp.so                       

    And my error  message is:

    #------------------------------------------------------------

    # Compiling C modules using /apps/cds/incisiv/13.20.002/tools.lnx86/cdsgcc/gcc/bin/64bit/gcc

    #------------------------------------------------------------


    [3]    Done                          bsub -q gui -Is specview


    cc1: out of memory allocating 4064 bytes after a total of 175792128 bytes

    # sn_compile.sh: error during compilation, exiting


    Regards,

    Amir
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Tudor Timi
    Tudor Timi over 11 years ago

    Hi Amir,

    The "[3] Done..." message suggests you might be using LSF to submit your compile command to a different machine. While I can't know your exact setup, make sure that the queue you are submitting to doesn't have any memory usage restrictions. Also, you can tweak bsubs to request more memories by using the -R (requirements) command line argument. In our compute environment for example we would do something like '     bsub -R "mem > 512" <compile command>     ' to request at least 512 MB of memory for the command.

    Cheers,

    Tudor 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • hannes
    hannes over 11 years ago

    I still would recommend to use sn_compile.sh -parallel, just to reduce the size of the C file.
    In addition, you can try to find out what the limits are on the machine where you compile and maybe increase them
    (ulimit -a and ulimit -v unlimited).
    -hannes 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • amirb
    amirb over 11 years ago

    Thanks, the -parallel did the trick!

     

    PS: I would like to cc you on my mail with Cadence Israel, can you send me your mail address.

     

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • amirb
    amirb over 11 years ago

    By the way, does using the -parallel option hurt the performance of the executable created by the sn_compile.sh script?

     

    thanks,

    Amir 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • hannes
    hannes over 11 years ago

    No, it doesn't.


    -parallel: instead of creating on big C file and compiling that, sn_compile.sh creates several (depending on the options) and compiles each in a separate call/process. The result is the same.

    • 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