Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

systolic-array: Fix bugs for small PE configurations. #45

Merged
merged 2 commits into from
Jan 21, 2022

Commits on Jan 19, 2022

  1. systolic-array: Fix bugs for small PE configurations.

    To compute a large convolution, we tile the operation into two levels of
    "folds". First, the kernels are tiled into (numKerns / peArrayCols) weight
    folds (as each PE column will finish a kernel), and within each weight fold,
    each output feature map is further tiled into (outputRows * outputCols /
    peArrayRows) output folds (as each PE row is responsible for producing a output
    channel). Each PE row has a commit unit that collects finished results from the
    row and writes the data to the output scratchpad. The current write size is
    always set to the line size of the scratchpad, which is not correct for a small
    PE column size where the entire row doesn't form a line. This commit fixes this
    by taking into account when peArrayCols is smaller than elemsInLine.
    
    Also, this also fixes the incorrect initial tensor iterator place for the
    commit units.
    
    Change-Id: Iacc69f5d4cfa12512f25a19879b7e1aaa292a9d9
    yaoyuannnn committed Jan 19, 2022
    Configuration menu
    Copy the full SHA
    7cc5300 View commit details
    Browse the repository at this point in the history

Commits on Jan 21, 2022

  1. systolic-array: Address comments.

    Change-Id: I18ff5af077753a776f382ad386529cace5b9ed8e
    yaoyuannnn committed Jan 21, 2022
    Configuration menu
    Copy the full SHA
    bf2e4aa View commit details
    Browse the repository at this point in the history