[gem5-dev] Cron /z/m5/regression/do-regression quick

2019-11-22 Thread Cron Daemon
* build/ALPHA/tests/opt/quick/se/00.hello/alpha/linux/simple-timing-ruby: 
FAILED!
* 
build/ALPHA/tests/opt/quick/fs/10.linux-boot/alpha/linux/tsunami-simple-timing-dual:
 FAILED!
* 
build/ALPHA/tests/opt/quick/fs/80.netperf-stream/alpha/linux/twosys-tsunami-simple-atomic:
 FAILED!
* 
build/ALPHA/tests/opt/quick/fs/10.linux-boot/alpha/linux/tsunami-simple-atomic: 
FAILED!
* 
build/ALPHA/tests/opt/quick/se/03.learning-gem5/alpha/linux/learning-gem5-p1-two-level:
 FAILED!
* 
build/ALPHA/tests/opt/quick/fs/10.linux-boot/alpha/linux/tsunami-simple-timing: 
FAILED!
* 
build/ALPHA/tests/opt/quick/fs/10.linux-boot/alpha/linux/tsunami-simple-atomic-dual:
 FAILED!
* build/ALPHA/tests/opt/quick/se/00.hello/alpha/linux/simple-timing: FAILED!
* build/ALPHA/tests/opt/quick/se/01.hello-2T-smt/alpha/linux/o3-timing-mt: 
FAILED!
* build/ALPHA/tests/opt/quick/se/00.hello/alpha/linux/simple-atomic: FAILED!
* 
build/ALPHA/tests/opt/quick/se/03.learning-gem5/alpha/linux/learning-gem5-p1-simple:
 FAILED!
* build/ALPHA/tests/opt/quick/se/00.hello/alpha/linux/minor-timing: FAILED!
* build/ALPHA/tests/opt/quick/se/50.memtest/alpha/linux/memtest-ruby: 
FAILED!
* build/ALPHA/tests/opt/quick/se/00.hello/alpha/linux/o3-timing: FAILED!
* build/MIPS/tests/opt/quick/se/00.hello/mips/linux/simple-timing: FAILED!
* build/MIPS/tests/opt/quick/se/00.hello/mips/linux/o3-timing: FAILED!
* build/MIPS/tests/opt/quick/se/00.hello/mips/linux/simple-timing-ruby: 
FAILED!
* 
build/MIPS/tests/opt/quick/se/03.learning-gem5/mips/linux/learning-gem5-p1-two-level:
 FAILED!
* build/MIPS/tests/opt/quick/se/00.hello/mips/linux/simple-atomic: FAILED!
* 
build/MIPS/tests/opt/quick/se/03.learning-gem5/mips/linux/learning-gem5-p1-simple:
 FAILED!
* build/NULL/tests/opt/quick/se/50.memtest/null/none/memtest: FAILED!
* build/NULL/tests/opt/quick/se/51.memcheck/null/none/memcheck: FAILED!
* build/NULL/tests/opt/quick/se/70.tgen/null/none/tgen-dram-ctrl: FAILED!
* build/NULL/tests/opt/quick/se/80.dram-openpage/null/none/dram-lowp: 
FAILED!
* build/NULL/tests/opt/quick/se/60.rubytest/null/none/rubytest-ruby: FAILED!
* build/NULL/tests/opt/quick/se/80.dram-closepage/null/none/dram-lowp: 
FAILED!
* build/NULL/tests/opt/quick/se/50.memtest/null/none/memtest-filter: FAILED!
* build/NULL/tests/opt/quick/se/70.tgen/null/none/tgen-simple-mem: FAILED!
* 
build/NULL_MOESI_hammer/tests/opt/quick/se/60.rubytest/null/none/rubytest-ruby-MOESI_hammer:
 FAILED!
* 
build/NULL_MESI_Two_Level/tests/opt/quick/se/60.rubytest/null/none/rubytest-ruby-MESI_Two_Level:
 FAILED!
* 
build/NULL_MOESI_CMP_directory/tests/opt/quick/se/60.rubytest/null/none/rubytest-ruby-MOESI_CMP_directory:
 FAILED!
* 
build/NULL_MOESI_CMP_token/tests/opt/quick/se/60.rubytest/null/none/rubytest-ruby-MOESI_CMP_token:
 FAILED!
* build/POWER/tests/opt/quick/se/00.hello/power/linux/simple-atomic: FAILED!
* build/POWER/tests/opt/quick/se/00.hello/power/linux/o3-timing: FAILED!
* build/SPARC/tests/opt/quick/se/70.twolf/sparc/linux/simple-timing: FAILED!
* build/SPARC/tests/opt/quick/se/02.insttest/sparc/linux/simple-timing: 
FAILED!
* build/SPARC/tests/opt/quick/se/50.vortex/sparc/linux/simple-atomic: 
FAILED!
* build/SPARC/tests/opt/quick/se/70.twolf/sparc/linux/simple-atomic: FAILED!
* build/SPARC/tests/opt/quick/se/50.vortex/sparc/linux/simple-timing: 
FAILED!
* build/SPARC/tests/opt/quick/se/00.hello/sparc/linux/simple-timing-ruby: 
FAILED!
* 
build/SPARC/tests/opt/quick/se/40.m5threads-test-atomic/sparc/linux/o3-timing-mp:
 FAILED!
* 
build/SPARC/tests/opt/quick/se/03.learning-gem5/sparc/linux/learning-gem5-p1-two-level:
 FAILED!
* 
build/SPARC/tests/opt/quick/se/40.m5threads-test-atomic/sparc/linux/simple-atomic-mp:
 FAILED!
* build/SPARC/tests/opt/quick/se/10.mcf/sparc/linux/simple-atomic: FAILED!
* 
build/SPARC/tests/opt/quick/se/40.m5threads-test-atomic/sparc/linux/simple-timing-mp:
 FAILED!
* build/SPARC/tests/opt/quick/se/02.insttest/sparc/linux/simple-atomic: 
FAILED!
* build/SPARC/tests/opt/quick/se/02.insttest/sparc/linux/o3-timing: FAILED!
* build/SPARC/tests/opt/quick/se/00.hello/sparc/linux/simple-atomic: FAILED!
* 
build/SPARC/tests/opt/quick/se/03.learning-gem5/sparc/linux/learning-gem5-p1-simple:
 FAILED!
* build/SPARC/tests/opt/quick/se/00.hello/sparc/linux/simple-timing: FAILED!
* build/X86/tests/opt/quick/fs/10.linux-boot/x86/linux/pc-simple-atomic: 
FAILED!
* build/X86/tests/opt/quick/fs/10.linux-boot/x86/linux/pc-simple-timing: 
FAILED!
* build/X86/tests/opt/quick/se/00.hello/x86/linux/o3-timing: FAILED!
* build/X86/tests/opt/quick/se/00.hello/x86/linux/simple-timing: FAILED!
* 
build/X86/tests/opt/quick/se/03.learning-gem5/x86/linux/learning-gem5-p1-two-level:
 FAILED!
* build/X86/tests/opt/quick/se/70.twolf/x86/linux/simple-timing: FAILED!
* 

Re: [gem5-dev] assert and verification errors for: SVE STREAM with DerivO3 + Ruby (MOESI_hammer)

2019-11-22 Thread Polydoros Petrakis

Hi Ciro,

and thanks again for the help.

This patch (https://gem5-review.googlesource.com/c/public/gem5/+/19173) 
indeed fixes the assert error.


(gem5.opt: build/ARM/mem/packet.hh:1093: T* Packet::getPtr() [with T =
unsigned char]: Assertion `!isMaskedWrite()' failed.).

Unfortunately it does not seem to resolve B) SVE+OMP+atomicity problem.


Best Regards,

Polydoros


On 11/20/19 7:33 PM, Polydoros Petrakis wrote:

Hi Siro,

and thank you for all the help.


Yes, this also happens without Ruby (it was written further down in my 
e-mail),


but I have tested few non-Ruby systems so far (so wasn't 100% sure).

I will try to apply this patch as soon as possible,

and will let you know of the results.


Best Regards,

Polydoros


On 11/20/19 5:09 PM, Ciro Santilli wrote:

Hi Polydoros,

There is a pending SVE O3 fix at:
https://gem5-review.googlesource.com/c/public/gem5/+/19173 could you try
with that fix to see if it works?

I believe that the fix is not Ruby specific, but maybe the problem only
happens in Ruby by coincidence.

We need to make some improvements to the patch before merging, but it
could already help.

On 11/18/19 6:00 PM, Polydoros Petrakis wrote:

Hi all,

I would like to report the following two findings in regard to ARM 
SVE +

Ruby + FS/SE:


A) When trying to run C STREAM benchmark v5.10
(https://www.cs.virginia.edu/stream/FTP/Code/stream.c), compiled for 
ARM

SVE,

I get the following assert error:

*gem5.opt: build/ARM/mem/packet.hh:1093: T* Packet::getPtr() [with T =
unsigned char]: Assertion `!isMaskedWrite()' failed.*


I have tried with both gcc/armclang:

a) aarch64-linux-gnu-gcc (GNU Toolchain for the A-profile Architecture
8.2-2019.01 (arm-rel-8.28)) 8.2.1 20180802

e.g.: aarch64-linux-gnu-gcc -Ofast --static
*-march=armv8.2-a+sve*-DNTIMES=5 -DSTREAM_ARRAY_SIZE=20
-I../gem5/include/ -I../gem5/include/gem5 stream.c -L./  -o
sve_stream.exe -lm5

b) armclang (arm-hpc-compiler/19.3)


Stream runs OK, in the following 3 cases:

a) build without SVE flags

b) When I comment out the assert(But this could lead to errors ?)

c) Without Ruby/NoC (But we are currently interested in Ruby-NoC 
Systems).



The complete output is the following:

command line: ./build/ARM/gem5.opt --outdir=m5out/batch502_0001
configs/example/se.py --cpu-type=DerivO3CPU --caches --num-cpus=4
--num-dirs=4 --l2cache --mem-type=DDR4_2400_8x8 --num-l2caches=4
--mem-size=2GB --ruby --topology=Mesh_XY --mesh-rows=2
--network=garnet2.0 -c sve_stream.exe

Global frequency set at 1 ticks per second
warn: DRAM device capacity (16384 Mbytes) does not match the address
range assigned (512 Mbytes)
warn: DRAM device capacity (16384 Mbytes) does not match the address
range assigned (512 Mbytes)
warn: DRAM device capacity (16384 Mbytes) does not match the address
range assigned (512 Mbytes)
warn: DRAM device capacity (16384 Mbytes) does not match the address
range assigned (512 Mbytes)
0: system.remote_gdb: listening for remote gdb on port 7004
0: system.remote_gdb: listening for remote gdb on port 7005
0: system.remote_gdb: listening for remote gdb on port 7006
0: system.remote_gdb: listening for remote gdb on port 7007
 REAL SIMULATION 
info: Entering event queue @ 0.  Starting simulation...
warn: Replacement policy updates recently became the responsibility of
SLICC state machines. Make sure to setMRU() near callbacks in .sm 
files!

info: Increasing stack size by one page.
gem5.opt: build/ARM/mem/packet.hh:1093: T* Packet::getPtr() [with T =
unsigned char]: Assertion `!isMaskedWrite()' failed.
Program aborted at tick 24589000
--- BEGIN LIBC BACKTRACE ---
./build/ARM/gem5.opt(_Z15print_backtracev+0x19)[0x55976cece499]
./build/ARM/gem5.opt(_Z12abortHandleri+0x3d)[0x55976cee013d]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x12730)[0x7f12b2d18730]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x10b)[0x7f12b1b0a7bb]
/lib/x86_64-linux-gnu/libc.so.6(abort+0x121)[0x7f12b1af5535]
/lib/x86_64-linux-gnu/libc.so.6(+0x2240f)[0x7f12b1af540f]
/lib/x86_64-linux-gnu/libc.so.6(+0x30102)[0x7f12b1b03102]
./build/ARM/gem5.opt(_ZN9Sequencer12issueRequestEP6Packet15RubyRequestType+0x5e9)[0x55976c2c2119] 



./build/ARM/gem5.opt(_ZN9Sequencer11makeRequestEP6Packet+0x203)[0x55976c2c2513] 



./build/ARM/gem5.opt(_ZN8RubyPort12MemSlavePort13recvTimingReqEP6Packet+0x37f)[0x55976c2b299f] 



./build/ARM/gem5.opt(_ZN7LSQUnitI9O3CPUImplE13trySendPacketEbP6Packet+0xd8)[0x55976d3e0c58] 



./build/ARM/gem5.opt(_ZN3LSQI9O3CPUImplE16SplitDataRequest17sendPacketToCacheEv+0x6c)[0x55976d3d7f3c] 



./build/ARM/gem5.opt(_ZN7LSQUnitI9O3CPUImplE15writebackStoresEv+0x862)[0x55976d3e7992] 



./build/ARM/gem5.opt(_ZN3LSQI9O3CPUImplE15writebackStoresEv+0x84)[0x55976d3de564] 



./build/ARM/gem5.opt(_ZN10DefaultIEWI9O3CPUImplE4tickEv+0x144)[0x55976d3ca994] 



./build/ARM/gem5.opt(_ZN9FullO3CPUI9O3CPUImplE4tickEv+0x137)[0x55976d39f0b7] 



./build/ARM/gem5.opt(_ZN10EventQueue10serviceOneEv+0xd9)[0x55976ced62e9] 



[gem5-dev] Change in gem5/gem5[master]: arch-riscv: Fix bug in serialize and unserialize of Interrutps

2019-11-22 Thread Ian Jiang (Gerrit)
Ian Jiang has submitted this change. (  
https://gem5-review.googlesource.com/c/public/gem5/+/22643 )


Change subject: arch-riscv: Fix bug in serialize and unserialize of  
Interrutps

..

arch-riscv: Fix bug in serialize and unserialize of Interrutps

When serialize and unserialize an variable, the parameters passed to
SERIALIZE_SCALAR() and UNSERIALIZE_SCALAR() must be the same and should be a
general variable name. If not, the expected item would not be found with
UNSERIALIZE_SCALAR() and a fatal error would be introduced.
This patch fix the bug in class Interrupts of RISCV.

Change-Id: I7dd7ab6805651149304959bdf7ee9f3be9d9eaff
Signed-off-by: Ian Jiang 
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/22643
Tested-by: kokoro 
Reviewed-by: Alec Roelke 
Maintainer: Alec Roelke 
---
M src/arch/riscv/interrupts.hh
1 file changed, 10 insertions(+), 7 deletions(-)

Approvals:
  Alec Roelke: Looks good to me, approved; Looks good to me, approved
  kokoro: Regressions pass



diff --git a/src/arch/riscv/interrupts.hh b/src/arch/riscv/interrupts.hh
index 509b483..77079e1 100644
--- a/src/arch/riscv/interrupts.hh
+++ b/src/arch/riscv/interrupts.hh
@@ -134,18 +134,21 @@
 void
 serialize(CheckpointOut ) const
 {
-SERIALIZE_SCALAR(ip.to_ulong());
-SERIALIZE_SCALAR(ie.to_ulong());
+unsigned long ip_ulong = ip.to_ulong();
+unsigned long ie_ulong = ie.to_ulong();
+SERIALIZE_SCALAR(ip_ulong);
+SERIALIZE_SCALAR(ie_ulong);
 }

 void
 unserialize(CheckpointIn )
 {
-long reg;
-UNSERIALIZE_SCALAR(reg);
-ip = reg;
-UNSERIALIZE_SCALAR(reg);
-ie = reg;
+unsigned long ip_ulong;
+unsigned long ie_ulong;
+UNSERIALIZE_SCALAR(ip_ulong);
+ip = ip_ulong;
+UNSERIALIZE_SCALAR(ie_ulong);
+ie = ie_ulong;
 }
 };


--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/22643
To unsubscribe, or for help writing mail filters, visit  
https://gem5-review.googlesource.com/settings


Gerrit-Project: public/gem5
Gerrit-Branch: master
Gerrit-Change-Id: I7dd7ab6805651149304959bdf7ee9f3be9d9eaff
Gerrit-Change-Number: 22643
Gerrit-PatchSet: 5
Gerrit-Owner: Ian Jiang 
Gerrit-Reviewer: Alec Roelke 
Gerrit-Reviewer: Gabe Black 
Gerrit-Reviewer: Ian Jiang 
Gerrit-Reviewer: kokoro 
Gerrit-MessageType: merged
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev