I dislike temporary files too :-) Working in bash only, not sh:

#!/bin/bash

data()
{
        grep h_vmem $SGE_ROOT/$SGE_CELL/common/accounting | \
        sed -e "s/^.*virtual_free=//" \
                -e "s/[:,].*//" \
                -e "s/ -.*//"   \
                -e "s/g$//i"    \
                -e "s/M$/\/1024/" |\
        bc -l |\
        sort -n |\
        uniq -c
}

gnuplot -e "set style fill solid;
set boxwidth 0.5;
set title 'SGE Memory Requests';
set xlabel 'GB Requested';
set ylabel 'Count (Log scale)';
set xrange [0:66];
set terminal png size 1900,1200;
set output 'SGE_mem_reqs.png';
set grid;
set xtics 4;
set ytics auto;
set logscale y;
plot \""<(data)"\" using 2:1 with boxes" 



The <(data) will be replaced with something like /dev/fd/63 and used as input 
file.

'SGE_mem_reqs.png' I had to put into single quotation marks.

-- Reuti


Am 21.01.2014 um 21:32 schrieb [email protected]:

> 
> 
> In the message dated: Mon, 20 Jan 2014 12:57:37 +0100,
> The pithy ruminations from Reuti on 
> <Re: [gridengine users] qacct and resource requests> were:
> => Hi,
> => 
> => Am 20.01.2014 um 12:45 schrieb Winkler, Ursula 
> ([email protected]):
> => 
> => > I’ve a question concerning “qacct” and resource requests. “qacct” prints 
> out a lot of information – but little about resource requests that jobs asked 
> for by “qsub –l …”.
> => > Of course it is possible to find out via “qacct –l” the jobs with a 
> *particular* value (as one has to specify e.g. “qacct -l  h_vmem=2.5G” …) but 
> there doesn’t seem to exist a possibility to find out in a more direct way 
> the values jobs have ordered (I need it for statistical purposes).
> => 
> => They are recorded in the "accounting" file in plain text in the field 
> "category" (`man accounting`).
> 
> I recently wanted to plot the distribution of memory requests ("-l
> h_vmem") in SGE jobs, and I wrote this:
> 
> ============================================================
> #! /bin/bash
> grep -v QLOGIN $SGE_ROOT/$SGE_CELL/common/accounting |\
>       grep h_vmem |\
>       sed -e "s/^.*h_vmem=//" \
>               -e "s/[:,].*//" \
>               -e "s/ -.*//"   \
>               -e "s/g$//i"    \
>               -e "s/M$/\/1024/" |\
>       bc -l |\
>       sort -n |\
>       uniq -c > /tmp/$$
>       gnuplot << E-O-CMDS
> 
> gnuplot << E-O-CMDS
> set style fill solid
> set boxwidth 0.5
> set title 'SGE Memory Requests'
> set xlabel 'GB Requested'
> set ylabel 'Count (Log scale)'
> set xrange [0:66]
> set terminal png size 1900,1200
> set output "SGE_mem_reqs.png"
> set grid
> set xtics 4
> set ytics auto
> set logscale y
> plot "/tmp/$$" using 2:1 with boxes
> 
> E-O-CMDS
> rm -f /tmp/$$
> ============================================================
> 
> (It would be cleaner if I could get gnuplot to accept both commands and
> data on stdin.) Note the use of 'log scale', since in our environment
> the default "h_vmem" request is 4GB, and that value is about 1000x
> more frequent the next most commonly requested memory resource in the
> accounting file.
> 
> 
> Mark
> 
> => 
> => -- Reuti
> => 
> => 
> => > Would be great if somebody has an idea.
> => >  
> => > Cheers, Ursula
> => >  
> => > _______________________________________________
> => > users mailing list
> => > [email protected]
> => > https://gridengine.org/mailman/listinfo/users
> => 
> => 
> => _______________________________________________
> => users mailing list
> => [email protected]
> => https://gridengine.org/mailman/listinfo/users
> => 
> => 
> 
> -- 
> Mark Bergman    Biker, Rock Climber, Unix mechanic, IATSE #1 Stagehand
> '94 Yamaha GTS1000A^2
> [email protected]
> 
> http://wwwkeys.pgp.net:11371/pks/lookup?op=get&search=bergman%40panix.com
> 
> I want a newsgroup with a infinite S/N ratio! Now taking CFV on:
> rec.motorcycles.stagehands.pet-bird-owners.pinballers.unix-supporters
> 15+ So Far--Want to join? Check out: http://www.panix.com/~bergman 


_______________________________________________
users mailing list
[email protected]
https://gridengine.org/mailman/listinfo/users

Reply via email to