Skip to content

Commit

Permalink
added template version, renamed function, added testset
Browse files Browse the repository at this point in the history
  • Loading branch information
MatthewEai committed Jan 9, 2025
1 parent ac08e9c commit 19665c3
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 9 deletions.
20 changes: 12 additions & 8 deletions src/AzManagers.jl
Original file line number Diff line number Diff line change
Expand Up @@ -2162,13 +2162,7 @@ function quotacheck(manager, subscriptionid, template, δn, nretry, verbose)
ncores_available - (ncores_per_machine * δn), ncores_spot_available - (ncores_per_machine * δn)
end

function get_CPU(template::AbstractString)
isfile(templates_filename_vm()) || error("scale-set template file does not exist. See `AzManagers.save_template_scaleset`")

templates_scaleset = JSON.parse(read(templates_filename_vm(), String))
haskey(templates_scaleset, template) || error("scale-set template file does not contain a template with name: $template. See `AzManagers.save_template_scaleset`")
template = templates_scaleset[template]

function nphysical_cores(template::Dict)
ssid = template["subscriptionid"]
region = template["value"]["location"]
sku_name = template["value"]["properties"]["hardwareProfile"]["vmSize"]
Expand All @@ -2189,6 +2183,16 @@ function get_CPU(template::AbstractString)
pCPU = hyperthreading ? div(parse(Int,vCPU),2) : parse(Int,vCPU)
end

function nphysical_cores(template::AbstractString)
isfile(templates_filename_vm()) || error("scale-set template file does not exist. See `AzManagers.save_template_scaleset`")

templates_scaleset = JSON.parse(read(templates_filename_vm(), String))
haskey(templates_scaleset, template) || error("scale-set template file does not contain a template with name: $template. See `AzManagers.save_template_scaleset`")
template = templates_scaleset[template]

nphysical_cores(template)
end

function getnextlinks!(manager::AzManager, _r, value, nextlink, nretry, verbose)
while nextlink != ""
_r = @retry nretry azrequest(
Expand Down Expand Up @@ -3437,7 +3441,7 @@ function Base.kill(job::DetachedJob)
"http://$(job.vm["ip"]):$(job.vm["port"])/cofii/detached/job/$(job.id)/kill")
end

export AzManager, DetachedJob, addproc, machine_preempt_channel_future, nworkers_provisioned, preempted, rmproc, scalesets, status, variablebundle, variablebundle!, vm, @detach, @detachat
export AzManager, DetachedJob, addproc, machine_preempt_channel_future, nphysical_cores, nworkers_provisioned, preempted, rmproc, scalesets, status, variablebundle, variablebundle!, vm, @detach, @detachat

if !isdefined(Base, :get_extension)
include("../ext/MPIExt.jl")
Expand Down
22 changes: 21 additions & 1 deletion test/runtests.jl
Original file line number Diff line number Diff line change
Expand Up @@ -399,4 +399,24 @@ end
@test name !== "unknown" && match(r"[A-Z0-9]", name) !== nothing

rmproc(testvm; session=session)
end
end

@testset "AzManagers, nphysical_cores $machine_name" for machine_name in ("cbox96","cbox64","ussc/t107/v4/amd/cbox176")
ncores = nphysical_cores(machine_name)

if machine_name == "cbox96"
@test ncores == 96
elseif machine_name == "cbox64"
@test ncores == 64
elseif machine_name == "ussc/t107/v4/amd/cbox176"
@test ncores == 176
end
end

@testset "AzManagers, nphysical_cores $templatename"
templates_scaleset = JSON.parse(read(AzManagers.templates_filename_vm(), String))
template = templates_vm[templatename]
ncores = nphysical_cores(template)

@test ncores == 2
end

0 comments on commit 19665c3

Please sign in to comment.