Uploaded image for project: 'Mahout'
  1. Mahout
  2. MAHOUT-2019

SparseRowMatrix assign ops user for loops instead of iterateNonZero and so can be optimized

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 0.13.0
    • Fix Version/s: 14.2
    • Component/s: Math
    • Labels:
      None

      Description

      DRMs get blockified into SparseRowMatrix instances if the density is low. But SRM inherits the implementation of method like "assign" from AbstractMatrix, which uses nest for loops to traverse rows. For multiplying 2 matrices that are extremely sparse, the kind if data you see in collaborative filtering, this is extremely wasteful of execution time. Better to use a sparse vector's iterateNonZero Iterator for some function types.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                pferrel Pat Ferrel
                Reporter:
                pferrel Pat Ferrel
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated: