Skip to content

Commit d2e8297

Browse files
authored
add more slice case (#609)
1 parent 912959a commit d2e8297

File tree

7 files changed

+865624
-28
lines changed

7 files changed

+865624
-28
lines changed

tester/api_config/8_big_tensor/slice/big_tensor_1223.txt

Lines changed: 1112 additions & 0 deletions
Large diffs are not rendered by default.

tester/api_config/8_big_tensor/slice/big_tensor_1225_setitem.txt

Lines changed: 66090 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 120 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,120 @@
1+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), slice(0,100,2))
2+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), slice(0,100,2))
3+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), slice(0,100,2), 1.25)
4+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), slice(0,100,2), 1.25)
5+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), slice(0,100,2), Tensor([1], 'float32'))
6+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), slice(0,100,2), Tensor([1], 'float32'))
7+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), tuple(slice(0,4,2),slice(None,None,None),slice(1,-1,None),))
8+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), tuple(slice(0,4,2),slice(None,None,None),slice(1,-1,None),))
9+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), tuple(slice(0,4,2),slice(None,None,None),slice(1,-1,None),), 1.25)
10+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), tuple(slice(0,4,2),slice(None,None,None),slice(1,-1,None),), 1.25)
11+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), tuple(slice(0,4,2),slice(None,None,None),slice(1,-1,None),), Tensor([1], 'float32'))
12+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), tuple(slice(0,4,2),slice(None,None,None),slice(1,-1,None),), Tensor([1], 'float32'))
13+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), tuple(0,0,0,None,))
14+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), tuple(0,0,0,None,))
15+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), tuple(0,0,0,None,), 1.25)
16+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), tuple(0,0,0,None,), 1.25)
17+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), tuple(0,0,0,None,), Tensor([1], 'float32'))
18+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), tuple(0,0,0,None,), Tensor([1], 'float32'))
19+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), Ellipsis)
20+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), Ellipsis)
21+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), Ellipsis, 1.25)
22+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), Ellipsis, 1.25)
23+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), Ellipsis, Tensor([1], 'float32'))
24+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), Ellipsis, Tensor([1], 'float32'))
25+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), tuple(0,slice(None,None,None),0,None,))
26+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), tuple(0,slice(None,None,None),0,None,))
27+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), tuple(0,slice(None,None,None),0,None,), 1.25)
28+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), tuple(0,slice(None,None,None),0,None,), 1.25)
29+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), tuple(0,slice(None,None,None),0,None,), Tensor([1], 'float32'))
30+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), tuple(0,slice(None,None,None),0,None,), Tensor([1], 'float32'))
31+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), True)
32+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), True)
33+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), True, 1.25)
34+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), True, 1.25)
35+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), True, Tensor([1], 'float32'))
36+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), True, Tensor([1], 'float32'))
37+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), Tensor([108], 'bool'))
38+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), Tensor([108], 'bool'))
39+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), Tensor([108], 'bool'), 1.25)
40+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), Tensor([108], 'bool'), 1.25)
41+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), Tensor([108], 'bool'), Tensor([1], 'float32'))
42+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), Tensor([108], 'bool'), Tensor([1], 'float32'))
43+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), Tensor([108, 64], 'bool'))
44+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), Tensor([108, 64], 'bool'))
45+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), Tensor([108, 64], 'bool'), 1.25)
46+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), Tensor([108, 64], 'bool'), 1.25)
47+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), Tensor([108, 64], 'bool'), Tensor([1], 'float32'))
48+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), Tensor([108, 64], 'bool'), Tensor([1], 'float32'))
49+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), Tensor([108, 64, 12288], 'bool'))
50+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), Tensor([108, 64, 12288], 'bool'))
51+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), Tensor([108, 64, 12288], 'bool'), 1.25)
52+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), Tensor([108, 64, 12288], 'bool'), 1.25)
53+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), Tensor([108, 64, 12288], 'bool'), Tensor([1], 'float32'))
54+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), Tensor([108, 64, 12288], 'bool'), Tensor([1], 'float32'))
55+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), list[1, 0, 2])
56+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), list[1, 0, 2])
57+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), list[1, 0, 2], 1.25)
58+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), list[1, 0, 2], 1.25)
59+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), list[1, 0, 2], Tensor([1], 'float32'))
60+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), list[1, 0, 2], Tensor([1], 'float32'))
61+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), tuple(list[0, 1],list[3, 2],list[0, 2],))
62+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), tuple(list[0, 1],list[3, 2],list[0, 2],))
63+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), tuple(list[0, 1],list[3, 2],list[0, 2],), 1.25)
64+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), tuple(list[0, 1],list[3, 2],list[0, 2],), 1.25)
65+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), tuple(list[0, 1],list[3, 2],list[0, 2],), Tensor([1], 'float32'))
66+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), tuple(list[0, 1],list[3, 2],list[0, 2],), Tensor([1], 'float32'))
67+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), Tensor([2, 4, 6], 'int'))
68+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), Tensor([2, 4, 6], 'int'))
69+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), Tensor([2, 4, 6], 'int'), 1.25)
70+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), Tensor([2, 4, 6], 'int'), 1.25)
71+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), Tensor([2, 4, 6], 'int'), Tensor([1], 'float32'))
72+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), Tensor([2, 4, 6], 'int'), Tensor([1], 'float32'))
73+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), Tensor([], 'int'))
74+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), Tensor([], 'int'))
75+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), Tensor([], 'int'), 1.25)
76+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), Tensor([], 'int'), 1.25)
77+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), Tensor([], 'int'), Tensor([1], 'float32'))
78+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), Tensor([], 'int'), Tensor([1], 'float32'))
79+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), tuple(Tensor([2], 'int'),Tensor([2], 'int'),))
80+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), tuple(Tensor([2], 'int'),Tensor([2], 'int'),))
81+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), tuple(Tensor([2], 'int'),Tensor([2], 'int'),), 1.25)
82+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), tuple(Tensor([2], 'int'),Tensor([2], 'int'),), 1.25)
83+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), tuple(Tensor([2], 'int'),Tensor([2], 'int'),), Tensor([1], 'float32'))
84+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), tuple(Tensor([2], 'int'),Tensor([2], 'int'),), Tensor([1], 'float32'))
85+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), tuple(slice(None,None,None),3,list[0, 2],))
86+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), tuple(slice(None,None,None),3,list[0, 2],))
87+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), tuple(slice(None,None,None),3,list[0, 2],), 1.25)
88+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), tuple(slice(None,None,None),3,list[0, 2],), 1.25)
89+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), tuple(slice(None,None,None),3,list[0, 2],), Tensor([1], 'float32'))
90+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), tuple(slice(None,None,None),3,list[0, 2],), Tensor([1], 'float32'))
91+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), tuple(slice(None,None,None),list[0],None,0,))
92+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), tuple(slice(None,None,None),list[0],None,0,))
93+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), tuple(slice(None,None,None),list[0],None,0,), 1.25)
94+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), tuple(slice(None,None,None),list[0],None,0,), 1.25)
95+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), tuple(slice(None,None,None),list[0],None,0,), Tensor([1], 'float32'))
96+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), tuple(slice(None,None,None),list[0],None,0,), Tensor([1], 'float32'))
97+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), tuple(Tensor([108], 'bool'),slice(None,None,None),-1,))
98+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), tuple(Tensor([108], 'bool'),slice(None,None,None),-1,))
99+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), tuple(Tensor([108], 'bool'),slice(None,None,None),-1,), 1.25)
100+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), tuple(Tensor([108], 'bool'),slice(None,None,None),-1,), 1.25)
101+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), tuple(Tensor([108], 'bool'),slice(None,None,None),-1,), Tensor([1], 'float32'))
102+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), tuple(Tensor([108], 'bool'),slice(None,None,None),-1,), Tensor([1], 'float32'))
103+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), tuple(slice(0,4,2),3,list[0, 2],))
104+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288], 'float16'), tuple(slice(0,4,2),3,list[0, 2],))
105+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), tuple(slice(0,4,2),3,list[0, 2],), 1.25)
106+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float16'), tuple(slice(0,4,2),3,list[0, 2],), 1.25)
107+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), tuple(slice(0,4,2),3,list[0, 2],), Tensor([1], 'float32'))
108+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288], 'float32'), tuple(slice(0,4,2),3,list[0, 2],), Tensor([1], 'float32'))
109+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288, 3], 'float16'), tuple(1,list[1, 2],slice(None,None,None),Tensor([2], 'int'),))
110+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288, 3], 'float16'), tuple(1,list[1, 2],slice(None,None,None),Tensor([2], 'int'),))
111+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288, 3], 'float16'), tuple(1,list[1, 2],slice(None,None,None),Tensor([2], 'int'),), 1.25)
112+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288, 3], 'float16'), tuple(1,list[1, 2],slice(None,None,None),Tensor([2], 'int'),), 1.25)
113+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288, 3], 'float32'), tuple(1,list[1, 2],slice(None,None,None),Tensor([2], 'int'),), Tensor([1], 'float32'))
114+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288, 3], 'float32'), tuple(1,list[1, 2],slice(None,None,None),Tensor([2], 'int'),), Tensor([1], 'float32'))
115+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288, 3], 'float16'), tuple(slice(None,None,None),list[1, 2],slice(None,None,None),list[1],))
116+
paddle.Tensor.__getitem__(Tensor([108, 64, 12288, 3], 'float16'), tuple(slice(None,None,None),list[1, 2],slice(None,None,None),list[1],))
117+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288, 3], 'float16'), tuple(slice(None,None,None),list[1, 2],slice(None,None,None),list[1],), 1.25)
118+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288, 3], 'float16'), tuple(slice(None,None,None),list[1, 2],slice(None,None,None),list[1],), 1.25)
119+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288, 3], 'float32'), tuple(slice(None,None,None),list[1, 2],slice(None,None,None),list[1],), Tensor([1], 'float32'))
120+
paddle.Tensor.__setitem__(Tensor([108, 64, 12288, 3], 'float32'), tuple(slice(None,None,None),list[1, 2],slice(None,None,None),list[1],), Tensor([1], 'float32'))

tester/api_config/config_analyzer.py

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2480,15 +2480,18 @@ def get_padding_offset(bsz, max_seq_len, seq_lens_this_time):
24802480
arr = self.get_arg(api_config, 0, "arr")
24812481
value = self.get_arg(api_config, 2, "value")
24822482
min_dim = min(arr.shape)
2483-
if value is not None and hasattr(value, "shape"):
2484-
indices = numpy.zeros(self.numel(), dtype="int64")
2485-
num_true = min(value.shape[0], self.numel())
2486-
true_indices = numpy.random.choice(
2487-
self.numel(), size=num_true, replace=False
2488-
)
2489-
indices[true_indices] = 1
2483+
if self.dtype == "bool":
2484+
if value is not None and hasattr(value, "shape"):
2485+
indices = numpy.zeros(self.numel(), dtype="int64")
2486+
num_true = min(value.shape[0], self.numel())
2487+
true_indices = numpy.random.choice(
2488+
self.numel(), size=num_true, replace=False
2489+
)
2490+
indices[true_indices] = 1
2491+
else:
2492+
indices = numpy.random.choice([0, 1], size=self.numel())
24902493
else:
2491-
indices = numpy.random.choice([0, 1], size=self.numel())
2494+
indices = numpy.random.randint(0, min_dim, size=self.numel())
24922495
self.numpy_tensor = indices.reshape(self.shape).astype(self.dtype)
24932496

24942497
elif api_config.api_name == "paddle.poisson":

0 commit comments

Comments
 (0)