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

Fix the order of reads and write from buffered channel #9423

Merged
merged 4 commits into from
Mar 29, 2018

Conversation

abhinavarora
Copy link
Contributor

Fixes #9388

@abhinavarora abhinavarora self-assigned this Mar 27, 2018
@abhinavarora abhinavarora added this to To Do in Concurrent Programming in Fluid via automation Mar 27, 2018
TEST(Channel, RecevingOrderEqualToSendingOrderWithBufferedChannel) {
TEST(Channel, RecevingOrderEqualToSendingOrderWithBufferedChannel3) {
// Test that Receive Order is same as Send Order when number of items
// sent is equal to size of buffer
Copy link
Collaborator

Choose a reason for hiding this comment

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

'is greater to' ?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done.

std::deque<std::shared_ptr<QueueMessage>> &queue, ChannelAction action) {
while (!queue.empty()) {
// Check whether this message was added by Select
// If this was added by Select then execte the callback
Copy link
Contributor

Choose a reason for hiding this comment

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

execte ==> execute

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done

lock.unlock();
send_return();
return;
} else {
lock.unlock();
Copy link
Contributor

Choose a reason for hiding this comment

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

I think a comment might be good here, since its not obvious why we are doing a recursive call

Copy link
Contributor

Choose a reason for hiding this comment

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

I agreed to this.

Copy link
Contributor

@chengduoZH chengduoZH left a comment

Choose a reason for hiding this comment

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

LGTM

@abhinavarora abhinavarora merged commit 5f9da86 into PaddlePaddle:develop Mar 29, 2018
Concurrent Programming in Fluid automation moved this from To Do to Done Mar 29, 2018
@abhinavarora abhinavarora deleted the issue_9388 branch March 29, 2018 16:45
mikeseven added a commit to mikeseven/Paddle that referenced this pull request Mar 30, 2018
* commit '33b8b3d22034423455a493712955e419aac7b19b': (251 commits)
  Remove redundant commands in build.sh and build_doc.sh
  Add dependencies
  Move v2/api/fluid to fluid/api and Adjust doc build commands
  Plain LRN op throws an exception when is_test is set in backward pass
  fix compiler error of profiler_test in ONLY_CPU mode
  fix server shutdown
  Translation for Model Configuration (PaddlePaddle#9513)
  Fix data transform when inplace (PaddlePaddle#9450)
  refine parallel
  add FAQ (PaddlePaddle#9494)
  Fix dist error with lr decay layer (PaddlePaddle#9489)
  add prefetch_op (PaddlePaddle#9495)
  Fix some errors (PaddlePaddle#9403)
  hookup WITH_FLUID_ONLY in TeamCity build.sh (PaddlePaddle#9509)
  Fix the order of reads and write from buffered channel  (PaddlePaddle#9423)
  change WITH_FLUID to WITH_FLUID_ONLY (PaddlePaddle#9427)
  fix block num
  Revert "make append activation in place by default (PaddlePaddle#9417)"
  Speed/sequence op1 (PaddlePaddle#9217)
  fix a compile error
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants