My configuration actually isn't created by me. It is default configuration for Atlys SoC (I haven't change it). The configuration is:

   .FEATURE_DEBUGUNIT("ENABLED"),
   .FEATURE_CMOV("ENABLED"),
   .FEATURE_INSTRUCTIONCACHE("ENABLED"),
   .OPTION_ICACHE_BLOCK_WIDTH(5),
   .OPTION_ICACHE_SET_WIDTH(8),
   .OPTION_ICACHE_WAYS(4),
   .OPTION_ICACHE_LIMIT_WIDTH(32),
   .FEATURE_IMMU("ENABLED"),
   .OPTION_IMMU_SET_WIDTH(7),
   .FEATURE_DATACACHE("ENABLED"),
   .OPTION_DCACHE_BLOCK_WIDTH(5),
   .OPTION_DCACHE_SET_WIDTH(8),
   .OPTION_DCACHE_WAYS(4),
   .OPTION_DCACHE_LIMIT_WIDTH(31),
   .FEATURE_DMMU("ENABLED"),
   .OPTION_DMMU_SET_WIDTH(7),
   .OPTION_PIC_TRIGGER("LATCHED_LEVEL"),
   .IBUS_WB_TYPE("B3_REGISTERED_FEEDBACK"),
   .DBUS_WB_TYPE("B3_REGISTERED_FEEDBACK"),
   .OPTION_CPU0("CAPPUCCINO"),
   .OPTION_RESET_PC(32'hf0000100),
   .FEATURE_MULTIPLIER("THREESTAGE")

    FEATURE_DIVIDER        = "SERIAL", // default setting for mor1kx

Compiler flags: -O2 -funroll-loops -fgcse-sm -mboard=atlys -mhard-div -mhard-mul -DPERFORMANCE_RUN=1

At least the cache configuration is more powerful (I don't know about multiplier & divider implementation in LM32) . Additionally to Stefan's list of mor1kx features, the mor1kx includes branch prediction engine as default and not configurable part. Could LM32 be configured with such feature?

However, I don't think that it is unfair. If somebody wants to achieve better score, he/she have to pay for it. Personally, I would be happy with coremark's score lying in region 2.4-2.7 (more is better for me). I foreseen a pipeline with such performance could be even more bloated :).

P.S. Talking about 50 MHz constrain. It looks like just nobody have tried to set it faster and play with router's settings to find corner value.

Andrey


-----Исходное сообщение----- From: Sébastien Bourdeauducq
Sent: Monday, September 15, 2014 6:16 AM
To: BAndViG ; Ricardo Nobre ; Stefan Kristiansson ; List on OpenRISC.net ; [email protected] ; Julius Baxter ; Jose de Sousa
Subject: Re: [OpenRISC] mor1kx and counting clock cycles?

On 09/15/2014 02:49 AM, BAndViG wrote:
By the way, I run coremark today on atlys board SoC (latest mor1kx
cappuccino pipeline) and measured 99.800399 Iterations/sec, that means
99.800399/ 50 MHz = 1,996. What is exactly value for LM32?

I've done tests in May/June with LM32 and mor1kx at 83 1/3MHz, and I
measured 133 iterations/s in both cases, so the score I got was 1.6.
This is my mor1kx configuration:
https://github.com/m-labs/misoc/blob/master/misoclib/mor1kx/__init__.py

This is slower than yours - are you using a faster configuration, or did
mor1kx improve in the meantime?

Sébastien
_______________________________________________
OpenRISC mailing list
[email protected]
http://lists.openrisc.net/listinfo/openrisc

Reply via email to