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

Example Benchmarks: calculate relative error on repeats #1669

Merged
merged 5 commits into from
Mar 7, 2025

Conversation

golowanow
Copy link
Contributor

@golowanow golowanow commented Mar 6, 2025

Description

Extend the Tachyon example with additional command line option n-of-iterations to execute ray tracing (rendering) several times and collect its performance metrics to estimate relative error (for rendering duration at the moment).

Extend the Primes example's n-of-repeats execution mode to calculate relative error for each of the parallel threads
execution block (n-of-threads), so it is now possible to measure their performance reliability.

Extend the Sudoku example with additional option to repeat solution several times and calculate relative error to estimate performance reliability.

The relative error allows to take informed decision on how reliable and reproduceable these examples are as oneTBB benchmarks, or some additional stabilization is required to achieve some KPI (e.g. 5% max).

Resolves: #1656 (part of)

Type of change

  • bug fix - change that fixes an issue
  • new feature - change that adds functionality
  • tests - change in tests
  • infrastructure - change in infrastructure and CI
  • documentation - documentation update

Tests

  • added - required for new features and some bug fixes
  • not needed

Documentation

  • updated in README.md
  • needs to be updated
  • not needed

Breaks backward compatibility

  • Yes
  • No
  • Unknown

Notify the following users

@anchita20
@mehulBhandari20

Other information

class measurements introduced with #1446 is moved to its own header file to make its use easier deep in example applications without conflicts with other utility classes.

Intel OSS Hackathon 2025

@golowanow golowanow force-pushed the dev_1656 branch 2 times, most recently from 0da2a7e to e0eac8b Compare March 6, 2025 08:40
@golowanow golowanow changed the title Extend Tachion example Extend Tachyon example Mar 6, 2025
Move class `measurements` from utility.hpp to its own file
measurements.hpp to simplify its use at example applications
eliminating duplicate declarations on include.
Adjust `seismic` example accordingly.

Signed-off-by: Dmitrii Golovanov <[email protected]>
Extend class `measurements`:
 * keep initial number of iterations.
 * stop() to return duration from the last start().

Add optional prefix and suffix at utility::report_relative_error().

Signed-off-by: Dmitrii Golovanov <[email protected]>
Extend Tachyon example with additional option to execute
rendering several times and calculate relative error to
estimate rendering performance reliability.

Signed-off-by: Dmitrii Golovanov <[email protected]>
Extend the Primes example `n-of-repeats` execution mode to
calculate relative error for each of the parallel threads
execution block (`n-of-threads`), so it is now possible to
measure their performance reliability.

Signed-off-by: Dmitrii Golovanov <[email protected]>
@golowanow golowanow force-pushed the dev_1656 branch 3 times, most recently from 241035d to 09fb18f Compare March 7, 2025 01:03
Extend Sudoku example with additional option to repeat solution
several times and calculate relative error to estimate
performance reliability.

Signed-off-by: Dmitrii Golovanov <[email protected]>
@golowanow golowanow changed the title Extend Tachyon example Example Benchmarks: calculate relative error on repeats Mar 7, 2025
@golowanow golowanow marked this pull request as ready for review March 7, 2025 01:37
Copy link
Contributor

@sarathnandu sarathnandu left a comment

Choose a reason for hiding this comment

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

LGTM!

Copy link
Contributor

@dnmokhov dnmokhov left a comment

Choose a reason for hiding this comment

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

LGTM

@dnmokhov dnmokhov merged commit 280e32f into uxlfoundation:master Mar 7, 2025
28 of 31 checks passed
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.

[Hackathon] Stabilize oneTBB Example Benchmarks 2
3 participants