Software Tuning, Performance Optimization & Platform Monitoring
Discussion regarding monitoring and software tuning methodologies, Performance Monitoring Unit (PMU) of Intel microprocessors, and platform updating.
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.

PCM can not work with suse11 sp1

Wang_Ruifeng
Beginner
1,464 Views
Hi all: I have a server with E5504 processor and it's OS is Suse 11 sp1 customized,whitch with no graphic lib,and glibc version is lib-2.7.so. I want to use PCM to get L1/L2 cache hit rate and IPC to performance system. But after I installed PCM, I ececute the command ./pcm.x 1 -ns, the screen is hang and i can do nothing. Ctrl +c can not stop it. and CPU utilization of core 0~2 become 99%. when I use linux strace to follow the system call, It's show this: umask(0) = 022 statfs("/dev/shm", {f_type=0x858458f6, f_bsize=4096, f_blocks=0, f_bfree=0, f_bavail=0, f_files=0, f_ffree=0, f_fsid={0, 0}, f_namelen=255, f_frsize=4096}) = 0 brk(0) = 0x62c000 brk(0x64d000) = 0x64d000 open("/proc/mounts", O_RDONLY) = 4 fstat(4, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f0ece909000 read(4, "rootfs / rootfs rw 0 0\n/proc /pr"..., 1024) = 929 read(4, "", 1024) = 0 close(4) = 0 munmap(0x7f0ece909000, 4096) = 0 futex(0x7f0ece6f22b8, 0x81 /* FUTEX_??? */, 2147483647) = 0 It's looks like hang to this line futex(). I also get the log: PCM::PCM() : UnsupportedMessage("Error: unsupported processor. Only Intel(R) processors are supported (Atom(R) and microarchitecture codename Nehalem, Westmere, Sandy Bridge and Ivy Bridge)."), cpu_family(-1), cpu_model(-1), threads_per_core(0), num_cores(0), num_sockets(0), core_gen_counter_num_max(0), core_gen_counter_num_used(0), // 0 means no core gen counters used core_gen_counter_width(0), core_fixed_counter_num_max(0), core_fixed_counter_num_used(0), core_fixed_counter_width(0), uncore_gen_counter_num_max(8), uncore_gen_counter_num_used(0), uncore_gen_counter_width(48), uncore_fixed_counter_num_max(1), uncore_fixed_counter_num_used(0), uncore_fixed_counter_width(48), perfmon_version(0), perfmon_config_anythread(1), nominal_frequency(0), qpi_speed(0), pkgThermalSpecPower(-1), pkgMinimumPower(-1), pkgMaximumPower(-1), MSR(NULL), jkt_uncore_pci(NULL), clientBW(NULL), clientImcReads(NULL), clientImcWrites(NULL), mode(INVALID_MODE), disable_JKT_workaround(false), canUsePerf(false) I found file cpucounterstest.cpp , add print log to trace, finally found CPU stay on this code - PCM * m = PCM::getInstance(); so I want to know why PCM stay ? and how to let PCM work rightly. thanks Ruifeng.
0 Kudos
9 Replies
Tongliang_L_
Beginner
1,464 Views

what's your PCM version?

As the log , it seems that the PCM can not recognize your CPU. You can trace the code and print your CPU Model which PCM can found.

In my PCM 2.5.1  I can find the reference codes in cpucounter.cpp from Line 356 to Line 357.

0 Kudos
Wang_Ruifeng
Beginner
1,464 Views

thank your reply Tongliang.

My PCM version is 2.4.

As contrast, I installed PCM v2.4 on this server(processor is xeon E5504) but OS is standard Suse11 sp1, it can work rightly, so i wondered if the suse OS is the problem, but i can not know how to bypass this case and let my PCM run rightly on my coustomized suse11 sp1.

Anybody meet the same issue?

0 Kudos
Patrick_F_Intel1
Employee
1,463 Views

Hello Tongliang,

It looks like you have nehalem-EP which should be supported by PCM. Can you try the current version of PCM: version 2.5.1 ?

Pat

0 Kudos
Wang_Ruifeng
Beginner
1,463 Views

Hello pat,

I try the version 2.5.1,it's also hang this command when i input "./pcm.x 1 -ns", and i try the processor Xeon E5645, the same as E5504.

0 Kudos
Patrick_F_Intel1
Employee
1,463 Views

I'm not sure what is going on but I have a couple of questions.

Are you running as root?

Are you running under native Suse or are you running in a virtual machine?

0 Kudos
Tongliang_L_
Beginner
1,463 Views

Sorry, guys,I don't have a nehalem-EP platform.

I try PCM 2.5.1 on my nehalem-EX platform which have eight Xeon E6540 processors and westmere-EP platform which have two Intel E5620 processors, the PCM can work normally on both.

0 Kudos
Patrick_F_Intel1
Employee
1,463 Views

Hello Tongliang,

I'm sorry... I should have said that it looks like Wang has a Nehalem-EP.

Pat

Tongliang L. wrote:

Sorry, guys,I don't have a nehalem-EP platform.

I try PCM 2.5.1 on my nehalem-EX platform which have eight Xeon E6540 processors and westmere-EP platform which have two Intel E5620 processors, the PCM can work normally on both.

0 Kudos
Roman_D_Intel
Employee
1,463 Views

Hi,

I don't see any PCM output here. I only see source code (but you wanted to post log/output?).

This reminds me this issue: http://software.intel.com/en-us/forums/topic/279776

It could happen because of an unclean shutdown of previous pcm run (if killed with -9 for example). The solution is a reboot or cleaning PCM semaphore state:

1. press Ctrl-Z to send pcm.x into background
2. killall -9 pcm.x
3. rm -rf /dev/shm/sem.*Intel*

Does it help?

Roman

0 Kudos
Tongliang_L_
Beginner
1,463 Views

Hi, Roman, your solution is exactly useful for me

Thank you very much.

0 Kudos
Reply