1/1

|
Openrisc performance
by ag09 on Jan 6, 2012 |
ag09
Posts: 38 Joined: Aug 22, 2010 Last seen: Jan 13, 2012 |
||
|
Hi all,
I am interested to evaluate the performance of the Openrisc at different abstraction levels, I mean here the simulation speed. For the Openrisc there are three abstraction levels: 1-cycle accurate HD-Level 2- cycle accurate C-level(generated using verilator tool) and the functional ISS Or1ksim. It is obvious to me that the simulation speed of a SW application running on ISS much higher than cycle accurate HDL openrisc, but what is about the simulation speed of an application running on the generated cycle accurate C module in compare to HDL module and ISS OR1ksim? |
|||
|
RE: Openrisc performance
by julius on Jan 9, 2012 |
julius
Posts: 363 Joined: Jul 1, 2008 Last seen: May 17, 2021 |
||
|
I am interested to evaluate the performance of the Openrisc at different abstraction levels, I mean here the simulation speed.
That's fairly easy to do and will obviously depend a lot on your machine, but the relative change in performance between the execution rate of the three models should be fairly standard.
It is obvious to me that the simulation speed of a SW application running on ISS much higher than cycle accurate HDL openrisc, but what is about the simulation speed of an application running on the generated cycle accurate C module in compare to HDL module and ISS OR1ksim?
It's hard to get an accurate cycle count out of or1ksim, so looking at the number of instructions it executed over an amount of time is a better way to measure its performance. Off the top of my head, I believe it will do maybe 5-10 millions of instructions per second (MIPS). The other models, as they're cycle accurate, do give you a true number of cycles taken to execute the software, but you'll probably want an instruction count so it's more useful when comparing it with or1ksim. I'm not sure this information has been posted anywhere yet, so it would be useful if you might like to do this and post some information here and on the or1k wiki. The ORPSoC project currently has a cycle accurate C model that is easy to build from the Verilog, and will also run a simulation of the Verilog model in Icarus Verilog. Each model will give you an instruction count when it finishes, so it shouldn't be too much work to run some software through all three models and look at the instructions executed and the time taken for each. Julius |
|||
|
RE: Openrisc performance
by jeremybennett on Jan 9, 2012 |
jeremybennett
Posts: 815 Joined: May 29, 2008 Last seen: Jun 13, 2019 |
||
|
Hi ag09 There are some performance figures for Icarus Verilog simulation and Verilator modeling in Embecosm Application Note #6: High Performance SoC Modeling with Verilator: A Tutorial for Cycle Accurate SystemC Model Creation and Optimization (www.embecosm.com/download/ean6.html. I concur with Julius' estimate for the performance of Or1ksim. It prints out a count of "cycles" at the end of each execution, so you can use that, but remember that Or1ksim has a somewhat rough and ready estimate of cycles (since it is only actually an ISS). The 200 million instructions to boot the Linux kernel take about 20 seconds on a decent Linux box. HTH Jeremy
-- |
|||
|
RE: Openrisc performance
by firefalcon on Jan 10, 2012 |
firefalcon
Posts: 99 Joined: Jan 10, 2011 Last seen: Mar 26, 2024 |
||
|
The 200 million instructions to boot the Linux kernel take about 20 seconds on a decent Linux box.
...and about 24 hours in ModelSim. |
|||
1/1

