aboutsummaryrefslogtreecommitdiff
path: root/src/core/CPP
diff options
context:
space:
mode:
authorMichalis Spyrou <michalis.spyrou@arm.com>2021-06-07 14:23:57 +0100
committerGeorgios Pinitas <georgios.pinitas@arm.com>2021-06-23 12:25:50 +0000
commit20fca524baf99402f742ce38c538f2fd07d5fff9 (patch)
treeb63d98383d1ba22bb3ca59d393e4ab9d47a9c762 /src/core/CPP
parent1d359279e22874121def2ce4bfdb633d94ea5ade (diff)
downloadComputeLibrary-20fca524baf99402f742ce38c538f2fd07d5fff9.tar.gz
Create core library using high priority operators
A smaller core library is created using a subset of the operators. Changed the structure of filelist.json in order to include more information about the kernels and make the selection easier. Resolves: COMPMID-4514 Change-Id: I079ca7d8e64346174eebdd13b834e1dd4dc36ca2 Signed-off-by: Michalis Spyrou <michalis.spyrou@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/5786 Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src/core/CPP')
-rw-r--r--src/core/CPP/CPPTypes.cpp41
1 files changed, 36 insertions, 5 deletions
diff --git a/src/core/CPP/CPPTypes.cpp b/src/core/CPP/CPPTypes.cpp
index edcb9cb1ba..44cd000ada 100644
--- a/src/core/CPP/CPPTypes.cpp
+++ b/src/core/CPP/CPPTypes.cpp
@@ -36,6 +36,12 @@ struct CPUInfo::Impl
unsigned int L2_cache_size = 262144;
};
+CPUInfo &CPUInfo::get()
+{
+ static CPUInfo _cpuinfo;
+ return _cpuinfo;
+}
+
CPUInfo::CPUInfo()
: _impl(std::make_unique<Impl>())
{
@@ -49,11 +55,6 @@ unsigned int CPUInfo::get_cpu_num() const
return _impl->info.num_cpus();
}
-bool CPUInfo::has_sve() const
-{
- return _impl->info.has_sve();
-}
-
bool CPUInfo::has_fp16() const
{
return _impl->info.has_fp16();
@@ -64,11 +65,41 @@ bool CPUInfo::has_bf16() const
return _impl->info.has_bf16();
}
+bool CPUInfo::has_svebf16() const
+{
+ return _impl->info.has_svebf16();
+}
+
bool CPUInfo::has_dotprod() const
{
return _impl->info.has_dotprod();
}
+bool CPUInfo::has_svef32mm() const
+{
+ return _impl->info.has_svef32mm();
+}
+
+bool CPUInfo::has_i8mm() const
+{
+ return _impl->info.has_i8mm();
+}
+
+bool CPUInfo::has_svei8mm() const
+{
+ return _impl->info.has_svei8mm();
+}
+
+bool CPUInfo::has_sve() const
+{
+ return _impl->info.has_sve();
+}
+
+bool CPUInfo::has_sve2() const
+{
+ return _impl->info.has_sve2();
+}
+
CPUModel CPUInfo::get_cpu_model() const
{
return _impl->info.cpu_model();