From c00a008498015e59d29242b403e5f6f4ca556f1a Mon Sep 17 00:00:00 2001 From: mengruts Date: Sat, 24 Jul 2021 21:14:18 +0800 Subject: [PATCH 1/4] Create readme.md --- apps/cadence_voltus/readme.md | 55 +++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 apps/cadence_voltus/readme.md diff --git a/apps/cadence_voltus/readme.md b/apps/cadence_voltus/readme.md new file mode 100644 index 000000000..abb14f415 --- /dev/null +++ b/apps/cadence_voltus/readme.md @@ -0,0 +1,55 @@ +## Cadence Clarity 3D Solver + +The Cadence® Voltus™ IC Power Integrity Solution is a standalone, cloud-ready, full-chip, cell-level power signoff tool. The Voltus tool is of particular value to designers by providing better understanding of the power grid strength, as well as debugging, verifying, and fixing IC chip power consumption, IR drop, and electromigration (EM) constraints and violations (EM-IR). + +[Cadence Voltus IC Power Integrity Solutionr Home Page](https://www.cadence.com/zh_TW/home/tools/digital-design-and-signoff/silicon-signoff/voltus-ic-power-integrity-solution.html) + +## Prerequisites + +Cluster is built with the desired configuration for networking, storage, compute etc. The [simple_hpc_pbs](https://github.com/Azure/azurehpc/tree/eda/examples/simple_hpc_pbs) template in the examples directory is a suitable choice. + +After cluster is built, first copy the apps directory to the cluster. The `azhpc-scp` can be used to do this: + +``` +azhpc-scp -u hpcuser -r $azhpc_dir/apps hpcuser@headnode:. +``` + +Then connect to the headnode: +``` +azhpc-connect -u hpcuser headnode +``` + +## Installation + +Change folder to: +``` +cd /azurehpc/apps/cadence_voltus +``` + +Take a look at the 'build_voltus.sh' script, modify the installation directory if needed: +``` +vim build_voltus.sh +``` + +Run the 'build_voltus.sh' script: +``` +source build_voltus.sh +``` +## Configure License Server +Make necessary modification of the license file you received from Cadence or supplier. EX: modify the SERVER name: +``` +... +########################### LICENSE KEYS START HERE ###################### +SERVER Cadence_SERVER 00ad3a9ddd47 5280 +DAEMON cdslmd ./cdslmd +# DO NOT REMOVE THE USE_SERVER LINE +USE_SERVER +... +``` +Copy the license file to the VM (EX: headnode), and then execute: +``` +[your installation directory]/bin/lmgrd -c -l license.log +``` + +## Run Voltus +Run your Voltus simulation on the cluster. From 52953a67d85aa964de57244f2ad9eb8604d3fdc2 Mon Sep 17 00:00:00 2001 From: mengruts Date: Sat, 24 Jul 2021 21:15:14 +0800 Subject: [PATCH 2/4] Update readme.md --- apps/cadence_voltus/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/cadence_voltus/readme.md b/apps/cadence_voltus/readme.md index abb14f415..8e6a79cbc 100644 --- a/apps/cadence_voltus/readme.md +++ b/apps/cadence_voltus/readme.md @@ -1,4 +1,4 @@ -## Cadence Clarity 3D Solver +## Cadence® Voltus™ IC Power Integrity Solutio The Cadence® Voltus™ IC Power Integrity Solution is a standalone, cloud-ready, full-chip, cell-level power signoff tool. The Voltus tool is of particular value to designers by providing better understanding of the power grid strength, as well as debugging, verifying, and fixing IC chip power consumption, IR drop, and electromigration (EM) constraints and violations (EM-IR). From f259efe4e433f5a44df1d99a17f70d552c590e5e Mon Sep 17 00:00:00 2001 From: mengruts Date: Sat, 24 Jul 2021 21:35:59 +0800 Subject: [PATCH 3/4] Create build_voltus.sh --- apps/cadence_voltus/build_voltus.sh | 68 +++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 apps/cadence_voltus/build_voltus.sh diff --git a/apps/cadence_voltus/build_voltus.sh b/apps/cadence_voltus/build_voltus.sh new file mode 100644 index 000000000..44f5eebd7 --- /dev/null +++ b/apps/cadence_voltus/build_voltus.sh @@ -0,0 +1,68 @@ +#!/bin/bash + +# TODO: install directory +INSTALL_DIR="/netapps/voltus/" + +WORKING_DIR="/mnt/resource" +CADENCE_TOOLS_BLOB="https://edarg3diag.blob.core.windows.net/edatools/Cadence" +ISCAPE_FILE="IScape04.23-s012lnx86.t.Z" + +cd ${WORKING_DIR} + +install_required_packages() +{ + echo "----------------------installing required packages." + yum -y install ksh + yum -y install mesa-libGLU + yum -y install motif + yum -y install redhat-lsb + yum -y install glibc.i686 + yum -y install elfutils-libelf.i686 + yum -y install mesa-libGL.i686 + yum -y install mesa-libGLU.i686 + yum -y install motif.i686 + yum -y install redhat-lsb.i686 + yum -y install glibc-devel.i686 + yum -y install libXScrnSaver.i686 + yum -y install libXScrnSaver.x86_64 + yum -y install java-1.8.0-openjdk +} + +install_iscape() +{ + echo "----------------------installing IScape." + wget ${CADENCE_TOOLS_BLOB}/${ISCAPE_FILE} + zcat ${ISCAPE_FILE} | sudo tar -xvf - + cd ${WORKING_DIR}/iscape.04.23-s012/bin + + # To get Archive for the 1st time + #./iscape.sh -batch majorAction=download minorAction=ArchiveInstall SourceLocation="http://sw.cadence.com/is/SSV211/lnx86/Base" ArchiveDirectory=${WORKING_DIR}/VoltusArchive/ InstallDirectory=${INSTALL_DIR} +} + +download_archive() +{ + echo "----------------------downloading archive." + cd ${WORKING_DIR} + wget ${CADENCE_TOOLS_BLOB}/VoltusArchive.tgz + tar -xzvf VoltusArchive.tgz +} + +install_from_archive() +{ + echo "---------------------installing from archive." + cd ${WORKING_DIR}/iscape.04.23-s012/bin + ./iscape.sh -batch majorAction=installfromarchive ArchiveDirectory=${WORKING_DIR}/VoltusArchive/ InstallDirectory=${INSTALL_DIR} + + # generate configuration scripts + ./iscape.sh -batch majorAction=configure InstallDirectory=${INSTALL_DIR} + + # complete configuration + /bin/sh ${INSTALL_DIR}installData/SSV211_lnx86/batch_configure.sh +} + +install_required_packages +install_iscape +download_archive +install_from_archive + +echo "-----------------------DONE." From ac6a344b034238161543b8263aeeea12a5362fa0 Mon Sep 17 00:00:00 2001 From: mengruts Date: Mon, 2 Aug 2021 17:46:48 +0800 Subject: [PATCH 4/4] change default install location --- apps/cadence_voltus/build_voltus.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/cadence_voltus/build_voltus.sh b/apps/cadence_voltus/build_voltus.sh index 44f5eebd7..2d6397309 100644 --- a/apps/cadence_voltus/build_voltus.sh +++ b/apps/cadence_voltus/build_voltus.sh @@ -1,7 +1,7 @@ #!/bin/bash # TODO: install directory -INSTALL_DIR="/netapps/voltus/" +INSTALL_DIR="/voltus/" WORKING_DIR="/mnt/resource" CADENCE_TOOLS_BLOB="https://edarg3diag.blob.core.windows.net/edatools/Cadence"