I have an application that runs just as fine on a 6 and 8 cores in the fields after having test it w/the Inspector XE for long time.
I need to produce a scaled down application that runs on 2 cores, also (small laptop)
It runs fine as long the debugger is present (I was told).
Stand alone it does not.
I believe then I got to have some race condition of some sort or something else un-noticed till I start to run inthis environement where 2 cores only are present.
Here the questions: (I only have a dual quad Xeon machine to develop on, on hand).
Q1: Can I scale back the process environment for my application making it believe that it hasonly 2 cores of the 8 to available,by working on the Affinity mask ? FYI: Notusing TBB, Open-MP or anything else- I use my own pool of threads to run in parallel by acting on a value Iset via registry.
Q2: would the Inspector XE take advantage of the remaining cores or not for its house-keeping, analysis?
Q3: any better ideas ?
Thanks to everyone for any hints or better ideas you can supply
If I understood correctly - you hope to run application on 2 of 8 cores (via CPU affinity in code, or else), and hope that Inspector XE works on remaining (other) cores.
1.By default, I think that InspectorXE maywork on2 cores where application runs, if OS scheduler allows to do this. Inspector XE will use all available 8 cores fairly if they are not busy.
2. Inspector XE only checks memory access error and thread error, their issuesare not core relevant. If you have concerns on performance (overhead) caused by Inspector XE, I can understand but it will not change the Inspector XE results.
3. If you want tobindInspector XE process to specific CPUn:
(ensure schedutils has been installed. If not, use "yum install schedutils" or "apt-get install schedutils")
a) Run Inspxe-gui; get pid
b) taskset 0x00000001 -ppid; bind Inspxe-gui on CPU0