Cenos 6 下通过latencytop了解系统延迟
来源:互联网 发布:c strchr(const 源码 编辑:程序博客网 时间:2024/06/18 18:18
LatencyTOP 是一个可对系统传输延迟时间进行检测的工具。
安装环境
Centos 6.4
Vmware esxi 5.5
mysql 5.7
latencytop 0.5
安装步骤
修改内核配置文件,重新编译内核
CONFIG_HAVE_LATENCYTOP_SUPPORT=yCONFIG_LATENCYTOP=y
获取源码包
tar -zxvf latencytop-0.5.tar.gzcd latencytop-0.5vi Makefile# FIXME: Use autoconf ?#HAS_GTK_GUI = 1 //注销改行DESTDIR =SBINDIR = /usr/sbinXCFLAGS = -W -g `pkg-config --cflags glib-2.0` -D_FORTIFY_SOURCE=2 -Wno-sign-compareLDF = -Wl,--as-needed `pkg-config --libs glib-2.0` -lncurseswOBJS= latencytop.o text_display.o translate.o fsync.oifdef HAS_GTK_GUI XCFLAGS += `pkg-config --cflags gtk+-2.0` -DHAS_GTK_GUI LDF += `pkg-config --libs gtk+-2.0` OBJS += gtk_display.oendif## The w in -lncursesw is not a typo; it is the wide-character version# of the ncurses library, needed for multi-byte character languages# such as Japanese and Chinese etc.## On Debian/Ubuntu distros, this can be found in the# libncursesw5-dev package.## We write explicity this "implicit rule"%.o : %.c gcc -c $(CFLAGS) $(XCFLAGS) $< -o $@latencytop: $(OBJS) latencytop.h Makefile gcc $(CFLAGS) $(OBJS) $(LDF) -o latencytopclean: rm -f *~ latencytop DEADJOE *.oinstall: latencytop mkdir -p $(DESTDIR)/usr/share/latencytop install -m 0644 latencytop.trans $(DESTDIR)/usr/share/latencytop/latencytop.trans install -m 0644 *.png $(DESTDIR)/usr/share/latencytop/ install -m 0755 latencytop $(DESTDIR)$(SBINDIR)/
安装latencytop
makemake install
运行latencytop
./latencytop --nogui LatencyTOP version 0.5 (C) 2008 Intel Corporation Cause Maximum Percentagefsync() on a file (type 'F' for details) 60.9 msec 15.5 %Reading from file 16.0 msec 6.1 %Waiting for data on unix socket 5.0 msec 58.3 %Receiving TCP/IP data 5.0 msec 10.0 %Userspace lock contention 4.9 msec 9.5 %Waiting for a process to die 4.5 msec 0.2 %Waiting for event (select) 3.6 msec 0.4 %Marking inode dirty 0.4 msec 0.0 %synchronous write 0.2 msec 0.0 %Process mysqld (1519) Total: 677.4 msec fsync() on a file (type 'F' for details) 60.9 msec 67.9 %Reading from file 16.0 msec 26.7 %Userspace lock contention 3.6 msec 3.8 %Waiting for data on unix socket 0.9 msec 1.5 %
latencytop.trans告诉你,我们也可以自己修改这个文件,把新的延迟原因加上去
#1vfs_readReading from file1vfs_writeWriting to file1__mark_inode_dirtyMarking inode dirty1vfs_readdirReading directory content1vfs_unlinkUnlinking file1blocking_notifier_call_chainBlocking notifier1lock_superSuperblock lock contention1vfs_createCreating a file#2__breadSynchronous buffer read2do_generic_mapping_readReading file data2sock_sendmsgSending data over socket2do_sys_openOpening file2do_sys_pollWaiting for event (poll)2core_sys_selectWaiting for event (select)2proc_reg_readReading from /proc file2__pollwaitWaiting for event (poll)2sys_fcntlFCNTL system call2scsi_error_handlerSCSI error handler2proc_root_readdirReading /proc directory2ksoftirqdWaking ksoftirqd2worker_thread.2do_unlinkatUnlinking file2__wait_on_bufferWaiting for buffer IO to complete2pdflushpdflush() kernel thread2kjournaldkjournald() kernel thread2blkdev_ioctlblock device IOCTL2kauditd_threadkernel audit daemon2tty_ioctlTTY IOCTL2__filemap_fdatawrite_range fdatasync system call2do_sync_writesynchronous write2kthreaddkthreadd kernel thread2usb_port_resumeWaking up USB device2usb_autoresume_deviceWaking up USB device2kswapdkswapd() kernel thread2md_threadRaid resync kernel thread2i915_wait_requestWaiting for GPU command to complete2request_moduleLoading a kernel module#3tty_wait_until_sentWaiting for TTY to finish sending3pipe_readReading from a pipe3pipe_writeWriting to a pipe3pipe_waitWaiting for pipe data3read_block_bitmapReading EXT3 block bitmaps3scsi_execute_reqExecuting raw SCSI command3sys_wait4Waiting for a process to die3sr_media_changeChecking for media change3sr_do_ioctlSCSI cdrom ioctl3sd_ioctlSCSI disk ioctl3sr_cd_checkChecking CDROM media present3ext3_read_inodeReading EXT3 inode3htree_dirblock_to_treeReading EXT3 directory htree3ext3_readdirReading EXT3 directory3ext3_breadSynchronous EXT3 read3ext3_free_branchesUnlinking file on EXT33ext3_get_branchReading EXT3 indirect blocks3ext3_find_entryEXT3: Looking for file3__ext3_get_inode_locReading EXT3 inode3ext3_delete_inodeEXT3 deleting inode3sync_pageWriting a page to disk3tty_pollWaiting for TTY data3tty_readWaiting for TTY input3tty_writeWriting data to TTY3update_atimeUpdating inode atime3page_cache_sync_readaheadPagecache sync readahead3do_forkFork() system call3sys_mkdiratCreating directory3lookup_createCreating file3inet_sendmsgSending TCP/IP data3tcp_recvmsgReceiving TCP/IP data3link_path_walkFollowing symlink3path_walkWalking directory tree3sys_getdentsReading directory content3unix_stream_recvmsgWaiting for data on unix socket3ext3_mkdirEXT3: Creating a directory3journal_get_write_accessEXT3: Waiting for journal access3synchronize_rcuWaiting for RCU3input_close_deviceClosing input device3mousedev_close_deviceClosing mouse device3mousedev_releaseClosing mouse device3mousedev_openOpening mouse device3kmsg_readReading from dmesg3sys_futexUserspace lock contention3do_futexUserspace lock contention3vt_waitactivevt_waitactive IOCTL3acquire_console_semWaiting for console access3filp_closeClosing a file3sync_inode(f)syncing an inode to disk3ata_exec_internal_sgExecuting internal ATA command3writeback_inodesWriting back inodes3ext3_orphan_add EXT3 adding orphan3ext3_mark_inode_dirty EXT3 marking inode dirty3ext3_unlink EXT3 unlinking file3ext3_createEXT3 Creating a file3log_do_checkpointEXT3 journal checkpoint3generic_delete_inodeDeleting an inode3proc_delete_inodeRemoving /proc file3do_truncateTruncating file3sys_execveExecuting a program3journal_commit_transactionEXT3: committing transaction3__stop_machine_runFreezing the kernel (for module load)3sys_munmapunmapping memory3sys_mmapmmaping memory3sync_bufferWriting buffer to disk (synchronous)3inotify_inode_queue_eventInotify event3proc_lookupLooking up /proc file3generic_make_requestCreating block layer request3get_request_waitCreating block layer request3alloc_page_vmaAllocating a VMA#3__d_lookupLooking up a dentry3blkdev_direct_IODirect block device IO3sys_mprotectmprotect() system call3shrink_icache_memoryreducing inode cache memory footprint3vfs_stat_fdstat() operation3cdrom_openopening cdrom device3sys_epoll_waitWaiting for event (epoll)3sync_sb_inodesSyncing inodes3tcp_connectTCP/IP connect3ata_scsi_ioctlATA/SCSI disk ioctl3do_rmdirRemoving directory3vfs_rmdirRemoving directory3sys_flockflock() on a file3usbdev_openopening USB device3lock_kernelBig Kernel Lock contention3blk_execute_rqSubmitting block IO3scsi_cmd_ioctlSCSI ioctl command3acpi_ec_transactionACPI hardware access3journal_get_undo_accessWaiting for EXT3 journal undo operation3i915_irq_waitWaiting for GPU interrupt3i915_gem_throttle_ioctlThrottling GPU while waiting for commands##5do_page_faultPage fault5handle_mm_faultPage fault5filemap_faultPage fault5sync_filesystemsSyncing filesystem5sys_nanosleepApplication requested delay5sys_pauseApplication requested delay5evdev_readReading keyboard/mouse input5do_fsyncfsync() on a file (type 'F' for details)5__log_wait_for_spaceWaiting for EXT3 journal space
- Cenos 6 下通过latencytop了解系统延迟
- latencytop深度了解你的Linux系统的延迟
- latencytop深度了解你的Linux系统的延迟
- latencytop深度了解你的Linux系统的延迟
- latencytop深度了解你的Linux系统的延迟
- Cenos系统VPS下架设VPN
- CenOS 下安装OpenVPN
- CenOS下安装jdk
- Cenos下中文输入法
- cenos下常用命令
- Cenos 系统进不去 方法大全
- cenos下静态ip配置
- cenos 6.4下安装phpmotion
- cenos下pip的安装
- cenos
- 36. LatencyTOP
- 通过proc了解linux系统信息
- CenOS下mysql5.6修改字符编码,解决sql语句中带有中文,会乱码问题
- 常见JedisConnectionException异常分析
- PM Related Topic 3
- 安装VMware-tools出现initctl: Job failed to start
- PM Related Topic 4
- javascript 上传图片前预览图片
- Cenos 6 下通过latencytop了解系统延迟
- nyoj_448(贪心--初步)
- PM Related Topic 5
- 为何软件开发的实际周期总是比预期的要长两三倍?
- 键值编码和键值观察
- 一淘点评情感分析方法及应用场景
- .NET WinForm下StatusStrip控件如何设置分隔线及部分子控件右对齐
- Documentation/memory-devices/ti-emif.txt
- 超级记事本([IOI2012]龙虾抄写器-字典树)