LOGIN   :::   RECOVER PASS   :::   GET ACCOUNT    
Browse
  • Projects
  • Code (CVS)
  • Forums
  • News
  • Articles
  • Polls
  •  
    OpenCores
  • FAQ
  • CVS HowTo
  • Mission
  • Media
  • Tools
  • Advertise
  • Mirrors
  • Logos
  • Contact us
  • Find Resources
  • Job Opportunity
  •  
    Tools
  • Search
      
  • Download Cores (CVSGet)
  •  
    More
  • Wishbone
  • Perlilog
  • EDA tools
  • OpenTech CD
  •  
    Navigation: All forums > Openrisc > Message List > Message Post

    Message

    Reply | Reply all
    Date Prev | Date Next | Thread Prev | Thread Next Date Index | Thread Index

    From: zhang_lsv@y...<zhang_lsv@y...>
    Date: Mon Dec 20 19:10:08 CET 2004
    Subject: [openrisc] OpenRisc Benchmarking
    Top
    Hi, I am working on the or1k benchmarking. What I did is using the same
    application C programs, compiling them and runing them on various core
    simulators. The number I got with the or1k is much larger than other
    avaiable processor cores, which seems to me is not reasonable.

    Here is an example, I have the following FIR C program
    ==================
    for (i=128;i<2048;i++) {
    dout = 0;
    for (j=0;j<128;j++)
    dout = dout + datain[i-j]*coeff[j];
    }
    ==================

    I firstly use the gcc compiler and ld to get the objective code. Then I
    use the "or32-uclinux-sim --enable-profiler ..". After that I use "or32-
    uclinux-sim profiler -c". The report shows that the above code require
    72 Million cycles ! It is so high than it almost equals to 100 times of
    others' number. Looking at the code, it actually only has 2048*128*2 =
    500K operations. Are the overhead too large ?

    Is something wrong in using the toolchain ? or the simulator didnot give
    a correct result ?

    thanks

    Follow upAuthor
    [openrisc] OpenRisc BenchmarkingJcastillo

     
    Copyright (c) 1999 OPENCORES.ORG. All rights reserved.