Skip to content

Commit 5c35867

Browse files
authored
updates the ctor of tensor, test=develop (#38946)
1 parent d13c779 commit 5c35867

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+175
-566
lines changed

paddle/fluid/eager/tests/data_structure_tests/accumulation_node_test.cc

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,24 +32,27 @@ TEST(AccumulationNode, EagerTensor) {
3232
pten::DenseTensorMeta meta = pten::DenseTensorMeta(
3333
pten::DataType::FLOAT16, paddle::framework::make_ddim({1, 1}));
3434
std::shared_ptr<pten::DenseTensor> dt0 = std::make_shared<pten::DenseTensor>(
35-
std::make_shared<paddle::experimental::DefaultAllocator>(
36-
paddle::platform::CPUPlace()),
35+
std::make_unique<paddle::experimental::DefaultAllocator>(
36+
paddle::platform::CPUPlace())
37+
.get(),
3738
meta);
3839
dt0->mutable_data<paddle::platform::float16>()[0] = 10.0;
3940
EagerTensor et0 = EagerTensor(dt0);
4041

4142
std::shared_ptr<pten::DenseTensor> dt1 = std::make_shared<pten::DenseTensor>(
42-
std::make_shared<paddle::experimental::DefaultAllocator>(
43-
paddle::platform::CPUPlace()),
43+
std::make_unique<paddle::experimental::DefaultAllocator>(
44+
paddle::platform::CPUPlace())
45+
.get(),
4446
meta);
4547

4648
dt1->mutable_data<paddle::platform::float16>()[0] = 20.0;
4749
EagerTensor et1 = EagerTensor(dt1);
4850

4951
std::shared_ptr<pten::DenseTensor> grad_dt =
5052
std::make_shared<pten::DenseTensor>(
51-
std::make_shared<paddle::experimental::DefaultAllocator>(
52-
paddle::platform::CPUPlace()),
53+
std::make_unique<paddle::experimental::DefaultAllocator>(
54+
paddle::platform::CPUPlace())
55+
.get(),
5356
meta);
5457
EagerTensor grad_et = EagerTensor(grad_dt);
5558

paddle/fluid/eager/tests/data_structure_tests/autograd_meta_test.cc

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,9 @@ TEST(AutogradMeta, MemberFunction) {
4242
pten::DenseTensorMeta meta = pten::DenseTensorMeta(
4343
pten::DataType::FLOAT32, paddle::framework::make_ddim({1, 2}));
4444
std::shared_ptr<pten::DenseTensor> dt = std::make_shared<pten::DenseTensor>(
45-
std::make_shared<paddle::experimental::DefaultAllocator>(
46-
paddle::platform::CPUPlace()),
45+
std::make_unique<paddle::experimental::DefaultAllocator>(
46+
paddle::platform::CPUPlace())
47+
.get(),
4748
meta);
4849
auto* dt_ptr = dt->mutable_data<float>();
4950
dt_ptr[0] = 5.0f;

paddle/fluid/eager/tests/data_structure_tests/eager_tensor_test.cc

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,9 @@ TEST(EagerTensor, Constructor) {
3636
pten::DenseTensorMeta meta = pten::DenseTensorMeta(
3737
pten::DataType::FLOAT32, paddle::framework::make_ddim({1, 2}));
3838
std::shared_ptr<pten::DenseTensor> dt = std::make_shared<pten::DenseTensor>(
39-
std::make_shared<paddle::experimental::DefaultAllocator>(
40-
paddle::platform::CPUPlace()),
39+
std::make_unique<paddle::experimental::DefaultAllocator>(
40+
paddle::platform::CPUPlace())
41+
.get(),
4142
meta);
4243
auto* dt_ptr = dt->mutable_data<float>();
4344
dt_ptr[0] = 5.0f;
@@ -65,8 +66,9 @@ TEST(EagerTensor, MemberFunction) {
6566
pten::DenseTensorMeta meta = pten::DenseTensorMeta(
6667
pten::DataType::FLOAT32, paddle::framework::make_ddim({1, 2}));
6768
std::shared_ptr<pten::DenseTensor> dt = std::make_shared<pten::DenseTensor>(
68-
std::make_shared<paddle::experimental::DefaultAllocator>(
69-
paddle::platform::CPUPlace()),
69+
std::make_unique<paddle::experimental::DefaultAllocator>(
70+
paddle::platform::CPUPlace())
71+
.get(),
7072
meta);
7173
auto* dt_ptr = dt->mutable_data<float>();
7274
dt_ptr[0] = 5.0f;

paddle/fluid/eager/tests/data_structure_tests/grad_node_info_test.cc

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,9 @@ TEST(GradNodeInfo, GradNodeBase) {
4141
pten::DenseTensorMeta meta = pten::DenseTensorMeta(
4242
pten::DataType::FLOAT32, paddle::framework::make_ddim({1, 1}));
4343
std::shared_ptr<pten::DenseTensor> dt = std::make_shared<pten::DenseTensor>(
44-
std::make_shared<paddle::experimental::DefaultAllocator>(
45-
paddle::platform::CPUPlace()),
44+
std::make_unique<paddle::experimental::DefaultAllocator>(
45+
paddle::platform::CPUPlace())
46+
.get(),
4647
meta);
4748
auto* dt_ptr = dt->mutable_data<float>();
4849
dt_ptr[0] = 5.0f;
@@ -97,8 +98,9 @@ TEST(GradNodeInfo, GradNodeBase) {
9798
pten::DenseTensorMeta meta = pten::DenseTensorMeta(
9899
pten::DataType::FLOAT32, paddle::framework::make_ddim({1, 1}));
99100
std::shared_ptr<pten::DenseTensor> dt = std::make_shared<pten::DenseTensor>(
100-
std::make_shared<paddle::experimental::DefaultAllocator>(
101-
paddle::platform::CPUPlace()),
101+
std::make_unique<paddle::experimental::DefaultAllocator>(
102+
paddle::platform::CPUPlace())
103+
.get(),
102104
meta);
103105
auto* dt_ptr = dt->mutable_data<float>();
104106
dt_ptr[0] = 6.0f;

paddle/fluid/eager/tests/data_structure_tests/grad_node_test.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,9 @@ class GradTestNode : public egr::GradNodeBase {
3737
pten::DenseTensorMeta meta = pten::DenseTensorMeta(
3838
pten::DataType::FLOAT32, paddle::framework::make_ddim({1, 1}));
3939
std::shared_ptr<pten::DenseTensor> dt = std::make_shared<pten::DenseTensor>(
40-
std::make_shared<paddle::experimental::DefaultAllocator>(
41-
paddle::platform::CPUPlace()),
40+
std::make_unique<paddle::experimental::DefaultAllocator>(
41+
paddle::platform::CPUPlace())
42+
.get(),
4243
meta);
4344
auto* dt_ptr = dt->mutable_data<float>();
4445
dt_ptr[0] = 6.0f;

paddle/fluid/eager/tests/data_structure_tests/grad_tensor_holder_test.cc

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,9 @@ TEST(GradTensorHolder, Constructor) {
3636
pten::DenseTensorMeta meta = pten::DenseTensorMeta(
3737
pten::DataType::FLOAT32, paddle::framework::make_ddim({2, 2}));
3838
std::shared_ptr<pten::DenseTensor> dt = std::make_shared<pten::DenseTensor>(
39-
std::make_shared<paddle::experimental::DefaultAllocator>(
40-
paddle::platform::CPUPlace()),
39+
std::make_unique<paddle::experimental::DefaultAllocator>(
40+
paddle::platform::CPUPlace())
41+
.get(),
4142
meta);
4243
EagerTensor et = EagerTensor(dt);
4344

@@ -52,15 +53,17 @@ TEST(GradTensorHolder, Interfaces) {
5253
pten::DenseTensorMeta meta = pten::DenseTensorMeta(
5354
pten::DataType::FLOAT32, paddle::framework::make_ddim({1, 1}));
5455
std::shared_ptr<pten::DenseTensor> dt0 = std::make_shared<pten::DenseTensor>(
55-
std::make_shared<paddle::experimental::DefaultAllocator>(
56-
paddle::platform::CPUPlace()),
56+
std::make_unique<paddle::experimental::DefaultAllocator>(
57+
paddle::platform::CPUPlace())
58+
.get(),
5759
meta);
5860
dt0->mutable_data<float>()[0] = 10.0;
5961
EagerTensor et0 = EagerTensor(dt0);
6062

6163
std::shared_ptr<pten::DenseTensor> dt1 = std::make_shared<pten::DenseTensor>(
62-
std::make_shared<paddle::experimental::DefaultAllocator>(
63-
paddle::platform::CPUPlace()),
64+
std::make_unique<paddle::experimental::DefaultAllocator>(
65+
paddle::platform::CPUPlace())
66+
.get(),
6467
meta);
6568
dt1->mutable_data<float>()[0] = 20.0;
6669
EagerTensor et1 = EagerTensor(dt1);

paddle/fluid/eager/tests/data_structure_tests/tensor_wrapper_test.cc

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,9 @@ TEST(TensorWrapper, Basic) {
2525
pten::DenseTensorMeta meta = pten::DenseTensorMeta(
2626
pten::DataType::FLOAT32, paddle::framework::make_ddim({1, 2}));
2727
std::shared_ptr<pten::DenseTensor> dt = std::make_shared<pten::DenseTensor>(
28-
std::make_shared<paddle::experimental::DefaultAllocator>(
29-
paddle::platform::CPUPlace()),
28+
std::make_unique<paddle::experimental::DefaultAllocator>(
29+
paddle::platform::CPUPlace())
30+
.get(),
3031
meta);
3132
auto* dt_ptr = dt->mutable_data<float>();
3233
dt_ptr[0] = 5.0f;
@@ -51,8 +52,9 @@ TEST(TensorWrapper, Basic) {
5152
pten::DenseTensorMeta meta2 = pten::DenseTensorMeta(
5253
pten::DataType::FLOAT32, paddle::framework::make_ddim({1, 2}));
5354
std::shared_ptr<pten::DenseTensor> dt2 = std::make_shared<pten::DenseTensor>(
54-
std::make_shared<paddle::experimental::DefaultAllocator>(
55-
paddle::platform::CPUPlace()),
55+
std::make_unique<paddle::experimental::DefaultAllocator>(
56+
paddle::platform::CPUPlace())
57+
.get(),
5658
meta2);
5759
auto* dt_ptr2 = dt->mutable_data<float>();
5860
dt_ptr2[0] = 6.0f;

paddle/fluid/eager/tests/task_tests/eager_utils_test.cc

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,15 +31,17 @@ TEST(EagerUtils, AutoGradMeta) {
3131
pten::DenseTensorMeta meta = pten::DenseTensorMeta(
3232
pten::DataType::FLOAT32, paddle::framework::make_ddim({1, 1}));
3333
std::shared_ptr<pten::DenseTensor> dt0 = std::make_shared<pten::DenseTensor>(
34-
std::make_shared<paddle::experimental::DefaultAllocator>(
35-
paddle::platform::CPUPlace()),
34+
std::make_unique<paddle::experimental::DefaultAllocator>(
35+
paddle::platform::CPUPlace())
36+
.get(),
3637
meta);
3738
dt0->mutable_data<float>()[0] = 10.0;
3839
EagerTensor et0 = EagerTensor(dt0);
3940

4041
std::shared_ptr<pten::DenseTensor> dt1 = std::make_shared<pten::DenseTensor>(
41-
std::make_shared<paddle::experimental::DefaultAllocator>(
42-
paddle::platform::CPUPlace()),
42+
std::make_unique<paddle::experimental::DefaultAllocator>(
43+
paddle::platform::CPUPlace())
44+
.get(),
4345
meta);
4446
dt1->mutable_data<float>()[0] = 20.0;
4547
EagerTensor et1 = EagerTensor(dt1);
@@ -106,8 +108,9 @@ egr::EagerTensor CreateTestCPUTensor(T val,
106108
pten::DenseTensorMeta(pten::DataType::FLOAT32, ddim);
107109
egr::EagerTensor tensor;
108110
std::shared_ptr<pten::DenseTensor> dt = std::make_shared<pten::DenseTensor>(
109-
std::make_shared<paddle::experimental::DefaultAllocator>(
110-
paddle::platform::CPUPlace()),
111+
std::make_unique<paddle::experimental::DefaultAllocator>(
112+
paddle::platform::CPUPlace())
113+
.get(),
111114
meta);
112115
auto* dt_ptr = dt->mutable_data<T>();
113116
for (int64_t i = 0; i < dt->numel(); i++) {

paddle/pten/api/lib/utils/allocator.h

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -22,25 +22,15 @@ limitations under the License. */
2222
namespace paddle {
2323
namespace experimental {
2424

25-
class DefaultAllocator : public pten::deprecated::Allocator {
25+
class DefaultAllocator : public pten::Allocator {
2626
public:
27-
using Allocation = pten::deprecated::Allocation;
2827
explicit DefaultAllocator(const paddle::platform::Place& place)
2928
: place_(place) {}
3029

31-
static void Delete(Allocation* allocation) {
32-
paddle::memory::allocation::Allocator::AllocationDeleter(
33-
allocation->CastContextWithoutCheck<paddle::memory::Allocation>());
30+
AllocationPtr Allocate(size_t bytes_size) override {
31+
return memory::Alloc(place_, bytes_size);
3432
}
3533

36-
Allocation Allocate(size_t bytes_size) override {
37-
paddle::memory::AllocationPtr a = memory::Alloc(place_, bytes_size);
38-
void* ptr = a->ptr();
39-
return Allocation(ptr, a.release(), &Delete, place_);
40-
}
41-
42-
const paddle::platform::Place& place() override { return place_; }
43-
4434
private:
4535
paddle::platform::Place place_;
4636
};

paddle/pten/core/dense_tensor.cc

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,11 @@ limitations under the License. */
2424

2525
namespace pten {
2626

27-
DenseTensor::DenseTensor(const std::shared_ptr<Allocator>& a,
28-
const DenseTensorMeta& meta)
27+
DenseTensor::DenseTensor(Allocator* a, const DenseTensorMeta& meta)
2928
: meta_(meta),
3029
storage_(make_intrusive<TensorStorage>(a, SizeOf(dtype()) * numel())) {}
3130

32-
DenseTensor::DenseTensor(const std::shared_ptr<Allocator>& a,
33-
DenseTensorMeta&& meta)
31+
DenseTensor::DenseTensor(Allocator* a, DenseTensorMeta&& meta)
3432
: meta_(std::move(meta)),
3533
storage_(make_intrusive<TensorStorage>(a, SizeOf(dtype()) * numel())) {}
3634

0 commit comments

Comments
 (0)