Red Hat / Fedora :: How To Get Cpu Utilization Of Particular Process
May 6, 2009
How to get cpu utilization of particular process without using top command. I want programmatically C or C++.Top command source is large.I can't analyze where %cpu usage got.
Is there any command to get the memory utilization of a particular process in Linux?I tried with Top and /proc/pid/status commands but the results are not proper, the memory keeps on increasing.Can anyone tell other than Top and /proc/pid/status commands ?
Assume someone bind a particular process to a particular CPU core(In multi core machine) by using sched_setaffinity() like functions. Then how we can get that process running core id and CPU core utilisation of that process on that running CPU core(Pragmatically or by a Linux command)?.
- I am running with Oracle UEL 6.0 (2.6.32-100.28.5.el6) because stock RHEL 6.0 (2.6.32-71.el6 ) has issues with the async I/O driver.
- The test is a high throughput performance benchmark running on Oracle 11gR1
- I am pumping a lot of disk I/O through the system while running with enough users to max out the 8 CPUs, which get to 99+% utilization with RHEL 5.3
- The server is a 4-socket Nehalem EX X7560. Right now, only 2 cores per socket are enabled.
- There are GBs of memory left over. The disk response time of the SSD arrays is around 1ms and the arrays are capable of 4-5 times more IOPS. Same with networking, etc. The testbed is capable of maxing out 32 CPUs with RHEL 5.3 I cannot push the RHEL 6.0 CPU utilization past 95-96%. The same test on all flavors of RHEL from 4.4 to 5.3 can totally saturate the CPUs. It feels like the system is intentionally holding back some CPU cycles.
I've some file with .sh extensions that runs some softwares.Now,how do I stop running that filesI know we run the command ./start_tomcat.sh to start the apache.Is there any command to stop that file/process or is it just kill the process to stop the process
language:cOs: ubuntuI have googled for a c program to get cpu utilization factor from 2 days.We can get it through "top", "who" commands..But I hav not found any API or a program.
I have a storage array and one of the logical volumes stays at 100% utilization whenever any process accesses the volume. It is a 9TB RAID 5 array on it's own SCSI interface card. I have another 9TB logical volume in the same chassis, on it's own card that does NOT exhibit the same behavior.
I'm measuring the utilization using atop. The strange thing is it pegs out at 100% utilization for the entire time a process accesses the volume, even when the data being accessed is just a few kb. My users home directories reside on this volume so as you can imagine every user is impacted whenever someone accesses any file from this volume.
The only processes being shown in atop are nfsd processes and xfslogd process. Nothing has been deliberately changed on this system. The only thing out of the ordinary that changed is a user deleted several TB from his home directory a week or so ago, just about the same time this problem came up. During the troubleshooting process, tis system has been rebooted several times.
I am getting a strange problem with my new machine (P4 3Ghz, 1 GB RAM DDR333). The machine is an industrial PC. Firstly I had installed Fedora Core 2 on it. It ran superbly without any problem. I tried to load Redhat Enterprise Linux WS4 (Update 2 as well as Update 5) on it. But the PC was giving high CPU utilization for each and every task. With-out any application running both the cores shows utilization around 10 %. But when i try to my application, the CPU utilization in one of the cores goes to 100 % for majority of the time. This is causing my appilcation to run slowly when compared to the same application running on the same machine under fedora core 2. (CPU Utilization around peak 17 % in either of the cores in Fedora Core2) Recently I installed Cent OS 5 on it. But the behavior of the PC remains the same as of Redhat Enterprise Linux WS4. Some-where on the forums I had read about the RAM size. So i tried to downgrade the RAM from 1 GB to 256 MB. But the problem remains the same. I think it has to do with some kernel tweaking.
I have a server running samba process and there are about 70 samba users connected at a time. The system has 4Gb of memory and it seems each samba process is utilizing only 3352Kb of memory. When I run the command pmap -d (pid of samba)
But when I run the top command, it results as below: Tasks: 163 total, 1 running, 162 sleeping, 0 stopped, 0 zombie Cpu(s): 0.9% us, 4.9% sy, 0.0% ni, 93.3% id, 0.8% wa, 0.2% hi, 0.0% si Mem: 3895444k total, 3163192k used, 732252k free, 352344k buffers Swap: 2097144k total, 208k used, 2096936k free, 2487636k cached
Why could the system be utilizing such high memory? By the way, the server is not running other processes. The samba version running in it is 3.0.33-0.17.
I have a Ubuntu 10.04 LTS and about 40 ThinClients running LSTP in a school's computer lab. Everytime the users start to use applications, the server's memory utilization increases, while the swap memory is quite free. I have 12GB of memory on that server.
I want to view live utilization of Internet usage like the wetool in smoothwall. This admin can view www and any other protocol Internet usage by end user
As we know, the data in /proc/net/dev fall into two categories -- the data received and the data transmitted. Now I want to calculate the network utilization, should the calculate be ---- (datareceived + datatransmitted - datareceivedlasttime - data transmitted last time)/ timeinterval?
I have a SSH access to some linux servers, is it possible that I can get some graphical report for system utilization (CPU, memory and disk space) for a given time range.
I dont have any graphical access to the system.
Currently I am fetching the records using "sar -r" command , pasting them in a excel sheet to generate the reports.
Been using Maverick on my Dell Studio XPS for many months without issue. About a week or two ago, compiz has been acting funny and using a lot of cpu time, making everything "choppy," especially after resuming from suspend. I've googled and searched the forum, but all the related posts seem to be several years old.I tried selecting the previous kernel but it didn't help. Was there a bad update to compiz or ati graphics?
I installed the NVIDIS driver for 64b Linux, and now I face a high cpu utilization (up to 40%) in the XORG when I swith from one application to another. I need the driver because otherwise some web pages are rendered with a something like a watermark
LSPCI 01:00.0 VGA compatible controller: nVidia Corporation G98M [Quadro NVS 160M] (rev a1) (prog-if 00 [VGA controller]) Subsystem: Dell Unknown device 024f Flags: bus master, fast devsel, latency 0, IRQ 169 Memory at f5000000 (32-bit, non-prefetchable) [size=16M] Memory at e0000000 (64-bit, prefetchable) [size=256M] Memory at f2000000 (64-bit, non-prefetchable) [size=32M] I/O ports at df00 [size=128] [virtual] Expansion ROM at f4000000 [disabled] [size=128K] Capabilities: <access denied>
So I have a system that is about 6 years old running Redhat 7.2 that is supporting a very old app that cannot be replaced at the moment. The jbod has 7 Raid1 arrays in it, 6 of which are for database storage and another for the OS storage. We've recently run into some bad slowdowns and drive failures causing nearly a week in downtime. Apparently none of the people involved, including the so-called hardware experts could really shed any light on the matter. Out of curiosity I ran iostat one day for a while and saw numbers similar to below:
[Code]...
Some of these kinda weird me out, especially the disk utilization and the corresponding low data transfer. I'm not a disk IO expert so if there are any gurus out there willing to help explain what it is I'm seeing here. As a side note, the system is back up and running it just runs sluggish and neither the database folks nor the hardware guys can make heads or tails of it. Ive sent them the same graphs from iostat but so far no response.
I need to write a script to report useful information on disk utilization for each user's home directory.For each directory I need to show: 1. the long listing of that directory entry (but not the files in the directory), so that I can see the rights and owners of the directory.2. The amount of disk used by that directory, in human-readable format, including subdirectories. I need to have two lines for each user one after the other. For example:
/home/user1 directory info /home/user1 disk usage /home/user2 directory info /home/user2 disk usage
The script will assume that all users, except user root, have their home directories in the /home directory (no need to do anything with the /etc/passwd file). And if the administrator adds or removes users, the script should still work correctly (so the script shows the information for all current users).
Here's what I do know. The command "ls -ld /home/user's_name" will give me the info I need for #1. And the command "du -hs" will give me the info I need for #2. What I don't know is how to grab each individual directory in order to apply the above commands to each of them in order. ???
I have a high priority service that I start with sudo nice -n -10 process. This process does not need superuser rights though, except for the priority elevation. But nice requires superuser privileges to elevate priority.
Description of what the code does or what i intended to do:
1. Created a child process from parent process using 'fork()'
2. Sent a signal 'SIGALRM' from child process to parent process using 'sigqueue' function.
(The Third parameter of 'siqueue' function contains the message (message msg) which the child process wants to send to the parent process.'msg' is a stucture instance containing a) pid of child and b) string) 5. Print the 'msg' sent by child process inside the signal handler function 'sig_action_function' of the parent process I am getting some junk value when this line is executed
Code:
printf("%d ",msg->cpid);
I expected to get the pid of child process, which the child process sent to parent process through the signal.
as we all know Process Scheduler does Process scheduling and its a process as well. I was just wondering that if this happens then the Process "Process Scheduler" should be a part of Process queue as well.
So if there are 5 process are there in Process queue & process scheduler is administrating them then since its also a process, once it puts a process under RUN state it should itself go inside queue because at one instant only one process can get executed on a processor. This is quite confusing for me. Please help me out. I tried to search on this but could not find any relevant topics.
I have a shell script to identify whether the process is running or not. If the process is not running, then I execute another script file to run my application. Below is my script and saved this script as monitorprocess.sh Code: #!/bin/bash