Skip to content

Commit 105f4a3

Browse files
add e2e test for n:m
1 parent c731e56 commit 105f4a3

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_ds.mlir

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,13 @@
4545
crdWidth = 8
4646
}>
4747

48+
#NV_58 = #sparse_tensor.encoding<{
49+
map = ( i, j ) -> ( i : dense,
50+
j floordiv 8 : dense,
51+
j mod 8 : structured[5, 8]),
52+
crdWidth = 8
53+
}>
54+
4855
module {
4956

5057
func.func private @getTensorFilename(index) -> (!Filename)
@@ -65,6 +72,7 @@ module {
6572
%A1 = sparse_tensor.new %fileName : !Filename to tensor<?x?xf64, #CSR>
6673
%A2 = sparse_tensor.new %fileName : !Filename to tensor<?x?xf64, #CSR_hi>
6774
%A3 = sparse_tensor.new %fileName : !Filename to tensor<?x?xf64, #NV_24>
75+
%A4 = sparse_tensor.new %fileName : !Filename to tensor<?x?xf64, #NV_58>
6876

6977
//
7078
// CSR:
@@ -113,10 +121,24 @@ module {
113121
%vecv3 = vector.transfer_read %val3[%c0], %f0 : memref<?xf64>, vector<12xf64>
114122
vector.print %vecv3 : vector<12xf64>
115123

124+
//
125+
// NV_58
126+
//
127+
// CHECK-NEXT: ( 2, 3, 5, 7, 1, 2, 4, 7, 0, 2, 4, 5 )
128+
// CHECK-NEXT: ( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 )
129+
//
130+
%crd4 = sparse_tensor.coordinates %A4 {level = 2 : index } : tensor<?x?xf64, #NV_58> to memref<?xi8>
131+
%vecc4 = vector.transfer_read %crd4[%c0], %u0 : memref<?xi8>, vector<12xi8>
132+
vector.print %vecc4 : vector<12xi8>
133+
%val4 = sparse_tensor.values %A4 : tensor<?x?xf64, #NV_58> to memref<?xf64>
134+
%vecv4 = vector.transfer_read %val4[%c0], %f0 : memref<?xf64>, vector<12xf64>
135+
vector.print %vecv4 : vector<12xf64>
136+
116137
// Release the resources.
117138
bufferization.dealloc_tensor %A1: tensor<?x?xf64, #CSR>
118139
bufferization.dealloc_tensor %A2: tensor<?x?xf64, #CSR_hi>
119140
bufferization.dealloc_tensor %A3: tensor<?x?xf64, #NV_24>
141+
bufferization.dealloc_tensor %A4: tensor<?x?xf64, #NV_58>
120142

121143
return
122144
}

0 commit comments

Comments
 (0)