-
Notifications
You must be signed in to change notification settings - Fork 4.3k
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
[BEAM-13015] Add state caching benchmark and move benchmarks to their own module. #16542
Conversation
R: @ibzib |
Codecov Report
@@ Coverage Diff @@
## master #16542 +/- ##
===========================================
+ Coverage 46.38% 83.64% +37.26%
===========================================
Files 202 452 +250
Lines 19897 62168 +42271
===========================================
+ Hits 9230 52003 +42773
- Misses 9682 10165 +483
+ Partials 985 0 -985 Continue to review full report at Codecov.
|
if (project.file("/opt/cprof/profiler_java_agent.so").exists()) { | ||
def gcpProject = project.findProperty('gcpProject') ?: 'apache-beam-testing' | ||
def userName = System.getProperty("user.name").toLowerCase().replaceAll(" ", "_") | ||
//jvmArgs '-agentpath:/opt/cprof/profiler_java_agent.so=-cprof_service=' + userName + "_" + project.getProperty("benchmark").toLowerCase() + '_' + System.currentTimeMillis() + ',-cprof_project_id=' + gcpProject + ',-cprof_zone_name=us-central1-a' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why is this commented out?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
hold over from temp change.
assertEquals(3, outputValuesCount.getAndSet(0)); | ||
} | ||
|
||
private static String padLeftZeros(String inputString, int length) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we use a library to do this? e.g. https://guava.dev/releases/19.0/api/docs/com/google/common/base/Strings.html#padStart(java.lang.String,%20int,%20char)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
|
||
RunnerApi.Pipeline pipelineProto = PipelineTranslation.toProto(p); | ||
FusedPipeline fused = GreedyPipelineFuser.fuse(pipelineProto); | ||
checkState(fused.getFusedStages().size() == 2, "Expected exactly two fused stages"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What are the two expected stages? 1. impulse+toKeyAndValue 2. stateful+gbk?
My understanding is that toKeyAndValue
is just a dummy transform that is added only for pipeline construction, and then its stage is not actually executed. Is that correct? And can we add a comment to clarify it?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Your understanding is correct since the stateful dofn causes a fusion break in the GreedyPipelineFuser.
Added comment.
What is the next step on this PR? |
… own module. This simplifies adding unit tests and decreases the clutter in the sdks/java/harness module.
Also clean-up comments around args and fix classpath to only be runtime classpath.
@ibzib this is ready for another review. |
Run Java PreCommit |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Run Java PreCommit |
1 similar comment
Run Java PreCommit |
Run Website_Stage_GCS |
Run Java PreCommit |
1 similar comment
Run Java PreCommit |
Run Website_Stage_GCS PreCommit |
Run Java PreCommit |
6 similar comments
Run Java PreCommit |
Run Java PreCommit |
Run Java PreCommit |
Run Java PreCommit |
Run Java PreCommit |
Run Java PreCommit |
For reference, link to the failed test: https://ci-beam.apache.org/job/beam_PreCommit_Java_Phrase/4593/ |
It looks like Java PreCommit is perma-red. Now that #16748 is in. Rerunning Java PreCommit. |
Run Java PreCommit |
Run Java PreCommit |
This simplifies adding unit tests and decreases the clutter in the sdks/java/harness module.
Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:
R: @username
).[BEAM-XXX] Fixes bug in ApproximateQuantiles
, where you replaceBEAM-XXX
with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.CHANGES.md
with noteworthy changes.See the Contributor Guide for more tips on how to make review process smoother.
ValidatesRunner
compliance status (on master branch)Examples testing status on various runners
Post-Commit SDK/Transform Integration Tests Status (on master branch)
Pre-Commit Tests Status (on master branch)
See .test-infra/jenkins/README for trigger phrase, status and link of all Jenkins jobs.
GitHub Actions Tests Status (on master branch)
See CI.md for more information about GitHub Actions CI.