<DIV>Hello All,</DIV>
<DIV> </DIV>
<DIV>Thanks for the reply.I can generate the reports by compiling Spec through llvm, but that couldn't resolve my problem.</DIV>
<DIV> </DIV>
<DIV>I m trying to determine execution time for the bytecode and native files , which are obtained as a result of running my pass over the original bytecode .I am running these experiments on spec benchmark.</DIV>
<DIV> </DIV>
<DIV>In SPEC we have command line tools such as runspec where we can specify the parameters such as ref or test etc, but if I am taking the llvm-test approach, I have to make all the changes in Makefile.spec.Is that correct? Even for this purpose I am including my pass in Makefile.spec.Is there any simpler or command line option possible?</DIV>
<DIV> </DIV>
<DIV>Because of this particular problem, i am not able to use simple commands like "time " to determine time as I can't work on individual benchmarks.</DIV>
<DIV> </DIV>
<DIV>If I sound confusing please let me know.Please help me with this.Thanks for taking out time !!</DIV>
<DIV> </DIV>
<DIV>Regards</DIV>
<DIV>TS<BR><BR><B><I>Chris Lattner <sabre@nondot.org></I></B> wrote:</DIV>
<BLOCKQUOTE class=replbq style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #1010ff 2px solid">On Thu, 30 Jun 2005, Tanu Sharma wrote:<BR>> I am compiling SPEC 2000 benchmarks with llvm .Got stuck with <BR>> calculating "execution time" of all the .bc and native files.<BR>><BR>> The log for nightly test itself gives execution times but I am passing <BR>> the bytecode files to my pass which gives another bytecode file.I have <BR>> to calculate execution time of such bytecode and native files as well.If <BR>> i simply do this:<BR><BR>You should look into the llvm-test framework. All of the tests in it (as <BR>well as 'external tests' which we don't provide source for, like SPEC) <BR>allow you to do things like this. If you look at llvm-test/TEST.*Makefile <BR>and llvm-test/TEST.*report files, you'll see ways to automatically <BR>generate custom reports.<BR><BR>Unfortunately there is no documentation for how to build a custom report, <BR>but there are!
  many
 examples. The 'jit' report (TEST.jit.Makefile and <BR>TEST.jit.report) are a simple example to demonstrate this. For example, <BR>go into llvm-test/MultiSource/Benchmarks/Olden and run:<BR><BR>$ make TEST=jit report<BR><BR>This should spit out something like this (on X86):<BR><BR>Name: | Total CodeGen InstSel LiveVar RA FPStack Peep | MCSize #MCInsts #Glob | #store #load #fp #fxch |<BR>treeadd/treeadd | 6.38 0.0300 0.0133 0.0023 0.0054 0.0001 0.0002 | 1000 245 115 | * 10 * * |<BR>power/power | 4.87 0.0899 0.0368 0.0044 0.0366 0.0022 0.0003 | 5720 1336 702 | 105 216 790 58 |<BR>tsp/tsp | 4.72 0.1400 0.0439 0.0073 0.0591 0.0023 0.0005 | 4463 1128 106 | 62 149 469 28 |<BR>bh/bh | 3.09 0.2700 0.1231 0.0107 0.1184 0.0030 0.0006 | 11983 2483 137 | 223 408 968 27 |<BR>bisort/bisort | 2.86 0.0800 0.0332 0.0046 0.0163 0.0002 0.0002 | 3825 914 148 | 17 64 * * |<BR>em3d/em3d | 2.84 0.0600 0.0569 0.0034 0.0195 0.0003 0.0002 | 3005 727 406 | 32 79 58 1 |<BR>voronoi/voronoi | 1.11 0.1900!
  0.0601
 0.0081 0.0755 0.0024 0.0009 | 8676 2205 322 | 141 275 761 38 |<BR>health/health | 0.97 0.0800 0.0298 0.0036 0.0171 0.0004 0.0002 | 3438 823 268 | 35 49 101 6 |<BR>perimeter/perimeter | 0.64 0.0800 0.0307 0.0040 0.0149 0.0002 0.0002 | 4266 987 79 | 21 57 * * |<BR>mst/mst | 0.21 0.0500 0.0167 0.0025 0.0117 0.0001 0.0001 | 2094 491 223 | 15 33 * * |<BR><BR>This recursively traverses llvm-test building all of the programs in the <BR>subdirectory from where you start. The report stuff can emit a text file <BR>like this, HTML files, CSV, and latex output.<BR><BR>There is a lot of stuff there to play with, I would suggest giving it a <BR>try. To use SPEC 95/2K, set up the External/SPEC/* stuff and it should <BR>just work (including automatic management of input/output files etc).<BR><BR>BTW, the nightly tester is just one client of this framework.<BR><BR>-Chris<BR><BR>> time lli spec_benchmark.bc OR time ./spec_benchmark.native<BR>><BR>> I need to know the command line op!
 tions and
 also how to run for "test" or "ref" etc and like.Is<BR>><BR>> I run experiments (run my pass) some 30 times so is there any way to achieve it globally ?<BR>><BR>> I appreciate your time,<BR>><BR>> Thanks<BR>><BR>><BR>><BR>><BR>><BR>> ---------------------------------<BR>> Yahoo! Sports<BR>> Rekindle the Rivalries. Sign up for Fantasy Football<BR><BR>-Chris<BR><BR>-- <BR>http://nondot.org/sabre/<BR>http://llvm.cs.uiuc.edu/<BR><BR>_______________________________________________<BR>LLVM Developers mailing list<BR>LLVMdev@cs.uiuc.edu http://llvm.cs.uiuc.edu<BR>http://mail.cs.uiuc.edu/mailman/listinfo/llvmdev<BR></BLOCKQUOTE><p>__________________________________________________<br>Do You Yahoo!?<br>Tired of spam?  Yahoo! Mail has the best spam protection around <br>http://mail.yahoo.com