зеркало из https://github.com/Azure/azurehpc.git
Merge branch 'master' of https://github.com/Azure/azurehpc
This commit is contained in:
Коммит
c0bae6010d
|
@ -32,11 +32,20 @@ azhpc-run -u hpcuser apps/fluent/install_fluent.sh
|
|||
azhpc-connect -u hpcuser headnode
|
||||
```
|
||||
|
||||
## Setup the benchmark files
|
||||
|
||||
Copy the benchmark tarball to /apps/ansys_inc/v193/fluent then run
|
||||
|
||||
```
|
||||
tar xvf <tarfilename>.tar
|
||||
```
|
||||
|
||||
This will place the required files where fluent will find them
|
||||
|
||||
## Running
|
||||
|
||||
NOTE: In the run script you will need to update the license server. Currently it is set to localhost which would require a tunnel to be created (currently the ssh tunnel command commented out in the script).
|
||||
|
||||
Copy the benchmark to /apps/ansys_inc/v193/fluent
|
||||
|
||||
Now, you can run as follows:
|
||||
|
||||
|
@ -47,7 +56,7 @@ for ppn in 60 45 30; do
|
|||
mkdir $name
|
||||
cd $name
|
||||
cp ../run_hpcx.sh .
|
||||
qsub -l select=${nodes}:ncpus=${ppn}:mpiprocs=${ppn},place=scatter:excl -N $name ./run_hpcx.sh
|
||||
qsub -l select=${nodes}:ncpus=${ppn}:mpiprocs=${ppn},place=scatter:excl -N $name ./run_fluent_hpcx.sh
|
||||
cd -
|
||||
done
|
||||
done
|
||||
|
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -3,13 +3,14 @@
|
|||
"version": "0.1.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@monaco-editor/react": "^1.2.1",
|
||||
"bootstrap": "^4.3.1",
|
||||
"@monaco-editor/react": "^3.1.2",
|
||||
"bootstrap": "^4.4.1",
|
||||
"font-awesome": "^4.7.0",
|
||||
"react": "^16.9.0",
|
||||
"react-dom": "^16.9.0",
|
||||
"react-resize-detector": "^4.2.0",
|
||||
"react-scripts": "^3.3.0"
|
||||
"react": "^16.13.0",
|
||||
"react-dom": "^16.13.0",
|
||||
"react-resize-detector": "^4.2.1",
|
||||
"react-scripts": "^3.4.0",
|
||||
"typescript": "^3.8.3"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "react-scripts start",
|
||||
|
|
|
@ -332,7 +332,6 @@ def do_build(args):
|
|||
log.info("creating resource group " + config["resource_group"])
|
||||
|
||||
resource_tags = config.get("resource_tags", {})
|
||||
#'CreatedBy='$USER'' 'CreatedOn='$(date +%Y%m%d-%H%M%S)'' \
|
||||
azutil.create_resource_group(
|
||||
config["resource_group"],
|
||||
config["location"],
|
||||
|
|
|
@ -168,6 +168,32 @@ def generate_hostlists(cfg, tmpdir):
|
|||
with open(f"{tmpdir}/hostlists/tags/{n}", "w") as f:
|
||||
f.writelines(f"{h}\n" for h in tags[n])
|
||||
|
||||
def _create_anf_mount_scripts(cfg, scriptfile):
|
||||
script = """#!/bin/bash
|
||||
yum install -y nfs-utils
|
||||
"""
|
||||
resource_group = cfg["resource_group"]
|
||||
# loop over all anf accounts
|
||||
accounts = [ x for x in cfg.get("storage",{}) if cfg["storage"][x]["type"] == "anf" ]
|
||||
for account in accounts:
|
||||
pools = cfg["storage"][account].get("pools",{}).keys()
|
||||
for pool in pools:
|
||||
volumes = cfg["storage"][account]["pools"][pool].get("volumes",{}).keys()
|
||||
for volume in volumes:
|
||||
ip = azutil.get_anf_volume_ip(resource_group, account, pool, volume)
|
||||
mount_point = cfg["storage"][account]["pools"][pool]["volumes"][volume]["mount"]
|
||||
script += f"""
|
||||
mkdir -p {mount_point}
|
||||
chmod 777 {mount_point}
|
||||
echo "{ip}:/{volume} {mount_point} nfs bg,rw,hard,noatime,nolock,rsize=65536,wsize=65536,vers=3,tcp,_netdev 0 0" >>/etc/fstab
|
||||
"""
|
||||
script += """
|
||||
mount -a
|
||||
"""
|
||||
with open(scriptfile, "w") as f:
|
||||
os.chmod(scriptfile, 0o755)
|
||||
f.write(script)
|
||||
|
||||
def generate_install(cfg, tmpdir, adminuser, sshprivkey, sshpubkey):
|
||||
jb = cfg.get("install_from", None)
|
||||
os.makedirs(tmpdir+"/install")
|
||||
|
@ -175,6 +201,9 @@ def generate_install(cfg, tmpdir, adminuser, sshprivkey, sshpubkey):
|
|||
shutil.copy(sshpubkey, tmpdir)
|
||||
shutil.copy(sshprivkey, tmpdir)
|
||||
|
||||
os.makedirs("scripts", exist_ok=True)
|
||||
_create_anf_mount_scripts(cfg, "scripts/auto_netappfiles_mount.sh")
|
||||
|
||||
if jb and jb in cfg.get("resources", {}):
|
||||
inst = cfg.get("install", [])
|
||||
create_jumpbox_setup_script(tmpdir, sshprivkey, sshpubkey)
|
||||
|
|
|
@ -229,6 +229,25 @@ def get_log_analytics_key(resource_group, name):
|
|||
saskey = out[0].decode('utf-8')
|
||||
return saskey
|
||||
|
||||
def get_anf_volume_ip(resource_group, account, pool, volume):
|
||||
cmd = [
|
||||
"az", "netappfiles", "list-mount-targets",
|
||||
"--resource-group", resource_group,
|
||||
"--account-name", account,
|
||||
"--pool-name", pool,
|
||||
"--volume-name", volume,
|
||||
"--query", "[0].ipAddress",
|
||||
"--output", "tsv"
|
||||
]
|
||||
res = subprocess.run(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
||||
if res.returncode != 0:
|
||||
log.error("invalid returncode"+_make_subprocess_error_string(res))
|
||||
out = res.stdout.splitlines()
|
||||
if len(out) != 1:
|
||||
log.error("unexpected output"+_make_subprocess_error_string(res))
|
||||
ip = out[0].decode('utf-8')
|
||||
return ip
|
||||
|
||||
def get_acr_key(name):
|
||||
cmd = [
|
||||
"az", "acr", "credential", "show",
|
||||
|
|
Загрузка…
Ссылка в новой задаче