## Unit3.3.3Implementation: packing row panel of $B_{p,j}$

We briefly discuss the packing of the row panel $B_{p,j}$ into $\widetilde B_{p,j} \text{:}$

We break the implementation, in Assignments/Week3/C/PackB.c, down into two routines. The first loops over all the panels that need to be packed

as illustrated in Figure 3.3.2.

That routine then calls a routine that pack the panel

Given in Figure 3.3.3.

###### Remark3.3.4.

Notice that these routines only work when the sizes are "nice". We leave it as a challenge to generalize all implementations so that matrix-matrix multiplication with arbitrary problem sizes works. To manage the complexity of this, we recommend "padding" the matrices with zeroes as they are being packed. This then keeps the micro-kernel simple.