mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [BUG] perf failed on multi-cpus system with multi-events specified
@ 2011-03-02  3:58 Han Pingtian
  2011-03-02  4:35 ` Eric Dumazet
  2011-03-02  9:38 ` Peter Zijlstra
  0 siblings, 2 replies; 5+ messages in thread
From: Han Pingtian @ 2011-03-02  3:58 UTC (permalink / raw)
  To: linux-kernel; +Cc: Arnaldo Carvalho de Melo, Peter Zijlstra

Hi,

On a Nehalem-EX system, which has 24 CPUs, perf commands with
multi-events specified fail:

[root@intel-s3e36-01 perf]# ./perf record -e syscalls:sys_enter_sched_get_priority_min  -e kmem:mm_kernel_pagefault  -e workqueue:workqueue_execution  -e writeback:writeback_pages_written  -e kmem:mm_kernel_pagefault  -e writeback:writeback_bdi_unregister  -e syscalls:sys_exit_capset  -e syscalls:sys_enter_sched_get_priority_min  -e writeback:writeback_exec  -e syscalls:sys_enter_vmsplice  -e syscalls:sys_exit_mprotect  -e block:block_rq_complete  -e syscalls:sys_enter_readlinkat  -e signal:signal_overflow_fail  -e syscalls:sys_exit_sendfile64  -e block:block_bio_backmerge  -e syscalls:sys_exit_unlink  -e syscalls:sys_exit_keyctl  -e jbd2:jbd2_submit_inode_data  -e syscalls:sys_enter_tgkill  -e syscalls:sys_exit_lremovexattr  -e syscalls:sys_exit_munmap  -e syscalls:sys_enter_mmap  -e syscalls:sys_exit_sched_getparam  -e syscalls:sys_exit_getpgid  -e syscalls:sys_exit_clock_getres  -e block:block_split  -e ext4:ext4_mballoc_discard  -e task-clock  -e syscalls:sys_enter_sendfile64  -e syscalls:sys_enter_ptrace  -e syscalls:sys_enter_nanosleep  -e syscalls:sys_exit_setdomainname  -e writeback:writeback_nowork  -e syscalls:sys_exit_mbind  -e ext4:ext4_da_write_begin  -e syscalls:sys_enter_recvfrom  -e syscalls:sys_enter_write  -e syscalls:sys_exit_getresgid  -e syscalls:sys_exit_fsync  -e syscalls:sys_enter_rt_sigprocmask  -e syscalls:sys_enter_getdents  -e syscalls:sys_exit_semtimedop -f ls

  Error: sys_perf_event_open() syscall returned with -1 (Too many open files).  /bin/dmesg may provide additional information.

  Fatal: No CONFIG_PERF_EVENTS=y kernel support configured?

trace-cmd: Too many open files
  No memory to alloc tracepoints list
[root@intel-s3e36-01 perf]# ./perf --version
perf version 2.6.38.rc6.166.g493f33
[root@intel-s3e36-01 perf]#

On another latop which has only two CPUs, there is no this problem.
-- 
Han Pingtian
Quality Engineer
hpt @ #kernel-qe
Red Hat, Inc
Freedom ... courage ... Commitment ... ACCOUNTABILITY

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [BUG] perf failed on multi-cpus system with multi-events specified
  2011-03-02  3:58 [BUG] perf failed on multi-cpus system with multi-events specified Han Pingtian
@ 2011-03-02  4:35 ` Eric Dumazet
  2011-03-02  6:32   ` Han Pingtian
  2011-03-02  9:38 ` Peter Zijlstra
  1 sibling, 1 reply; 5+ messages in thread
From: Eric Dumazet @ 2011-03-02  4:35 UTC (permalink / raw)
  To: Han Pingtian; +Cc: linux-kernel, Arnaldo Carvalho de Melo, Peter Zijlstra

Le mercredi 02 mars 2011 à 11:58 +0800, Han Pingtian a écrit :
> Hi,
> 
> On a Nehalem-EX system, which has 24 CPUs, perf commands with
> multi-events specified fail:
> 
> [root@intel-s3e36-01 perf]# ./perf record -e
> syscalls:sys_enter_sched_get_priority_min  -e kmem:mm_kernel_pagefault
> -e workqueue:workqueue_execution  -e writeback:writeback_pages_written
> -e kmem:mm_kernel_pagefault  -e writeback:writeback_bdi_unregister  -e
> syscalls:sys_exit_capset  -e syscalls:sys_enter_sched_get_priority_min
> -e writeback:writeback_exec  -e syscalls:sys_enter_vmsplice  -e
> syscalls:sys_exit_mprotect  -e block:block_rq_complete  -e
> syscalls:sys_enter_readlinkat  -e signal:signal_overflow_fail  -e
> syscalls:sys_exit_sendfile64  -e block:block_bio_backmerge  -e
> syscalls:sys_exit_unlink  -e syscalls:sys_exit_keyctl  -e
> jbd2:jbd2_submit_inode_data  -e syscalls:sys_enter_tgkill  -e
> syscalls:sys_exit_lremovexattr  -e syscalls:sys_exit_munmap  -e
> syscalls:sys_enter_mmap  -e syscalls:sys_exit_sched_getparam  -e
> syscalls:sys_exit_getpgid  -e syscalls:sys_exit_clock_getres  -e
> block:block_split  -e ext4:ext4_mballoc_discard  -e task-clock  -e
> syscalls:sys_enter_sendfile64  -e syscalls:sys_enter_ptrace  -e
> syscalls:sys_enter_nanosleep  -e syscalls:sys_exit_setdomainname  -e
> writeback:writeback_nowork  -e syscalls:sys_exit_mbind  -e
> ext4:ext4_da_write_begin  -e syscalls:sys_enter_recvfrom  -e
> syscalls:sys_enter_write  -e syscalls:sys_exit_getresgid  -e
> syscalls:sys_exit_fsync  -e syscalls:sys_enter_rt_sigprocmask  -e
> syscalls:sys_enter_getdents  -e syscalls:sys_exit_semtimedop -f ls
> 
>   Error: sys_perf_event_open() syscall returned with -1 (Too many open
> files).  /bin/dmesg may provide additional information.
> 
>   Fatal: No CONFIG_PERF_EVENTS=y kernel support configured?
> 
> trace-cmd: Too many open files
>   No memory to alloc tracepoints list
> [root@intel-s3e36-01 perf]# ./perf --version
> perf version 2.6.38.rc6.166.g493f33
> [root@intel-s3e36-01 perf]#
> 
> On another latop which has only two CPUs, there is no this problem.

perf needs nr_cpus * nr_events file descriptors

Try before :

ulimit -n 1000000




^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [BUG] perf failed on multi-cpus system with multi-events specified
  2011-03-02  4:35 ` Eric Dumazet
@ 2011-03-02  6:32   ` Han Pingtian
  0 siblings, 0 replies; 5+ messages in thread
From: Han Pingtian @ 2011-03-02  6:32 UTC (permalink / raw)
  To: Eric Dumazet; +Cc: linux-kernel, Arnaldo Carvalho de Melo, Peter Zijlstra

On Wed, Mar 02, 2011 at 05:35:30AM +0100, Eric Dumazet wrote:
> Le mercredi 02 mars 2011 à 11:58 +0800, Han Pingtian a écrit :
> > Hi,
> > 
> > On a Nehalem-EX system, which has 24 CPUs, perf commands with
> > multi-events specified fail:
> > 
> > [root@intel-s3e36-01 perf]# ./perf record -e
> > syscalls:sys_enter_sched_get_priority_min  -e kmem:mm_kernel_pagefault
> > -e workqueue:workqueue_execution  -e writeback:writeback_pages_written
> > -e kmem:mm_kernel_pagefault  -e writeback:writeback_bdi_unregister  -e
> > syscalls:sys_exit_capset  -e syscalls:sys_enter_sched_get_priority_min
> > -e writeback:writeback_exec  -e syscalls:sys_enter_vmsplice  -e
> > syscalls:sys_exit_mprotect  -e block:block_rq_complete  -e
> > syscalls:sys_enter_readlinkat  -e signal:signal_overflow_fail  -e
> > syscalls:sys_exit_sendfile64  -e block:block_bio_backmerge  -e
> > syscalls:sys_exit_unlink  -e syscalls:sys_exit_keyctl  -e
> > jbd2:jbd2_submit_inode_data  -e syscalls:sys_enter_tgkill  -e
> > syscalls:sys_exit_lremovexattr  -e syscalls:sys_exit_munmap  -e
> > syscalls:sys_enter_mmap  -e syscalls:sys_exit_sched_getparam  -e
> > syscalls:sys_exit_getpgid  -e syscalls:sys_exit_clock_getres  -e
> > block:block_split  -e ext4:ext4_mballoc_discard  -e task-clock  -e
> > syscalls:sys_enter_sendfile64  -e syscalls:sys_enter_ptrace  -e
> > syscalls:sys_enter_nanosleep  -e syscalls:sys_exit_setdomainname  -e
> > writeback:writeback_nowork  -e syscalls:sys_exit_mbind  -e
> > ext4:ext4_da_write_begin  -e syscalls:sys_enter_recvfrom  -e
> > syscalls:sys_enter_write  -e syscalls:sys_exit_getresgid  -e
> > syscalls:sys_exit_fsync  -e syscalls:sys_enter_rt_sigprocmask  -e
> > syscalls:sys_enter_getdents  -e syscalls:sys_exit_semtimedop -f ls
> > 
> >   Error: sys_perf_event_open() syscall returned with -1 (Too many open
> > files).  /bin/dmesg may provide additional information.
> > 
> >   Fatal: No CONFIG_PERF_EVENTS=y kernel support configured?
> > 
> > trace-cmd: Too many open files
> >   No memory to alloc tracepoints list
> > [root@intel-s3e36-01 perf]# ./perf --version
> > perf version 2.6.38.rc6.166.g493f33
> > [root@intel-s3e36-01 perf]#
> > 
> > On another latop which has only two CPUs, there is no this problem.
> 
> perf needs nr_cpus * nr_events file descriptors
> 
> Try before :
> 
> ulimit -n 1000000
It works. Thanks!
> 
> 

-- 
Han Pingtian
Quality Engineer
hpt @ #kernel-qe
Red Hat, Inc
Freedom ... courage ... Commitment ... ACCOUNTABILITY

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [BUG] perf failed on multi-cpus system with multi-events specified
  2011-03-02  3:58 [BUG] perf failed on multi-cpus system with multi-events specified Han Pingtian
  2011-03-02  4:35 ` Eric Dumazet
@ 2011-03-02  9:38 ` Peter Zijlstra
  2011-03-02 10:12   ` Han Pingtian
  1 sibling, 1 reply; 5+ messages in thread
From: Peter Zijlstra @ 2011-03-02  9:38 UTC (permalink / raw)
  To: Han Pingtian; +Cc: linux-kernel, Arnaldo Carvalho de Melo

On Wed, 2011-03-02 at 11:58 +0800, Han Pingtian wrote:
>   Error: sys_perf_event_open() syscall returned with -1 (Too many open
> files).  /bin/dmesg may provide additional information.

Well, you tried to use 42 events (quick count), we need to open a fd for
each cpu for each event, which results in 1008 fds, which together with
some actual file handles might have tickled your fd limit.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [BUG] perf failed on multi-cpus system with multi-events specified
  2011-03-02  9:38 ` Peter Zijlstra
@ 2011-03-02 10:12   ` Han Pingtian
  0 siblings, 0 replies; 5+ messages in thread
From: Han Pingtian @ 2011-03-02 10:12 UTC (permalink / raw)
  To: Peter Zijlstra; +Cc: linux-kernel, Arnaldo Carvalho de Melo

On Wed, Mar 02, 2011 at 10:38:36AM +0100, Peter Zijlstra wrote:
> On Wed, 2011-03-02 at 11:58 +0800, Han Pingtian wrote:
> >   Error: sys_perf_event_open() syscall returned with -1 (Too many open
> > files).  /bin/dmesg may provide additional information.
> 
> Well, you tried to use 42 events (quick count), we need to open a fd for
> each cpu for each event, which results in 1008 fds, which together with
> some actual file handles might have tickled your fd limit.
Got it. Thanks.

-- 
Han Pingtian
Quality Engineer
hpt @ #kernel-qe
Red Hat, Inc
Freedom ... courage ... Commitment ... ACCOUNTABILITY

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2011-03-02 10:09 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-03-02  3:58 [BUG] perf failed on multi-cpus system with multi-events specified Han Pingtian
2011-03-02  4:35 ` Eric Dumazet
2011-03-02  6:32   ` Han Pingtian
2011-03-02  9:38 ` Peter Zijlstra
2011-03-02 10:12   ` Han Pingtian

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®