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

Implement Savina benchmarks in C #632

Closed
47 of 51 tasks
cmnrd opened this issue Oct 19, 2021 · 2 comments
Closed
47 of 51 tasks

Implement Savina benchmarks in C #632

cmnrd opened this issue Oct 19, 2021 · 2 comments

Comments

@cmnrd
Copy link
Collaborator

cmnrd commented Oct 19, 2021

This issue is to keep track of the current status of the C benchmarks.

  • micro benchmarks
    • Big -> Arthur
    • Chameneos -> Marten
    • Count
    • Fork Join
    • Ping Pong
    • Thread Ring
  • concurrency benchmarks
  • parallelism benchmarks
    • APSP -> Soroush
    • ASTAR -> Soroush
    • Filter Bank
    • N Queens K Solutions -> Arthur
    • Pi Precise -> Christian
      • Simplify and align with C++ version
      • Fix FIXMEs
    • Radix Sort
      • use cog and multiports/banks to instantiate all workers
      • Investigate performance issues (in C++)
      • Make sure updated C++ version and C version align
    • Rec Matrix Multiplication -> Peter
    • Trapezoid
  • other tasks:
    • consistent use of deque
    • C version of MatMul is slower due to caching effects -> use BenchmarkRunner reactor!?
    • What to do with Smokers.lf? (Thee's version of the smoker problem)
@edwardalee
Copy link
Collaborator

In the branch c-example-sleepingbarber, I fixed benchmark/C/src/concurrency/SleepingBarber.lf to correctly use the random number generator. It runs much faster.

I have have also implemented example/C/src/SleepingBarber.lf, which has the same structure as the benchmark, but uses logical actions and randomly generated logical times. That one is useful for watching what is going on.

I then created a version of the example that has the same parameters as benchmark/C/src/concurrency/SleepingBarber.lf and includes the same busy waits. Its performance was about the same, however, so it's not worth checking it in.

@cmnrd
Copy link
Collaborator Author

cmnrd commented Nov 22, 2021

Closing this since most of the tasks are done. There are separate issues for the remaining tasks (#765, #624).

@cmnrd cmnrd closed this as completed Nov 22, 2021
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