• 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. VManager + DRM user specific config (HTCondor)

Stats

  • Locked Locked
  • Replies 6
  • Subscribers 65
  • Views 17463
  • 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

VManager + DRM user specific config (HTCondor)

BGarcia
BGarcia over 5 years ago

Hello Everyone,

I am in the process of setting up a VManager + HTC server farm (using HTCondor) for regressions.

As HTCondor is not natively supported by Cadence like NC or SGE is, I need to specify it is a USER SPECIFIC DRM and then select a path of the DRM TCL implementation file.

I am unsure what this DRM TCL file contents and structure should be and I cannot find anything related to this particular file in the documentation.

Has anyone implemented anything like this and can provide me with some examples/guidelines on how to make this file?

Best Regards,

Baudilio Garcia

  • Cancel
  • StephenH
    StephenH over 5 years ago

    Please refer to the section "Creating User-defined DRM API for Parallel Merge / Parallel Rank/ DRM Options" in the docs: support.cadence.com/.../techpubDocViewerPage

    You basically have to provide a Tcl file that implements some call-backs to submit / kill / monitor the jobs by calling out to the right commands in your DRM (HTCondor) and returning the information in the format that vManager expects.

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • BGarcia
    BGarcia over 5 years ago in reply to StephenH

    Hello Stephen,

    That is exactly what I was looking for! Thank you very much for your help and support!!

    Best Regards,

    Baudilio Garcia

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • BGarcia
    BGarcia over 5 years ago

    Hello Everyone,

    Sorry for comming back to this, but I have another question:

    I am having issues builinng the submit_job procedure specified in the documentation. I am unsure where the job_template parameter is created.

    Should I create the associative array on the TCL file? is this taken from the .vsif file? does this come from vManager somehow?

    Thank you for your help and support.

    Best Regards,

    Baudilio Garcia

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • StephenH
    StephenH over 5 years ago in reply to BGarcia

    Hi Baudilio.

    The job_template is given to your Tcl proc as an input from vManager, you don't have to construct it yourself. It's basically just an associative array containing a "command" key/value pair and a set of optional key/value pairs for other things that vManager might pass to you if it needs to. You Tcl has to check for these key/value pairs and decode them to control the underlying DRM submission command. There is an small example here: https://support.cadence.com/apex/techpubDocViewerPage?xmlName=vmanagerinstall.xml&title=Cadence%20vManager%20Installation%20and%20Configuration%20Guide%20--%20Setting%20Up%20the%20Regression%20Environment%20-%203.11.1.3%20submit_job&hash=SettingUptheRegressionEnvironment-3.11.1.31135112submit_job&c_version=20.03&path=vManagerinstall/vManagerinstall20.03/Setting_Up_the_Regression_Environment.html#SettingUptheRegressionEnvironment-3.11.1.31135112submit_job

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • BGarcia
    BGarcia over 5 years ago in reply to StephenH

    Hi Stephen,

    Thank you very much for your help so far!

    I am currently having an issue with the get_job_status procedure: TCL error when evaluating user DRM tcl file /home/baudilio.garcia/vmanager/HTCondor.tcl while calling get_job_status
    wrong # args: should be "get_job_status job_id"

    But according to the documentation, there should only be 1 argument?

    This is the procedure that I have created:

    Any ideas of what could be happening?

    Thank you very much for your help and support.

    Best Regards,

    Baudilio Garcia

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • StephenH
    StephenH over 5 years ago in reply to BGarcia

    Hmmm... I honestly don't know about that. You could try the Tcl "variable args list" approach as described in the Tcl docs: http://tcl.tk/man/tcl8.4/TclCmd/proc.htm so instead of "proc get_job_status {job_id}" you would do "proc get_job_status args", then treat args as an array and pick item 0 from the array inside your proc's body. If that fails, May I request you to open a support ticket on https://support.cadence.com/ so that one of the hotline team could assist you (I won't be available for a couple of weeks, and this forum isn't staffed as a full-time support channel).

    • 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