Discussion:
[jira] [Created] (MAHOUT-1960) Flipped sign in the SparseSparseDrmTimer.mscala causes Desnse Matrix multiplication
Andrew Palumbo (JIRA)
2017-03-26 04:05:42 UTC
Permalink
Andrew Palumbo created MAHOUT-1960:
--------------------------------------

Summary: Flipped sign in the SparseSparseDrmTimer.mscala causes Desnse Matrix multiplication
Key: MAHOUT-1960
URL: https://issues.apache.org/jira/browse/MAHOUT-1960
Project: Mahout
Issue Type: Bug
Affects Versions: 0.13.0
Reporter: Andrew Palumbo
Assignee: Andrew Palumbo
Priority: Blocker
Fix For: 0.13.0


In {{SparseSparseDrmTimer.mscala}} with the signature:
{code}
def timeSparseDRMMMul(m: Int, n: Int, s: Int, para: Int, pctDense: Double = .20, seed: Long = 1234L): Long = {
{code}
the {{pctDense}} argument indicates the percent of nonZero elements in the matrix.

As is the code to produce a random DRM for testing is as follows:

{code}
val drmA = drmParallelizeEmpty(m , s, para).mapBlock(){
case (keys,block:Matrix) =>
val R = scala.util.Random
R.setSeed(seed)
val blockB = new SparseRowMatrix(block.nrow, block.ncol)
blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
(keys -> blockB)
}
{code)

The greater than sign in line:
{code}
blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
{code}

should be less than; i.e.:
{code}
blockB := {x => if (R.nextDouble < pctDense) R.nextDouble else x }
{code}

This incorrect sign produces matrices of Incorrect density and can cause OOM errors.




--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
Andrew Palumbo (JIRA)
2017-03-26 04:15:42 UTC
Permalink
[ https://issues.apache.org/jira/browse/MAHOUT-1960?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Palumbo updated MAHOUT-1960:
-----------------------------------
Description:
In {{SparseSparseDrmTimer.mscala}} with the signature:


def timeSparseDRMMMul(m: Int, n: Int, s: Int, para: Int, pctDense: Double = .20, seed: Long = 1234L): Long = {


the {{pctDense}} argument indicates the percent of nonZero elements in the matrix.

As is the code to produce a random DRM for testing is as follows:
{code}
val drmA = drmParallelizeEmpty(m , s, para).mapBlock(){
case (keys,block:Matrix) =>
val R = scala.util.Random
R.setSeed(seed)
val blockB = new SparseRowMatrix(block.nrow, block.ncol)
blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
(keys -> blockB)
}
{code}
The greater than sign in line:

blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }

should be a less than sign; i.e.:

blockB := {x => if (R.nextDouble < pctDense) R.nextDouble else x }

This incorrect sign produces matrices of Incorrect density and can cause OOM errors.


was:
In {{SparseSparseDrmTimer.mscala}} with the signature:
{code}
def timeSparseDRMMMul(m: Int, n: Int, s: Int, para: Int, pctDense: Double = .20, seed: Long = 1234L): Long = {
{code}
the {{pctDense}} argument indicates the percent of nonZero elements in the matrix.

As is the code to produce a random DRM for testing is as follows:

{code}
val drmA = drmParallelizeEmpty(m , s, para).mapBlock(){
case (keys,block:Matrix) =>
val R = scala.util.Random
R.setSeed(seed)
val blockB = new SparseRowMatrix(block.nrow, block.ncol)
blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
(keys -> blockB)
}
{code)

The greater than sign in line:
{code}
blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
{code}

should be less than; i.e.:
{code}
blockB := {x => if (R.nextDouble < pctDense) R.nextDouble else x }
{code}

This incorrect sign produces matrices of Incorrect density and can cause OOM errors.
Post by Andrew Palumbo (JIRA)
Flipped sign in the SparseSparseDrmTimer.mscala causes Desnse Matrix multiplication
-----------------------------------------------------------------------------------
Key: MAHOUT-1960
URL: https://issues.apache.org/jira/browse/MAHOUT-1960
Project: Mahout
Issue Type: Bug
Affects Versions: 0.13.0
Reporter: Andrew Palumbo
Assignee: Andrew Palumbo
Priority: Blocker
Fix For: 0.13.0
def timeSparseDRMMMul(m: Int, n: Int, s: Int, para: Int, pctDense: Double = .20, seed: Long = 1234L): Long = {
the {{pctDense}} argument indicates the percent of nonZero elements in the matrix.
{code}
val drmA = drmParallelizeEmpty(m , s, para).mapBlock(){
case (keys,block:Matrix) =>
val R = scala.util.Random
R.setSeed(seed)
val blockB = new SparseRowMatrix(block.nrow, block.ncol)
blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
(keys -> blockB)
}
{code}
blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
blockB := {x => if (R.nextDouble < pctDense) R.nextDouble else x }
This incorrect sign produces matrices of Incorrect density and can cause OOM errors.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
Andrew Palumbo (JIRA)
2017-03-26 04:20:41 UTC
Permalink
[ https://issues.apache.org/jira/browse/MAHOUT-1960?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Work on MAHOUT-1960 started by Andrew Palumbo.
----------------------------------------------
Post by Andrew Palumbo (JIRA)
Flipped sign in the SparseSparseDrmTimer.mscala causes Desnse Matrix multiplication
-----------------------------------------------------------------------------------
Key: MAHOUT-1960
URL: https://issues.apache.org/jira/browse/MAHOUT-1960
Project: Mahout
Issue Type: Bug
Affects Versions: 0.13.0
Reporter: Andrew Palumbo
Assignee: Andrew Palumbo
Priority: Blocker
Fix For: 0.13.0
def timeSparseDRMMMul(m: Int, n: Int, s: Int, para: Int, pctDense: Double = .20, seed: Long = 1234L): Long = {
the {{pctDense}} argument indicates the percent of nonZero elements in the matrix.
{code}
val drmA = drmParallelizeEmpty(m , s, para).mapBlock(){
case (keys,block:Matrix) =>
val R = scala.util.Random
R.setSeed(seed)
val blockB = new SparseRowMatrix(block.nrow, block.ncol)
blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
(keys -> blockB)
}
{code}
blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
blockB := {x => if (R.nextDouble < pctDense) R.nextDouble else x }
This incorrect sign produces matrices of Incorrect density and can cause OOM errors.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
ASF GitHub Bot (JIRA)
2017-03-26 04:35:42 UTC
Permalink
[ https://issues.apache.org/jira/browse/MAHOUT-1960?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15942134#comment-15942134 ]

ASF GitHub Bot commented on MAHOUT-1960:
----------------------------------------

GitHub user andrewpalumbo opened a pull request:

https://github.com/apache/mahout/pull/298

MAHOUT-1960 fix flipped sign in example.

Fix flipped sign.

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/andrewpalumbo/mahout MAHOUT-1960

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/mahout/pull/298.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #298

----
commit 8429fa9fdad89f8c99e4fa176a182df3cf8b5f42
Author: Andrew Palumbo <***@apache.org>
Date: 2017-03-26T04:23:38Z

fix flipped sign in example.

----
Post by Andrew Palumbo (JIRA)
Flipped sign in the SparseSparseDrmTimer.mscala causes Desnse Matrix multiplication
-----------------------------------------------------------------------------------
Key: MAHOUT-1960
URL: https://issues.apache.org/jira/browse/MAHOUT-1960
Project: Mahout
Issue Type: Bug
Affects Versions: 0.13.0
Reporter: Andrew Palumbo
Assignee: Andrew Palumbo
Priority: Blocker
Fix For: 0.13.0
def timeSparseDRMMMul(m: Int, n: Int, s: Int, para: Int, pctDense: Double = .20, seed: Long = 1234L): Long = {
the {{pctDense}} argument indicates the percent of nonZero elements in the matrix.
{code}
val drmA = drmParallelizeEmpty(m , s, para).mapBlock(){
case (keys,block:Matrix) =>
val R = scala.util.Random
R.setSeed(seed)
val blockB = new SparseRowMatrix(block.nrow, block.ncol)
blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
(keys -> blockB)
}
{code}
blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
blockB := {x => if (R.nextDouble < pctDense) R.nextDouble else x }
This incorrect sign produces matrices of Incorrect density and can cause OOM errors.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
ASF GitHub Bot (JIRA)
2017-03-27 16:51:42 UTC
Permalink
[ https://issues.apache.org/jira/browse/MAHOUT-1960?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15943617#comment-15943617 ]

ASF GitHub Bot commented on MAHOUT-1960:
----------------------------------------

Github user asfgit closed the pull request at:

https://github.com/apache/mahout/pull/298
Post by Andrew Palumbo (JIRA)
Flipped sign in the SparseSparseDrmTimer.mscala causes Desnse Matrix multiplication
-----------------------------------------------------------------------------------
Key: MAHOUT-1960
URL: https://issues.apache.org/jira/browse/MAHOUT-1960
Project: Mahout
Issue Type: Bug
Affects Versions: 0.13.0
Reporter: Andrew Palumbo
Assignee: Andrew Palumbo
Priority: Blocker
Fix For: 0.13.0
def timeSparseDRMMMul(m: Int, n: Int, s: Int, para: Int, pctDense: Double = .20, seed: Long = 1234L): Long = {
the {{pctDense}} argument indicates the percent of nonZero elements in the matrix.
{code}
val drmA = drmParallelizeEmpty(m , s, para).mapBlock(){
case (keys,block:Matrix) =>
val R = scala.util.Random
R.setSeed(seed)
val blockB = new SparseRowMatrix(block.nrow, block.ncol)
blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
(keys -> blockB)
}
{code}
blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
blockB := {x => if (R.nextDouble < pctDense) R.nextDouble else x }
This incorrect sign produces matrices of Incorrect density and can cause OOM errors.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
Hudson (JIRA)
2017-03-27 18:21:41 UTC
Permalink
[ https://issues.apache.org/jira/browse/MAHOUT-1960?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15943773#comment-15943773 ]

Hudson commented on MAHOUT-1960:
--------------------------------

SUCCESS: Integrated in Jenkins build Mahout-Quality #3458 (See [https://builds.apache.org/job/Mahout-Quality/3458/])
MAHOUT-1960: fix flipped sign in example closes apache/mahout#298 (akm: rev 28c1d20e21dcb97235a0c4dd5a0e22bf1783f6cc)
* (edit) README.md
Post by Andrew Palumbo (JIRA)
Flipped sign in the SparseSparseDrmTimer.mscala causes Desnse Matrix multiplication
-----------------------------------------------------------------------------------
Key: MAHOUT-1960
URL: https://issues.apache.org/jira/browse/MAHOUT-1960
Project: Mahout
Issue Type: Bug
Affects Versions: 0.13.0
Reporter: Andrew Palumbo
Assignee: Andrew Palumbo
Priority: Blocker
Fix For: 0.13.0
def timeSparseDRMMMul(m: Int, n: Int, s: Int, para: Int, pctDense: Double = .20, seed: Long = 1234L): Long = {
the {{pctDense}} argument indicates the percent of nonZero elements in the matrix.
{code}
val drmA = drmParallelizeEmpty(m , s, para).mapBlock(){
case (keys,block:Matrix) =>
val R = scala.util.Random
R.setSeed(seed)
val blockB = new SparseRowMatrix(block.nrow, block.ncol)
blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
(keys -> blockB)
}
{code}
blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
blockB := {x => if (R.nextDouble < pctDense) R.nextDouble else x }
This incorrect sign produces matrices of Incorrect density and can cause OOM errors.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
Trevor Grant (JIRA)
2017-04-28 01:07:04 UTC
Permalink
[ https://issues.apache.org/jira/browse/MAHOUT-1960?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Trevor Grant resolved MAHOUT-1960.
----------------------------------
Resolution: Fixed
Post by Andrew Palumbo (JIRA)
Flipped sign in the SparseSparseDrmTimer.mscala causes Desnse Matrix multiplication
-----------------------------------------------------------------------------------
Key: MAHOUT-1960
URL: https://issues.apache.org/jira/browse/MAHOUT-1960
Project: Mahout
Issue Type: Bug
Affects Versions: 0.13.0
Reporter: Andrew Palumbo
Assignee: Andrew Palumbo
Priority: Blocker
Fix For: 0.13.0
def timeSparseDRMMMul(m: Int, n: Int, s: Int, para: Int, pctDense: Double = .20, seed: Long = 1234L): Long = {
the {{pctDense}} argument indicates the percent of nonZero elements in the matrix.
{code}
val drmA = drmParallelizeEmpty(m , s, para).mapBlock(){
case (keys,block:Matrix) =>
val R = scala.util.Random
R.setSeed(seed)
val blockB = new SparseRowMatrix(block.nrow, block.ncol)
blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
(keys -> blockB)
}
{code}
blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
blockB := {x => if (R.nextDouble < pctDense) R.nextDouble else x }
This incorrect sign produces matrices of Incorrect density and can cause OOM errors.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Loading...