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

Benchmarks: Revision - Support flexible warmup and non-random data initialization in cublas-benchmark #479

Merged
merged 8 commits into from
Feb 27, 2023

Conversation

yukirora
Copy link
Contributor

Description
revise cublas-benchmark for flexible warmup and fill data with fixed number for perf test to improve the running efficiency.

Major Revision

  • remove num_in_steps for warmup to support more flexible warmup setting for users
  • Add support to generate input with fixed number for perf test

@yukirora yukirora requested a review from a team as a code owner February 20, 2023 11:16
@codecov
Copy link

codecov bot commented Feb 20, 2023

Codecov Report

Merging #479 (4363c5e) into main (0292366) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main     #479   +/-   ##
=======================================
  Coverage   87.82%   87.82%           
=======================================
  Files          87       87           
  Lines        5625     5627    +2     
=======================================
+ Hits         4940     4942    +2     
  Misses        685      685           
Flag Coverage Δ
cpu-python3.6-unit-test 74.98% <50.00%> (-0.01%) ⬇️
cpu-python3.7-unit-test 74.98% <50.00%> (-0.01%) ⬇️
cpu-python3.8-unit-test 75.45% <50.00%> (-0.01%) ⬇️
cuda-unit-test 87.75% <100.00%> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
...nch/benchmarks/micro_benchmarks/cublas_function.py 84.78% <100.00%> (+0.33%) ⬆️

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

@cp5555 cp5555 changed the title Benchmarks: Revision - revise cublas-benchmark for flexible warmup and fill data with fixed number for perf test Benchmarks: Revision - Support flexible warmup and non-random data initialization in cublas-benchmark Feb 20, 2023
@cp5555 cp5555 mentioned this pull request Feb 20, 2023
21 tasks
Copy link
Member

@abuccts abuccts left a comment

Choose a reason for hiding this comment

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

do you need to update cudnn_function as well?

Copy link
Contributor

@rhewett rhewett left a comment

Choose a reason for hiding this comment

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

I think the random fix looks good. I have a few more thoughts here:

  • The random initialization can be accelerated by adding -O3 to the host compiler flags. After some local testing, this cuts about 35% of the run time.
  • The random initialization can be further accelerated using OMP.
  • The random initialization can be accelerated by moving it to the device.

The issue with the for loops in the warm-up still remains.

@cp5555
Copy link
Contributor

cp5555 commented Feb 22, 2023

I think the random fix looks good. I have a few more thoughts here:

  • The random initialization can be accelerated by adding -O3 to the host compiler flags. After some local testing, this cuts about 35% of the run time.
  • The random initialization can be further accelerated using OMP.
  • The random initialization can be accelerated by moving it to the device.

The issue with the for loops in the warm-up still remains.

Very good comments. I think we can check it and optimize it in next PR

@cp5555 cp5555 added the benchmarks SuperBench Benchmarks label Feb 23, 2023
@cp5555 cp5555 added the micro-benchmarks Micro Benchmark Test for SuperBench Benchmarks label Feb 27, 2023
@cp5555 cp5555 merged commit eba298f into main Feb 27, 2023
@cp5555 cp5555 deleted the yutji/cublas-revision branch February 27, 2023 22:35
@cp5555 cp5555 mentioned this pull request Mar 28, 2023
23 tasks
@yukirora yukirora mentioned this pull request Mar 29, 2023
21 tasks
@yukirora yukirora mentioned this pull request Jul 12, 2023
18 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
benchmarks SuperBench Benchmarks micro-benchmarks Micro Benchmark Test for SuperBench Benchmarks
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants