Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

About L2C hardware prefetcher configuration #54

Open
eeeeewwz opened this issue Jul 15, 2024 · 1 comment
Open

About L2C hardware prefetcher configuration #54

eeeeewwz opened this issue Jul 15, 2024 · 1 comment

Comments

@eeeeewwz
Copy link

eeeeewwz commented Jul 15, 2024

Hi, I'm working on running SPEC06 checkpoints on XS-GEM5, and I notice that the default L2 hardware prefetcher is WorkerPrefetcher in the script simple_gem5.sh:

--l2-hwp-type=WorkerPrefetcher \

But XiangShan now uses a multi-prefetcher framework for L2 Cache (i.e., SMS + BOP), as RTL code and the comment says:
# Note 3: By default use MultiPrefetcher (SMS + BOP) as L2 prefetcher

But when I follow the simple_gem5.sh and only change the option --l2-hwp-type=MultiPrefetcher, I got following error:

[<m5.params.AddrRange object at 0x7fc1c6882530>]
['basic']
db_switches: []
Attach 1 decoders to thread with addr: <orphan System>.cpu.decoder
Create threads for test sys cpu (RiscvO3CPU)
Add dtb for L1D prefetcher
AttributeError: Class MultiPrefetcher has no parameter queue_size

At:
  build/RISCV/python/m5/SimObject.py(852): __setattr__
  /home/prj/OpenXiangShan/GEM5/configs/common/CacheConfig.py(204): config_cache
  /home/prj/OpenXiangShan/GEM5/configs/example/fs.py(290): build_test_system
  /home/prj/OpenXiangShan/GEM5/configs/example/fs.py(424): <module>
  build/RISCV/python/m5/main.py(434): main

Is there any information or additional configuration I've missed? What does WorkerPrefetcher mean?

@shinezyy
Copy link
Contributor

MultiPrefetcher is outdated. Use WorkerPrefetcher.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants