[
https://issues.apache.org/jira/browse/MAHOUT-435?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sean Owen updated MAHOUT-435:
-----------------------------
Resolution: Fixed
Fix Version/s: 0.5
Assignee: Sean Owen
Status: Resolved (was: Patch Available)
> Add assign(DenseVector)/assign(DenseMatrix) function to
> DenseVector/DenseMatrix
> -------------------------------------------------------------------------------
>
> Key: MAHOUT-435
> URL: https://issues.apache.org/jira/browse/MAHOUT-435
> Project: Mahout
> Issue Type: New Feature
> Components: Math
> Reporter: Max Heimel
> Assignee: Sean Owen
> Priority: Minor
> Fix For: 0.5
>
> Attachments: MAHOUT-435.diff
>
>
> This new feature would add a new overloaded assign function to
> (Dense)Vector/(Dense)Matrix, that allows to assign the content of another
> (Dense)Vector / (Dense)Matrix by overwriting the content of the internal
> double array. Compared to using .clone(), this feature would reduce the
> number of memory allocations.
> For example in case of an iterative algorithm, that needs to check for
> convergence;
> {code:title=Convergence check using .clone()|borderStyle=solid}
> Densematrix newMatrix = oldMatrix.clone();
> while(!converged)
> {
> // perform iteration computation on newMatrix
> converged=checkConvergence(newMatrix,oldMatrix);
> oldMatrix = newMatrix.clone(); // results in memory allocation
> }
> {code}
> {code:title=Convergence check using .assign(Matrix)|borderStyle=solid}
> Densematrix newMatrix = oldMatrix.clone();
> while(!converged)
> {
> // perform iteration computation on newMatrix
> converged=checkConvergence(newMatrix,oldMatrix);
> oldMatrix.assign(newMatrix); // no memory allocation
> }
> {code}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.