While running sgx (software guarded extension) code than I got error as CPU not supported sgx - linux-kernel

I have problem related sgx extension
My Intel processor version is intel core i5-6300U CPU #2.40Ghz 2.50Ghz
In Google when I search these above processor specification than in specs it shows that intel sgx is supported but while running utils/linux/test-sgx
It shows sgx available:0 and while running sgx related code than I got error as cpu not supported sgx

Step 1: check using this tool that your CPU actually supports SGX instruction set.
Step 2: check your BIOS, it's very likely that you need to enable SGX manually.

Related

How many cp14 debug units has a dual-core arm

If we have a dual-core ARM CPU, does that mean we also have all COprocessors as "dual-cored"?
I mean, do we have two sets of cp14 or cp15 registers in this case?
Thank you!
I believe each core would have the same debug hw registers IF the maker of the SOC device compiled that silicon IP into each core (which is likely). You'll have to interrogate each core to see if it's supported. Then you'd have to execute the instructions accessing CP14 etc from the core in question (to access its CP14)

ARM big.LITTLE Performance Counters

I have recently purchased a development board utilizing Samsung Exynos5422 application processor (Cortex™-A15 2.0Ghz quad core and Cortex™-A7 quad core CPUs). I have tried to extract the performance counters in android using perf v3.0.8; however, none of the counters outputs a value (They are all "not counted"). Does anyone know how to solve this issue?
(The kernel version is 3.10.9)

Linux kernel 3.9 KVM for ARM processor

Linux kernel 3.9 support ARM processor for KVM. (http://kernelnewbies.org/Linux_3.9)
There should be CPU H/W support for KVM such as Intel VT or AMD-V. So, my questions are:
What kind of ARM processors can be used for KVM?
What ARM technologies enables KVM on ARM?
Best Regards.
I found this information from Linux kernel commits (http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=749cf76c5a363e1383108a914ea09530bfa0bd43).
Only supported core is Cortex-A15 for now.
And, ARM Coretex A15 provides H/W Virtualization Extension and LPAE(Large Physical Address Extension). Please see this document for more information.
I collected some related information in my blog. It's written in Korean, but you can use Google translate.

Install AMD OpenCL CPU driver with an Nvidia graphic card

I have seen this question many times but never found an answer for Windows.
I recently ported my CUDA code to OpenCL.
When testing with an ATI card, the Catalyst drivers contain a CPU OpenCL driver, hence I can run the OpenCL code on the CPU.
When testing with an NVIDIA card, there is no driver for the CPU.
Question is: how can I install (and deploy) a CPU driver when running with an Nvidia card?
Thanks a lot
To use OpenCL on CPU you don't need any driver, you only need OpenCL runtime that supports CPU, which (in case of AMD/ATI) is part of APP SDK. It could be installed no matter what GPU you have. Your end-users would also have to install the APP SDK: currently, there is no way to install OpenCL runtime only.
If you have Intel CPU, you better try Intel OpenCL SDK, which has separate installer. However, AMD APP SDK works on Intel CPUs quite well, but note vice versa.

How to turn off Turbo Boost temporarily?

In our application we have many versions of the same routine optimized for different kind of processor architectures. During install we run performance tests and select the best version of routine.
Latest processors can boost their frequencies if few cores are in use, so sometimes our tests peeking wrong version of routine. Is there some way to temporarily turn off Turbo Boost?
I don't know the opcode for enabling/disabling turbo boost directly, but apparently it's possible because TMonitor - which is a Windows application - can do it at runtime.
There are MSR registers (https://en.wikipedia.org/wiki/Model-specific_register) in Intel CPUs to disable/enable per-core turbo boost. In linux, there are msr-tools package which allow root to read/write to MSR registers. There are two posts about Turbo Boost disabling/enabling in Linux:
https://askubuntu.com/questions/619875/disabling-intel-turbo-boost-in-ubuntu "Disabling Intel Turbo Boost in ubuntu", answer by Maythux from 2015
http://luisjdominguezp.tumblr.com/post/19610447111/disabling-turbo-boost-in-linux
Disabling Turbo Boost in Linux, Luis J. Dominguez P, 2012-2013; Sandy Bridge - "38th bit of the 0x1a0 register."
http://notepad2.blogspot.com/2014/11/a-script-to-turn-off-intel-cpu-turbo.html
And there is kext for OSX to do the same: Disable Turbo Boost on Core i7 Mac?
In windows OS you can add the following reg key.
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\be337238-0d82-4146-a960-4f3749d470c7]
"Attributes"=dword:00000002
Then in advanced power settings you will get new option that allows you turning off turbo boost.

Resources