Skip to content

Commit 7d247ca

Browse files
author
Yang Yang
committed
Merge remote-tracking branch 'upstream/develop' into feature/understand_sentimental_dynrnn_2
2 parents 7105306 + 7a9098a commit 7d247ca

File tree

3 files changed

+41
-7
lines changed

3 files changed

+41
-7
lines changed

benchmark/cluster/vgg16/README.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,23 +8,24 @@
88
- cpu MHz : 2101.000
99
- cache size : 20480 KB
1010

11+
### Blas settings
12+
13+
Setting environment variable: `MKL_NUM_THREADS=1`.
14+
1115
### Single Node Single Thread
1216

13-
- PServer Count: 10
14-
- Trainer Count: 20
1517
- Metrics: samples / sec
1618

1719
| Batch Size | 32 | 64 | 128 | 256 |
1820
| -- | -- | -- | -- | -- |
1921
| PaddlePaddle Fluid | 15.44 | 16.32 | 16.74 | 16.79 |
2022
| PaddlePaddle v2 | 15.97 | 17.04 | 17.60 | 17.83 |
21-
| TensorFlow | - | - | - | - |
23+
| TensorFlow | 9.09 | 9.10 | 9.24 | 8.66 |
2224

2325
### Different Batch Size
2426

2527
- PServer Count: 10
2628
- Trainer Count: 20
27-
- Per trainer CPU Core: 1
2829
- Metrics: samples / sec
2930

3031
| Batch Size | 32 | 64 | 128 | 256 |

paddle/fluid/framework/channel.h

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -100,8 +100,7 @@ class ChannelHolder {
100100
virtual ~Placeholder() {}
101101
virtual const std::type_index Type() const = 0;
102102
virtual void* Ptr() const = 0;
103-
virtual void Close() const = 0;
104-
std::type_info type_;
103+
virtual void Close() = 0;
105104
};
106105

107106
template <typename T>
@@ -116,7 +115,7 @@ class ChannelHolder {
116115
if (channel_) channel_->Close();
117116
}
118117

119-
std::unique_ptr<Channel<T>*> channel_;
118+
std::unique_ptr<Channel<T>> channel_;
120119
const std::type_index type_;
121120
};
122121

paddle/fluid/framework/channel_test.cc

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ limitations under the License. */
2020
#include "gtest/gtest.h"
2121

2222
using paddle::framework::Channel;
23+
using paddle::framework::ChannelHolder;
2324
using paddle::framework::MakeChannel;
2425
using paddle::framework::CloseChannel;
2526
using paddle::framework::details::Buffered;
@@ -508,3 +509,36 @@ TEST(Channel, UnbufferedChannelDestroyUnblocksSendersTest) {
508509
auto ch = MakeChannel<int>(0);
509510
ChannelDestroyUnblockSenders(ch);
510511
}
512+
513+
void ChannelHolderSendReceive(ChannelHolder *ch) {
514+
unsigned sum_send = 0;
515+
std::thread t([&]() {
516+
for (int i = 0; i < 5; i++) {
517+
EXPECT_EQ(ch->Send(&i), true);
518+
sum_send += i;
519+
}
520+
});
521+
for (int i = 0; i < 5; i++) {
522+
int recv;
523+
EXPECT_EQ(ch->Receive(&recv), true);
524+
EXPECT_EQ(recv, i);
525+
}
526+
527+
ch->close();
528+
t.join();
529+
EXPECT_EQ(sum_send, 10U);
530+
}
531+
532+
TEST(ChannelHolder, ChannelHolderBufferedSendReceiveTest) {
533+
ChannelHolder *ch = new ChannelHolder();
534+
ch->Reset<int>(10);
535+
ChannelHolderSendReceive(ch);
536+
delete ch;
537+
}
538+
539+
TEST(ChannelHolder, ChannelHolderUnBufferedSendReceiveTest) {
540+
ChannelHolder *ch = new ChannelHolder();
541+
ch->Reset<int>(0);
542+
ChannelHolderSendReceive(ch);
543+
delete ch;
544+
}

0 commit comments

Comments
 (0)