• 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. Cadence distributed processing with SKILL

Stats

  • Locked Locked
  • Replies 5
  • Subscribers 144
  • Views 14347
  • 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

Cadence distributed processing with SKILL

TaherKotb
TaherKotb over 11 years ago

Hello,

I have a skill code that i wish to run in distributed mode. The distributed processing user guide eloborates the setup of distributed mode option with OCEAN commands. does the same setup apply for skill code?. If not, is there any other option which could speed up the code runtime?.

Thanks in advance

Best Regards

Taher 

  • Cancel
  • tweeks
    tweeks over 11 years ago

    You can run as many "distributed" SKILL processes as you like:

    rsh $remoteHost1 skill myfile1.il &

    rsh $remoteHost2 skill myfile2.il &

      .

      .

      .

     

    If you use LSF,

     

    bsub -q myQueue skill myfile1.il

    bsub -q myQueue skill myfile2.il

    .

    .

    .

     

     

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

    Hello, 

    Thanks for your reply. Actually, what i want is to find a way in which one process(procedure) can breakdown into sub-processes and run on distributed machines. can this be done?

    Thanks again

    Best Regards 

     

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

    YES: use ipcSkillProcess().

     

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

    Thanks for your help, i executed 'ps aux' command to see the available processes, however didn't find my prcocess in the list.

    I am sorry, my knowledge in skill is limited. Please bare with me. 

    Here is the code:

    procedure( test() printf("Testing\n") ) ; wrote it in test.sh file

    svnCmd = sprintf(nil "/home/Work_IC6/test.sh" )

    cid = ipcBeginProcess( svnCmd )

    ipcWait(cid) 

    ipcReadProcess(cid)

    Output of the last command is nil. Is there something missing ? 

    Thanks for your great help.

    Best Regards 

     

     

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

    TaherKotb said:

    Output of the last command is nil. Is there something missing ? 

    It looks like you are assuming ipcBeginProcess() starts a SKILL interpreter to read a file. 

    That is not what it does.

    ipcBeginProcess() starts /bin/sh, which executes the UNIX shell command you give it. 

     

    So you told /bin/sh to run "/home/Work_IC6/test.sh", and the result is that the shell tried to run that as a shell script.

    Since the text of test.sh is actually SKILL code, the UNIX shell cannot understand it, and you get an error message on standard error, but no output on standard output, which is why ipcReadProcess() returned nil: there was no (standard) output.

    What you are trying to do is something like:

        ipcBeginProcess("skill /home/Work_IC6/test.sh")

    which runs a standalone SKILL interpreter to interpret the script.

    You can also run virtuoso this way, either using -replay, or echoing some SKILL code to it through a pipe.

      --tom

    • 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