||Home||Switchboard||Unix Administration||Red Hat||TCP/IP Networks||Neoliberalism||Toxic Managers|
|(slightly skeptical) Educational society promoting "Back to basics" movement against IT overcomplexity and bastardization of classic Unix|
|News||SGE Commands Reference||Queue states||SGE Troubleshooting||Job or Queue Reported in Error State E||Queue instance in AU state||Why Won't My Jobs Run ?|
|qhost||qsub||qrsh||Monitoring Queues and Jobs||Creating and modifying SGE Queues||Getting information about hosts||qsub|
|SGE cheat sheet||Creating and modifying SGE Queues||Starting and Killing Daemons||Submitting Jobs To Queue Instanc||Sysadmin Horror Stories||Humor||Etc|
The qstat command provides the status of all jobs and queues in the cluster. Not always in thest foemt for troubleshooting. See also Duke University Tools for SGE.
To see the State in which is our work can use the command qstat. Executed without options it shows the State of for the particular user, qstst -u '*" for all users.
Use qstat -u '*' -f to display a more detailed list of jobs within SGE. You can also use qstat to query the status of a job, given it's job id. For this, you would use the -j _N_ option where _N_ would be the job id.For bash shell users, the following can be added to your .profile file:
alias qstat='qstat -u "*"'There are several reasons why a job will not run. The first reason is due to the job resource requirements. It is possible that the cluster is full and you have to wait for available resources (necessary number of cores, etc.) It is also possible the job may have experienced and error in the run script. In which case the status would be "Eqw". You can query a job's status by entering the following:
qstat -explain c -j _N_
where _N_ is the Grid Engine job id.
The most useful options are:
qstat -j job_number -- provide detailed information why the pending
job is not being scheduled.
See qstat -j below
Other useful commands:
qstat -explain c -j job-id specific job status qdel job-id delete job qsub -l h_vmem=### job.sh mem limit, see queue_conf(5)RESOURCE LIMITS qstat -f -u "*"
By default qstat shows a list of jobs running in the queue and their state. The output will look like this
job-ID prior name user state submit/start at queue slots ja-task-ID ---------------------------------------------------------------------------------------- 74950 0.55500 tut1 eid qw 12/01/2007 20:42:45 mpi.q7@b1 1
It lists the job id, priority, name, user, state, submission time, queue, and CPU slots used by the job.
For SGE version 6 and later qstat prints a by default the following columns of information for each running and pending job in the system:
qstat without arguments will print the status of all jobs in the queue.
The queue can can be at the following states or some combination of those states:
Use qmod -c <queue list> to clear the error state for a queue.
all.q@wx3481 BIP 0/0/8 -NA- lx24-amd64 au
Maybe there is some network problem preventing the SGE master from communicating with the exec host, such as routing problems or a firewall misconfiguration. Once I have the case when there was a mismatch of hostnames
qstat -j [job_id]: Gives the reason why the pending job (if any) is not being scheduled. qstat -j [job_list] Prints either for all pending jobs or the jobs contained in job_list the reason for not being scheduled. Additional information can be obtained my looking at the man page for qstat. Type "man qstat" for additional information.
You can view individuals jobs using the
qstat -j <job_id>
option. The output in this case is much more verbose, and includes information about the state of the job, and queuing considerations. You can also use the
qstat -u <user_id>
to see only your jobs.
One final option is to use the
option to see the status of the queues on the systems. Output of qstat -f and output qstat -u '*' -f are somewhat different.
In the latter case qstat adds additional like that contain job number. For example
qstat -u '*' -f | grep -B 1 1357 blades.q@b10 BIP 0/20/20 1.00 lx-amd64 a 1357 0.50500 T665-VASP medea r 10/08/2014 19:54:37 20That allow to see what nodes multi-node job occupies:
qstat -u '*' -f | grep -B 1 1356 blades.q@b2 BIP 0/20/20 1.00 lx-amd64 a 1356 0.50500 T664-VASP medea r 10/08/2014 16:11:22 20 -- blades.q@b5 BIP 0/20/20 1.00 lx-amd64 a 1356 0.50500 T664-VASP medea r 10/08/2014 16:11:22 20
if there are multiple queues you can filter unneeded output by specified the queue using
qstat -q <queue_name> -f
sge_qstat defines the command line switches that will be used by qstat by default. If available, the default sge_qstat file is read and processed by qstat(1).
There is a cluster global and a user private sge_qstat file. The user private file has the highest precedence and is followed by the cluster global sge_qstat file. Command line switches used with qstat(1) override all switches contained in the user private or cluster global sge_qstat file.
The default sge_qstat file may contain an arbitrary number of lines, although it is unclear what is the value of lines after the first. Blank lines and lines with a '#' sign at the first column are skipped. Each line can contain set of qstat(1) options. More than one option per line is allowed.
Here is an example of a sge_qstat default options file (note the leading blank before the first "-"):
===================================================== # Just show me my own running and suspended jobs -s rs -u $USER =====================================================Having defined a default sge_qstat file like this and using qstat without parameters
qstathas the same effect as if qstat was executed with:
qstat -s rs -u <current_user>
|Bulletin||Latest||Past week||Past month||
After submitting your job to Grid Engine you may track its status by using either the qstat command, the GUI interface QMON, or by email.Monitoring with qstat
The qstat command provides the status of all jobs and queues in the cluster. The most useful options are:
- qstat: Displays list of all jobs with no queue status information.
- qstat -u hpc1***: Displays list of all jobs belonging to user hpc1***
- qstat -f: gives full information about jobs and queues.
- qstat -j [job_id]: Gives the reason why the pending job (if any) is not being scheduled.
You can refer to the man pages for a complete description of all the options of the qstat command.Monitoring Jobs by Electronic Mail
Another way to monitor your jobs is to make Grid Engine notify you by email on status of the job.
In your batch script or from the command line use the -m option to request that an email should be send and -M option to precise the email address where this should be sent. This will look like:
#$ -M myaddress@work
#$ -m beas
Where the (-m) option can select after which events you want to receive your email. In particular you can select to be notified at the beginning/end of the job, or when the job is aborted/suspended (see the sample script lines above).
And from the command line you can use the same options (for example):
qsub -M myaddress@work -m be job.shHow do I control my jobs
Based on the status of the job displayed, you can control the job by the following actions:
Monitoring and controlling with QMON
Modify a job: As a user, you have certain rights that apply exclusively to your jobs. The Grid Engine command line used is qmod. Check the man pages for the options that you are allowed to use.
- Suspend/(or Resume) a job: This uses the UNIX kill command, and applies only to running jobs, in practice you type
qmod -s/(or-r)job_id (where job_id is given by qstat or qsub).
- Delete a job: You can delete a job that is running or spooled in the queue by using the qdel command like this
qdel job_id (where job_id is given by qstat or qsub).
You can also use the GUI QMON, which gives a convenient window dialog specifically designed for monitoring and controlling jobs, and the buttons are self explanatory.
For further information, see the SGE User's Guide ( PDF, HTML).
I'm running some jobs on an SGE cluster. Is there a way to make qstat show me only jobs that are not on hold?
qstat -s p shows pending jobs, which is all those with state "qw" and "hqw".
qstat -s h shows hold jobs, which is all those with state "hqw".
I want to be able to see all jobs with state "qw" only and NOT state "hqw". The man pages seem to suggest it isn't possible, but I want to be sure I didn't miss something. It would be REALLY useful and it's really frustrating me that I can't make it work.
Other cluster users have a few thousand jobs on hold ("hqw") and only a handful actually in the queue waiting to run ("qw"). I want to see quickly and easily the stuff that is not on hold so I can see where my jobs are in the queue. It's a pain to have to show everything and then scroll back up to find the relevant part of the output.
share|improve this question
asked Feb 14 at 23:08
So I figured out a way to show what I want by piping the output of qstat into grep:qstat -u "*" | grep " qw"
(Note that I need to search for " qw" not just "qw" or it will return the "hqw" states as well.)
But I'd still love to know if it's possible using qstat options only.
Nov 26, 2007 YakShaving Shawn Ferry's WeblogI occasionally have a need to find queues in Sun Grid Engine that are in one of the possibly problematic states which have an occupied slot. It is just infrequent enough that I don't remember exactly how I did it the last time.
qstat -f | awk '$6~/[cdsuE]/ && $3!~/\^/' queuename qtype used/tot. load_avg arch states [email protected] BIP 1/1 -NA- sol-amd64 adu [email protected] BIP 1/1 -NA- sol-amd64 adu
An alternate is "qstat -f | awk '$6~/[cdsuE]/ && $3~/\^[1-9]/'" which also avoids printing the header line. In the example above 'state' in $6 matches 's' and 'used' does not begin with '0'.
The possibly more elegant 'qstat -f -qs cdsuE' still requires a second comparison in awk of '$0!~/--/' to filter out the queue separator lines. (qstat -f -qs acduE | awk '$0!~/--/ && $3!~/\^/')
Finally because I can never remember what exactly all the queue states are and the qstat man page doesn't have the nice table:
aoACD Number of queue instances that are in at least one of the following states:
a Load threshold alarm
A Suspend threshold alarm
C Suspended by calendar
D Disabled by calendar
cdsuE Number of queue instances that are in at least one of the following states:
c Configuration ambiguous
d(eletion), E(rror), h(old), r(unning), R(estarted), s(uspended), S(uspended), t(ransfering), T(hreshold) or w(aiting).
References: SGE (N1GE 6.0) -- Monitoring and Controlling Queues
Google matched content
Groupthink : Two Party System as Polyarchy : Corruption of Regulators : Bureaucracies : Understanding Micromanagers and Control Freaks : Toxic Managers : Harvard Mafia : Diplomatic Communication : Surviving a Bad Performance Review : Insufficient Retirement Funds as Immanent Problem of Neoliberal Regime : PseudoScience : Who Rules America : Neoliberalism : The Iron Law of Oligarchy : Libertarian Philosophy
War and Peace : Skeptical Finance : John Kenneth Galbraith :Talleyrand : Oscar Wilde : Otto Von Bismarck : Keynes : George Carlin : Skeptics : Propaganda : SE quotes : Language Design and Programming Quotes : Random IT-related quotes : Somerset Maugham : Marcus Aurelius : Kurt Vonnegut : Eric Hoffer : Winston Churchill : Napoleon Bonaparte : Ambrose Bierce : Bernard Shaw : Mark Twain Quotes
Vol 25, No.12 (December, 2013) Rational Fools vs. Efficient Crooks The efficient markets hypothesis : Political Skeptic Bulletin, 2013 : Unemployment Bulletin, 2010 : Vol 23, No.10 (October, 2011) An observation about corporate security departments : Slightly Skeptical Euromaydan Chronicles, June 2014 : Greenspan legacy bulletin, 2008 : Vol 25, No.10 (October, 2013) Cryptolocker Trojan (Win32/Crilock.A) : Vol 25, No.08 (August, 2013) Cloud providers as intelligence collection hubs : Financial Humor Bulletin, 2010 : Inequality Bulletin, 2009 : Financial Humor Bulletin, 2008 : Copyleft Problems Bulletin, 2004 : Financial Humor Bulletin, 2011 : Energy Bulletin, 2010 : Malware Protection Bulletin, 2010 : Vol 26, No.1 (January, 2013) Object-Oriented Cult : Political Skeptic Bulletin, 2011 : Vol 23, No.11 (November, 2011) Softpanorama classification of sysadmin horror stories : Vol 25, No.05 (May, 2013) Corporate bullshit as a communication method : Vol 25, No.06 (June, 2013) A Note on the Relationship of Brooks Law and Conway Law
Fifty glorious years (1950-2000): the triumph of the US computer engineering : Donald Knuth : TAoCP and its Influence of Computer Science : Richard Stallman : Linus Torvalds : Larry Wall : John K. Ousterhout : CTSS : Multix OS Unix History : Unix shell history : VI editor : History of pipes concept : Solaris : MS DOS : Programming Languages History : PL/1 : Simula 67 : C : History of GCC development : Scripting Languages : Perl history : OS History : Mail : DNS : SSH : CPU Instruction Sets : SPARC systems 1987-2006 : Norton Commander : Norton Utilities : Norton Ghost : Frontpage history : Malware Defense History : GNU Screen : OSS early history
The Peter Principle : Parkinson Law : 1984 : The Mythical Man-Month : How to Solve It by George Polya : The Art of Computer Programming : The Elements of Programming Style : The Unix Haters Handbook : The Jargon file : The True Believer : Programming Pearls : The Good Soldier Svejk : The Power Elite
Most popular humor pages:
Manifest of the Softpanorama IT Slacker Society : Ten Commandments of the IT Slackers Society : Computer Humor Collection : BSD Logo Story : The Cuckoo's Egg : IT Slang : C++ Humor : ARE YOU A BBS ADDICT? : The Perl Purity Test : Object oriented programmers of all nations : Financial Humor : Financial Humor Bulletin, 2008 : Financial Humor Bulletin, 2010 : The Most Comprehensive Collection of Editor-related Humor : Programming Language Humor : Goldman Sachs related humor : Greenspan humor : C Humor : Scripting Humor : Real Programmers Humor : Web Humor : GPL-related Humor : OFM Humor : Politically Incorrect Humor : IDS Humor : "Linux Sucks" Humor : Russian Musical Humor : Best Russian Programmer Humor : Microsoft plans to buy Catholic Church : Richard Stallman Related Humor : Admin Humor : Perl-related Humor : Linus Torvalds Related humor : PseudoScience Related Humor : Networking Humor : Shell Humor : Financial Humor Bulletin, 2011 : Financial Humor Bulletin, 2012 : Financial Humor Bulletin, 2013 : Java Humor : Software Engineering Humor : Sun Solaris Related Humor : Education Humor : IBM Humor : Assembler-related Humor : VIM Humor : Computer Viruses Humor : Bright tomorrow is rescheduled to a day after tomorrow : Classic Computer Humor
The Last but not Least Technology is dominated by two types of people: those who understand what they do not manage and those who manage what they do not understand ~Archibald Putt. Ph.D
Copyright © 1996-2021 by Softpanorama Society. www.softpanorama.org was initially created as a service to the (now defunct) UN Sustainable Development Networking Programme (SDNP) without any remuneration. This document is an industrial compilation designed and created exclusively for educational use and is distributed under the Softpanorama Content License. Original materials copyright belong to respective owners. Quotes are made for educational purposes only in compliance with the fair use doctrine.
FAIR USE NOTICE This site contains copyrighted material the use of which has not always been specifically authorized by the copyright owner. We are making such material available to advance understanding of computer science, IT technology, economic, scientific, and social issues. We believe this constitutes a 'fair use' of any such copyrighted material as provided by section 107 of the US Copyright Law according to which such material can be distributed without profit exclusively for research and educational purposes.
This is a Spartan WHYFF (We Help You For Free) site written by people for whom English is not a native language. Grammar and spelling errors should be expected. The site contain some broken links as it develops like a living tree...
|You can use PayPal to to buy a cup of coffee for authors of this site|
Last modified: July, 28, 2019