Skip to content

Commit b7a2537

Browse files
corrections - feature detection
1 parent 1291f82 commit b7a2537

File tree

5 files changed

+19
-9
lines changed

5 files changed

+19
-9
lines changed

src/features/detection.jl

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -280,21 +280,21 @@ function identifySIMD_CpuId()
280280
elseif CpuId.cpufeature(:AVX2)
281281
return string(:AVX2)
282282
elseif CpuId.cpufeature(:SSE41)
283-
return string(:SSE41)
283+
return "SSE_4_1"
284284
elseif CpuId.cpufeature(:SSE42)
285-
return string(:SSE42)
285+
return "SSE_4_2"
286286
elseif CpuId.cpufeature(:SSSE3)
287-
return string(:SSSE3)
287+
return "SSSE_3"
288288
elseif CpuId.cpufeature(:SSE3)
289-
return string(:SSE3)
289+
return "SSE_3"
290290
elseif CpuId.cpufeature(:SSE2)
291-
return string(:SSE2)
291+
return "SSE_2"
292292
elseif CpuId.cpufeature(:SSE)
293-
return string(:SSE)
293+
return "SSE"
294294
elseif CpuId.cpufeature(:MMX)
295-
return string(:MMX)
295+
return "MMX"
296296
else
297-
return string(:ProcessorSIMD)
297+
return "ProcessorSIMD"
298298
end
299299
end
300300

@@ -509,7 +509,11 @@ function identifyAccelerator()
509509
l[k] = haskey(l,k) ? l[k] + 1 : 1
510510
end
511511

512-
accelerator_features = collectAcceleratorFeatures(l)
512+
accelerator_features = if (length(l) > 0)
513+
collectAcceleratorFeatures(l)
514+
else
515+
collectAcceleratorFeaturesDefault()
516+
end
513517
println(stderr, "ok")
514518
return accelerator_features
515519
catch error
@@ -729,6 +733,7 @@ function identifyNode()
729733
node_features = Dict()
730734

731735
node_features["node_count"] = 1
736+
node_features["node_threads_count"] = 1
732737
node_features["node_provider"] = "OnPremises"
733738
node_features["node_virtual"] = "No"
734739
node_features["node_dedicated"] = "No"

src/features/features.jl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ abstract type QualifierFeature <: PlatformType end
1111

1212
global feature_type = Dict(
1313
:node_count => quantifier,
14+
:node_threads_count => quantifier,
1415
:node_provider => qualifier,
1516
:node_virtual => qualifier,
1617
:node_dedicated => qualifier,

src/features/qualifiers/ec2/ec2.jl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -829,6 +829,7 @@ function getNodeFeatures(provider::Type{<:AmazonEC2}, node_features)
829829
instance_info = get_instance_info(provider)
830830
if (!isnothing(instance_info))
831831
node_features["node_count"] = 1
832+
node_features["node_threads_count"] = 1
832833
node_features["node_provider"] = "AmazonEC2"
833834
node_features["node_virtual"] = "Yes"
834835
node_features["node_dedicated"] = "Yes" # ???

src/features/qualifiers/intel/intel.jl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ abstract type IntelMicroarchitecture <: ProcessorMicroarchitecture end
1515
abstract type Westmere <: IntelMicroarchitecture end
1616
abstract type Saltwell <: IntelMicroarchitecture end
1717
abstract type SandyBridge <: IntelMicroarchitecture end
18+
abstract type SandyBridgeEP <: SandyBridge end
1819
abstract type IvyBridge <: IntelMicroarchitecture end
1920
abstract type Silvermont <: IntelMicroarchitecture end
2021
abstract type Haswell <: IntelMicroarchitecture end

src/platform.jl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ state = PlatformFeatures()
1717

1818
defT =[
1919
:node_count => Tuple{AtLeast1,AtMostInf,Q} where Q,
20+
:node_threads_count => Tuple{AtLeast1,AtMostInf,Q} where Q,
2021
:node_provider => Provider,
2122
:node_virtual => Query,
2223
:node_dedicated => Query,
@@ -122,6 +123,7 @@ function load!()
122123
empty!(state.platform_feature_all)
123124
platform_description_dict = readPlatormDescription()
124125
platform_description_dict["node"]["node_count"] = try Distributed.nworkers() catch _ 1 end
126+
platform_description_dict["node"]["node_threads_count"] = try Threads.nthreads() catch _ 1 end
125127
loadFeatures!(platform_description_dict, state.platform_feature_default_all, state.platform_feature_all)
126128
setupWorkers(platform_description_dict, state.platform_feature_all)
127129

0 commit comments

Comments
 (0)