[gem5-users] Re: HPCG on RISCV

2022-11-04 Thread Νικόλαος Ταμπουρατζής via gem5-users
Dear Hoa, all, Yes, the problem has been solved!! :) I am able to execute HPCG benchmark without accuracy problems in RISCV FS mode! Thank you!! Best regards, Nikos Quoting Hoa Nguyen via gem5-users : Hi Nikos, The problem you ran into with the FS mode seems to be the same problem

[gem5-users] Re: HPCG on RISCV

2022-11-03 Thread Hoa Nguyen via gem5-users
Hi Nikos, The problem you ran into with the FS mode seems to be the same problem described here [1] [2]. Can you try downloading the changes and let me know if it fixes the problem? [1] https://gem5-review.googlesource.com/c/public/gem5/+/65272 [2]

[gem5-users] Re: HPCG on RISCV

2022-11-01 Thread Hoa Nguyen via gem5-users
Hi all, I also ran into the same problem using another benchmark. I want to note that this problem also appears when using the AtomicCPU. Regards, Hoa Nguyen On Tue, Nov 1, 2022 at 3:02 AM Νικόλαος Ταμπουρατζής via gem5-users < gem5-users@gem5.org> wrote: > Dear Boddy, > > Thank you for the

[gem5-users] Re: HPCG on RISCV

2022-11-01 Thread Νικόλαος Ταμπουρατζής via gem5-users
Dear Boddy, Thank you for the update! Please let me know when the accuracy issue will be resolved because I cannot execute any benchmark in RISCV FS mode (I am wondering if any other user faces the same problem). Best regards, Nikos Quoting Bobby Bruce via gem5-users : You mean this

[gem5-users] Re: HPCG on RISCV

2022-10-31 Thread Bobby Bruce via gem5-users
You mean this bug? Unfortunately not, I've been very busy with the upcoming gem5 release and haven't had time to investigate this further. -- Dr. Bobby R. Bruce Room 3050, Kemper Hall, UC Davis Davis, CA, 95616 web: https://www.bobbybruce.net On Mon, Oct 31, 2022 at 1:45 AM Νικόλαος

[gem5-users] Re: HPCG on RISCV

2022-10-31 Thread Νικόλαος Ταμπουρατζής via gem5-users
Dear Bobby, Jason, all, Is there any update about the accuracy of RISC-V FS? Best regards, Nikos Quoting Bobby Bruce : Jason and I had a theory that this may be due to the "Rounding Mode" for floating pointing being set incorrectly in FS mode. That's set via a macro here:

[gem5-users] Re: HPCG on RISCV

2022-10-12 Thread Bobby Bruce
Jason and I had a theory that this may be due to the "Rounding Mode" for floating pointing being set incorrectly in FS mode. That's set via a macro here: https://gem5.googlesource.com/public/gem5/+/refs/tags/v22.0.0.2/src/arch/riscv/fp_inst.hh#36 I manually expanded the macro here:

[gem5-users] Re: HPCG on RISCV

2022-10-08 Thread Νικόλαος Ταμπουρατζής
Dear Hoa, all I have ported successfully HPCG and many simple examples using gem5 ARM-FS and they are working properly. The problem is only in RISCV-FS using double and float variables. Which option of objdump to use? Best regards, Nikos Quoting Hoa Nguyen : Hi, It's quite odd that

[gem5-users] Re: HPCG on RISCV

2022-10-07 Thread Hoa Nguyen
Hi, It's quite odd that both sqrt_i and result were zeroed out at the same time. Does the problem appear in other ISA FS mode, e.g. x86 FS mode? Can you show the objdump of the loop as well? Regards, Hoa Nguyen On Thu, Oct 6, 2022, 04:06 Νικόλαος Ταμπουρατζής wrote: > Dear Jason, all, > > I

[gem5-users] Re: HPCG on RISCV

2022-10-07 Thread Νικόλαος Ταμπουρατζής
Dear Jason & Boddy, Unfortunately, I have tried my simple example without the sqrt function and the problem remains. Specifically, I have the following simple code: #include #include int main(){ int dim = 1024; double result; for (int iter = 0; iter < 2; iter++){

[gem5-users] Re: HPCG on RISCV

2022-10-07 Thread Jason Lowe-Power
I have an idea... Have you put a breakpoint in the implementation of the fsqrt_d function? I would like to know if when running in SE mode and running in FS mode we are using the same rounding mode. My hypothesis is that in FS mode the rounding mode is set differently. Cheers, Jason On Fri, Oct

[gem5-users] Re: HPCG on RISCV

2022-10-07 Thread Νικόλαος Ταμπουρατζής
Dear Boddy, Thanks a lot for the effort! I looked in detail and I observe that the problem is created only using float and double variables (in the case of int it is working properly in FS mode). Specifically, in the case of float the variables are set to "nan", while in the case of double

[gem5-users] Re: HPCG on RISCV

2022-10-06 Thread Bobby Bruce
Hey Niko, Thanks for this analysis. I jumped a little into this today but didn't get as far as you did. I wanted to find a quick way to recreate the following: https://gem5-review.googlesource.com/c/public/gem5/+/64211. Please feel free to use this, if it helps any. It's very strange to me that

[gem5-users] Re: HPCG on RISCV

2022-10-05 Thread Νικόλαος Ταμπουρατζής
In my previous results, I had used double (not float) for the following variables: result, sq_i and sq_j. In the case of float instead of double I get "nan" and not 0.00. Quoting Νικόλαος Ταμπουρατζής : Dear Jason, all, I am trying to find the accuracy problem with RISCV-FS and I

[gem5-users] Re: HPCG on RISCV

2022-10-05 Thread Νικόλαος Ταμπουρατζής
Dear Jason, all, I am trying to find the accuracy problem with RISCV-FS and I observe that the problem is created (at least in my dummy example) because the variables (double) are set to zero in random simulated time (for this reason I get different results among executions of the same

[gem5-users] Re: HPCG on RISCV

2022-09-28 Thread Νικόλαος Ταμπουρατζής
Dear Jason, I am trying to use --debug-start but in FS mode it is very difficult to find the tick on which the application is started! However, I am writing the following very simple c++ program: #include #include int main(){ int dim = 4096; double result; for (int iter =

[gem5-users] Re: HPCG on RISCV

2022-09-21 Thread Jason Lowe-Power
Hi Nikos, You can use --debug-start to start the debugging after some number of ticks. Also, I would expect that the difference should come up quickly, so no need to run the program to the end. For the FS mode one, you will want to just start the trace as the application starts. This could be a

[gem5-users] Re: HPCG on RISCV

2022-09-21 Thread Νικόλαος Ταμπουρατζής
Dear Bobby, Iam trying to add --debug-flags=Exec (building the gem5 for gem5.opt not for gem5.fast which I had) but the debug traces exceed the 20GB (and it is not finished yet) for less than 1 simulated second. How can I reduce the size of the debug-flags (or set something more specific)?

[gem5-users] Re: HPCG on RISCV

2022-09-20 Thread Jason Lowe-Power
That's quite odd that it works in SE mode but not FS mode! I would suggest running with --debug-flags=Exec for both and then perform a diff to see how they differ. Cheers, Jason On Tue, Sep 20, 2022 at 2:45 PM Νικόλαος Ταμπουρατζής < ntampourat...@ece.auth.gr> wrote: > Dear Bobby, > > In QEMU

[gem5-users] Re: HPCG on RISCV

2022-09-20 Thread Νικόλαος Ταμπουρατζής
Dear Bobby, In QEMU I get the same (correct) results that I get in SE mode simulation. I get invalid results in FS simulation (in both riscv-fs.py and riscv-ubuntu-run.py). I cannot access real RISCV hardware at this moment, however, if you want you may execute my xhpcg binary

[gem5-users] Re: HPCG on RISCV

2022-09-20 Thread Jason Lowe-Power
Hi Nikos, I notice you said the following in your original email: In addition, I used the RISCV Ubuntu image > (https://github.com/gem5/gem5-resources/tree/stable/src/riscv-ubuntu), > I installed the gcc compiler, compile it (through qemu) and I get > wrong results too. Is this saying you get

[gem5-users] Re: HPCG on RISCV

2022-09-20 Thread Νικόλαος Ταμπουρατζής
Dear Bobby, 1) I use the original riscv-fs.py which is provided in the latest gem5 release. I run the gem5 once (./build/RISCV/gem5.fast -d ./HPCG_FS_results ./configs/example/gem5_library/riscv-fs.py) in order to download the riscv-bootloader-vmlinux-5.10 and riscv-disk-img. After this I

[gem5-users] Re: HPCG on RISCV

2022-09-19 Thread Bobby Bruce
I'm going to need a bit more information to help: 1. In what way have you modified ./configs/example/gem5_library/riscv-fs.py? Can you attach the script here? 2. What error are you getting or in what way are the results invalid? - Dr. Bobby R. Bruce Room 3050, Kemper Hall, UC Davis Davis, CA,