Skip to content

Conversation

@qwe661234
Copy link
Collaborator

@qwe661234 qwe661234 commented Apr 22, 2024

This modification introduces a code cache flush mechanism to handle the situation when the code cache becomes full. We flush the code cache by setting the offset to its initial value and clearing all the recording data for the code cache. Subsequently, we restart the T1C translation for the target chained-block.

Close: #365

Copy link
Contributor

@jserv jserv left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Benchmarks

Benchmark suite Current: 143a903 Previous: 0d258e6 Ratio
Dhrystone 1750.62 Average DMIPS over 10 runs 1744.6 Average DMIPS over 10 runs 1.00
Coremark 1502.731 Average iterations/sec over 10 runs 1496.516 Average iterations/sec over 10 runs 1.00

This comment was automatically generated by workflow using github-action-benchmark.

Copy link
Contributor

@jserv jserv left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mention the preliminary explanation about the behavior of cache flushing.

This modification introduces a code cache flush mechanism to handle the
situation when the code cache becomes full. We flush the code cache by
setting the offset to its initial value and clearing all the recording
data for the code cache. Subsequently, we restart the T1C translation
for the target chained-block.

Close: sysprog21#365
@jserv jserv merged commit ab487d9 into sysprog21:master Apr 22, 2024
@jserv jserv added this to the release-2024.1 milestone Apr 29, 2024
vestata pushed a commit to vestata/rv32emu that referenced this pull request Jan 24, 2025
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

Successfully merging this pull request may close these issues.

jit: Flush the code cache when it is full

2 participants