Difference: PAMM_Phx_Jul07 (3 vs. 4)

Revision 42008-05-29 - JiashengShi

Line: 1 to 1
META TOPICPARENT name="CompilerRepository"
Line: 28 to 28
 After the instrumentation is done, a new binary code will be generated in the name of the application with a "-pamm" suffix attached.
Rebuilding the project
The project is created in Visual Studio 2005 ,and written in C#, a solution file may be found under the two subdirectories respectively. One can simply load the solution file into Visual Studio 2005, or Visual C# Express 2005, make whatever modification, and then rebuild it without any difficulty. Keep in mind that, to successfully rebuild PAMM_Phx, the Phoenix SDK is required and the current release of Phoenix SDK does not support Visual Studio 2008 or Visual C# Express 2008. \ No newline at end of file


All benchmarks can be acquired by:
  • svn co file:///p/compiler/repos/CSharp_Benchmarks/trunk CSharp_Benchmarks
  • svn co svn+ssh://login@<cs-machine-name>/p/compiler/repos/CSharp_Benchmarks/trunk CSharp_Benchmarks

  • lcscbench - compiler benchmark
    • Description: lcscbench is based on the front end of a compiler for C# written in C# and uses a generalized LR (GLR) parsing algorithm. lcscbench is compute and memory intensive, requiring hundreds of megabytes of heap for the largest input file provided (a C# source file with 125,000 lines of code). The source contains approximately 17,000 lines of code if machine-generated code is not counted.
    • Developers: Dave Hanson and Todd Proebsting (Microsoft Research)
    • Compatibility: CLR 1.0.3705, Rotor 1.0 (others untested)
    • Location:

  • ahcbench - compression benchmark
    • Description: ahcbench is based on compressing and uncompressing an input file using Adaptive Huffman Compression. It is written in C#. ahcbench is compute-intensive, requiring a relatively small heap. There are 1267 lines of code in the source for the benchmark.
    • Developer : Based on an implementation of Adaptive Huffman Compression by Stephen Toub
    • Compatibility: CLR 1.0.3705, Rotor 1.0 (others untested)
    • Location:

  • SharpSATbench - satisfiability solver benchmark
    • Description: SharpSATbench is a CLI managed-code benchmark based on a clause-based satisfiability solver where the logic formula is written in Conjunctive Normal Form (CNF). SharpSATbench is compute-intensive, requiring a moderate-sized heap. There are 10,900 lines of code in the C# source of the benchmark.
    • Developer: Lintao Zhang
    • Compatibility: CLR 1.03705, Rotor 1.0 (others untested)
    • Test Inputs: many additional .cnf test inputs are available from http://www.ece.cmu.edu/~mvelev/sat_benchmarks.html
    • Location:

  • Java Grande
    • Description: A simplified port of a subset of the Java Grande benchmark. Timings are removed, so lowering the initial constants is recommended.
    • Contents:

  • mono
    • Description: Five of the larger mono test suite programs
    • Contents: * casts.cs - Casting test * test-49.cs - Switch operator test - Phase Profile [10 instrs/interval] * test-233.cs - Comparison test - Phase Profile [10 instrs/interval] * test-254.cs - Reflection test * test-269.cs - References test
    • Location:

  • SciMark
    • Description: Modification of SciMark C# Benchmark port for compatibility with Visual Studio 2005 Beta 1. To run each individual part, comment out the unwanted parts in CommandLine.cs
    • Contents: * FFT.cs - Fast fourier transformations - Phase Profile [10k instrs/interval] * LU.cs - LU factorization - Phase Profile [100k instrs/interval] * MonteCarlo.cs - Monte Carlo algorithm * SOR.cs - Successive Overrelaxation algorithm * SparseCompRow.cs - Sparse Matrix Multiplcation * complete program run - Phase Profile [100k instrs/interval]
    • Location:

  • GC Benchmarks for C#
    • Description: Benchmarks written or collected by Daniel Spoonhower from CMU. These benchmarks have interesting behavior from the point of view of the garbage collector. They all allocate large amounts of data and create interesting heap structures.
    • Contents:
      • Splunc - This program builds a splay tree of random integer values, truncating the resulting tree at a fixed depth after each insertion. The lifetimes of objects inserted into the tree follow a log-normal distribution. The splay tree implementation was ported from a version written by Danny Sleator.
      • Raytracer - The benchmark was originally part of the Java Grande Forum Benchmark Suite. The original version is a multi-threaded 3D renderer. My port runs as a single-threaded application only.
      • GCBench - This is a port of a benchmark written by John Ellis and Pete Kovac and later modified by Hans Boehm. It builds large tree structures both from the top down and the bottom up.
      • GCOld - The original version was developed by Dave Detlefs and later modified and rewritten by Matthias Jacob and Will Clinger. This is another tree-based, artificial benchmark.
    • Location:
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2017 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding URCS? Send feedback