lkml.org 
[lkml]   [2000]   [Mar]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subjectdo_softirq(): very high value with readprofile
I did some profiling:
* apache-2.0
* linux-2.3.51, spinlock & waitqueue debugging disabled
* serving one static 100 byte file to 20 clients
* no modules, everything static
* kernel compiled with egcs-1.12 for Pentium/TSC
* PCI ne2000.
* Dual PII/350

linux-2.2.14: ~500 files/sec
linux-2.3.51: ~850 files/sec
W2K: ~ 1000 files/sec

I've attached a 'readprofile' dump, and the do_softirq() value is far to
high: ~ 20%!

I checked the asm output, and everything seemed to be ok.
softirq_state is correct [active=0, mask=15 for all cpu's].

--
Manfred 4 startup_32 0.0244
1796 default_idle 34.5385
2 cpu_idle 0.0278
6 __switch_to 0.0294
2 __down 0.0075
3 __write_lock_failed 0.1071
1 __read_lock_failed 0.0357
2 sys_rt_sigsuspend 0.0076
1 restore_sigcontext 0.0023
1 setup_sigcontext 0.0033
5 setup_frame 0.0121
3 handle_signal 0.0115
14 do_signal 0.0201
31 system_call 0.5536
1 ret_from_sys_call 0.0385
2 ret_with_reschedule 0.1250
3 restore_all 0.2143
1 error_code 0.0179
4 page_fault 0.3333
115 enable_irq 0.6250
155 save_v86_state 0.3837
6 do_gettimeofday 0.0484
3 old_mmap 0.0076
32 flush_tlb_others 0.1159
1 flush_tlb_current_task 0.0179
1 flush_tlb_mm 0.0074
1 do_check_pgt_cache 0.0031
4 do_page_fault 0.0042
8 send_sig_info 0.0110
2 kill_something_info 0.0069
3 sys_rt_sigprocmask 0.0065
47 schedule 0.0207
40 __wake_up 0.0549
1 interruptible_sleep_on 0.0086
9 wake_up_process 0.0154
1 supplemental_group_member 0.0208
2 in_group_p 0.0500
1 sys_gettimeofday 0.0068
1008 do_softirq 7.4118
2 add_timer 0.0086
16 mod_timer 0.0656
8 del_timer_sync 0.0667
3 zap_page_range 0.0060
4 do_no_page 0.0208
1 handle_mm_fault 0.0023
9 do_mmap_pgoff 0.0092
1 get_unmapped_area 0.0089
1 avl_rebalance 0.0028
6 avl_remove 0.0273
8 find_vma 0.0800
5 find_vma_prev 0.0291
1 free_pgtables 0.0071
7 do_munmap 0.0119
2 sys_munmap 0.0333
3 insert_vm_struct 0.0080
6 __find_get_page 0.0146
1 filemap_nopage 0.0011
4 generic_file_mmap 0.0312
21 kmem_cache_alloc 0.0583
17 kmem_cache_free 0.0409
68 kmalloc 0.1650
63 kfree 0.1358
17 __free_pages_ok 0.0287
25 __alloc_pages 0.0327
2 free_page_and_swap_cache 0.0156
10 get_unused_fd 0.0253
4 sys_open 0.0105
3 filp_close 0.0288
13 do_close 0.0428
1 sys_close 0.0625
3 sys_lseek 0.0082
3 sys_read 0.0112
5 sys_write 0.0187
18 get_empty_filp 0.0511
1 init_private_file 0.0093
4 _fput 0.0222
1 put_filp 0.0125
2 file_move 0.0312
1 cp_new_stat 0.0030
5 sys_newstat 0.0260
4 getname 0.0141
5 permission 0.0184
2 reserved_lookup 0.0278
1 cached_lookup 0.0119
3 do_follow_link 0.0234
14 lookup_dentry 0.0282
1 __namei 0.0078
1 open_namei 0.0015
1 setfl 0.0089
44 sys_fcntl 0.0724
1 alloc_wait 0.0027
7 free_wait 0.0337
5 __pollwait 0.0403
4 max_select_fd 0.0213
18 do_select 0.0238
10 sys_select 0.0073
15 do_pollfd 0.0560
1 do_poll 0.0050
5 sys_poll 0.0041
1 locks_wake_up_blocks 0.0096
26 fcntl_setlk 0.0586
1 locks_remove_posix 0.0068
1 locks_remove_flock 0.0064
9 posix_make_lock 0.0381
21 posix_lock_file 0.0256
2 locks_empty_lock 0.1250
4 locks_init_lock 0.0323
3 locks_insert_lock 0.0682
5 locks_delete_lock 0.0446
9 dput 0.0274
2 d_alloc 0.0061
7 d_lookup 0.0330
1 clear_inode 0.0046
1 get_empty_inode 0.0066
4 iput 0.0063
1 write_profile 0.0060
1 secure_tcp_sequence_number 0.0046
82 ei_start_xmit 0.0765
33 NS8390_trigger_send 0.2661
324 ne2k_pci_block_output 0.6983
1 move_addr_to_user 0.0119
1 sock_map_fd 0.0047
3 sockfd_lookup 0.0160
2 sock_sendmsg 0.0122
3 sock_recvmsg 0.0170
2 sock_write 0.0116
2 sock_poll 0.0147
1 sock_close 0.0064
7 sock_fasync 0.0104
1 sock_wake_async 0.0078
1 sock_create 0.0037
1 sys_setsockopt 0.0081
4 sys_socketcall 0.0085
6 sock_wfree 0.1154
1 sock_rfree 0.0625
10 sock_wmalloc 0.1250
3 sock_alloc_send_skb 0.0167
1 sock_def_wakeup 0.0167
3 sock_def_write_space 0.0242
4 alloc_skb 0.0096
8 kfree_skbmem 0.0588
27 __kfree_skb 0.0951
8 skb_clone 0.0317
1 memcpy_toiovec 0.0093
9 dev_queue_xmit 0.0230
14 net_tx_action 0.0530
23 net_rx_action 0.0386
18 qdisc_restart 0.0469
11 pfifo_fast_enqueue 0.0982
8 pfifo_fast_dequeue 0.0952
13 ip_route_input 0.0361
13 ip_route_output 0.0406
1 unlink_from_unused 0.0093
5 inet_getpeer 0.0096
14 ip_local_deliver 0.0443
13 ip_rcv 0.0150
3 ip_build_and_send_pkt 0.0074
6 ip_output 0.0214
14 ip_queue_xmit 0.0141
4 ip_build_xmit 0.0052
1 ip_reply_glue_bits 0.0051
5 tcp_poll 0.0174
7 tcp_write_space 0.0603
1 tcp_listen_write_space 0.2500
17 tcp_sendmsg 0.0068
2 cleanup_rbuf 0.0069
12 tcp_recvmsg 0.0058
2 tcp_destroy_sock 0.0045
13 tcp_close 0.0078
6 tcp_accept 0.0144
5 tcp_setsockopt 0.0038
3 tcp_event_data_recv 0.0090
4 tcp_update_metrics 0.0118
2 tcp_init_metrics 0.0055
5 tcp_parse_options 0.0105
1 tcp_fast_retrans 0.0019
11 tcp_clean_rtx_queue 0.0340
3 tcp_ack_saw_tstamp 0.0101
13 tcp_ack 0.0113
1 tcp_paws_check 0.0132
1 tcp_timewait_state_process 0.0013
5 __tcp_tw_hashdance 0.0179
3 tcp_time_wait 0.0058
1 tcp_data 0.0040
8 tcp_rcv_established 0.0038
15 tcp_create_openreq_child 0.0136
6 tcp_check_req 0.0069
1 tcp_child_process 0.0071
17 tcp_rcv_state_process 0.0075
25 tcp_transmit_skb 0.0170
4 tcp_send_skb 0.0081
1 tcp_sync_mss 0.0078
3 tcp_write_xmit 0.0045
7 __tcp_select_window 0.0486
2 tcp_send_fin 0.0025
4 tcp_make_synack 0.0042
1 tcp_send_ack 0.0069
2 tcp_init_xmit_timers 0.0096
14 tcp_reset_xmit_timer 0.0368
5 tcp_clear_xmit_timers 0.0240
9 tcp_tw_schedule 0.0237
2 tcp_reset_keepalive_timer 0.0161
2 tcp_put_port 0.0122
2 tcp_unhash 0.0093
2 __tcp_v4_lookup_listener 0.0185
1 tcp_v4_search_req 0.0068
2 tcp_v4_synq_add 0.0096
4 tcp_v4_send_check 0.0400
2 tcp_v4_send_ack 0.0064
2 tcp_v4_timewait_ack 0.0278
2 tcp_v4_route_req 0.0132
2 tcp_v4_send_synack 0.0106
5 tcp_v4_conn_request 0.0047
10 tcp_v4_syn_recv_sock 0.0134
1 tcp_v4_hnd_req 0.0026
8 tcp_v4_checksum_init 0.0303
8 tcp_v4_do_rcv 0.0312
28 tcp_v4_rcv 0.0198
3 tcp_v4_remember_stamp 0.0112
3 tcp_v4_tw_remember_stamp 0.0156
2 inet_sock_release 0.0135
1 inet_release 0.0125
7 inet_accept 0.0199
3 inet_getname 0.0242
1 inet_sendmsg 0.0147
1 ip_mc_drop_socket 0.0086
7 csum_partial 0.0449
8 csum_partial_copy_generic 0.0364
5 __generic_copy_to_user 0.0833
4 __generic_copy_from_user 0.0667
6 strncpy_from_user 0.0750
5029 total 0.0050



\
 
 \ /
  Last update: 2005-03-22 13:57    [W:0.057 / U:0.024 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site