| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
| <!-- NewPage --> |
| <html lang="en"> |
| <head> |
| <!-- Generated by javadoc --> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <title>ColGroup (SystemDS 2.1.0-SNAPSHOT API)</title> |
| <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> |
| <script type="text/javascript" src="../../../../../../script.js"></script> |
| </head> |
| <body> |
| <script type="text/javascript"><!-- |
| try { |
| if (location.href.indexOf('is-external=true') == -1) { |
| parent.document.title="ColGroup (SystemDS 2.1.0-SNAPSHOT API)"; |
| } |
| } |
| catch(err) { |
| } |
| //--> |
| var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":9,"i6":6,"i7":6,"i8":10,"i9":10,"i10":6,"i11":6,"i12":6,"i13":6,"i14":10,"i15":10,"i16":6,"i17":6,"i18":6,"i19":6,"i20":6,"i21":6,"i22":6,"i23":6,"i24":6,"i25":6,"i26":6,"i27":6,"i28":6,"i29":10,"i30":6,"i31":6,"i32":6}; |
| var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"]}; |
| var altColor = "altColor"; |
| var rowColor = "rowColor"; |
| var tableTab = "tableTab"; |
| var activeTableTab = "activeTableTab"; |
| </script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| <!-- ========= START OF TOP NAVBAR ======= --> |
| <div class="topNav"><a name="navbar.top"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> |
| <a name="navbar.top.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../../../../overview-summary.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/ColGroup.html">Use</a></li> |
| <li><a href="package-tree.html">Tree</a></li> |
| <li><a href="../../../../../../deprecated-list.html">Deprecated</a></li> |
| <li><a href="../../../../../../index-all.html">Index</a></li> |
| <li><a href="../../../../../../help-doc.html">Help</a></li> |
| </ul> |
| </div> |
| <div class="subNav"> |
| <ul class="navList"> |
| <li><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ADictionary.html" title="class in org.apache.sysds.runtime.compress.colgroup"><span class="typeNameLink">Prev Class</span></a></li> |
| <li><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.CompressionType.html" title="enum in org.apache.sysds.runtime.compress.colgroup"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../../../../../../index.html?org/apache/sysds/runtime/compress/colgroup/ColGroup.html" target="_top">Frames</a></li> |
| <li><a href="ColGroup.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_top"> |
| <li><a href="../../../../../../allclasses-noframe.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_top"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li><a href="#nested.class.summary">Nested</a> | </li> |
| <li>Field | </li> |
| <li>Constr | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li>Constr | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a name="skip.navbar.top"> |
| <!-- --> |
| </a></div> |
| <!-- ========= END OF TOP NAVBAR ========= --> |
| <!-- ======== START OF CLASS DATA ======== --> |
| <div class="header"> |
| <div class="subTitle">org.apache.sysds.runtime.compress.colgroup</div> |
| <h2 title="Class ColGroup" class="title">Class ColGroup</h2> |
| </div> |
| <div class="contentContainer"> |
| <ul class="inheritance"> |
| <li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li> |
| <li> |
| <ul class="inheritance"> |
| <li>org.apache.sysds.runtime.compress.colgroup.ColGroup</li> |
| </ul> |
| </li> |
| </ul> |
| <div class="description"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <dl> |
| <dt>All Implemented Interfaces:</dt> |
| <dd><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a></dd> |
| </dl> |
| <dl> |
| <dt>Direct Known Subclasses:</dt> |
| <dd><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroupUncompressed.html" title="class in org.apache.sysds.runtime.compress.colgroup">ColGroupUncompressed</a>, <a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroupValue.html" title="class in org.apache.sysds.runtime.compress.colgroup">ColGroupValue</a></dd> |
| </dl> |
| <hr> |
| <br> |
| <pre>public abstract class <span class="typeNameLabel">ColGroup</span> |
| extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> |
| implements <a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a></pre> |
| <div class="block">Class that stores information about a column group within a compressed matrix block. There are subclasses specific to |
| each compression type.</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../../../serialized-form.html#org.apache.sysds.runtime.compress.colgroup.ColGroup">Serialized Form</a></dd> |
| </dl> |
| </li> |
| </ul> |
| </div> |
| <div class="summary"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ======== NESTED CLASS SUMMARY ======== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="nested.class.summary"> |
| <!-- --> |
| </a> |
| <h3>Nested Class Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation"> |
| <caption><span>Nested Classes</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colLast" scope="col">Class and Description</th> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>static class </code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.CompressionType.html" title="enum in org.apache.sysds.runtime.compress.colgroup">ColGroup.CompressionType</a></span></code> |
| <div class="block">Public Group types supported |
| |
| Note For instance DDC is called DDC not DDC1, or DDC2 which is a specific subtype of the DDC.</div> |
| </td> |
| </tr> |
| </table> |
| </li> |
| </ul> |
| <!-- ========== METHOD SUMMARY =========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="method.summary"> |
| <!-- --> |
| </a> |
| <h3>Method Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> |
| <caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colLast" scope="col">Method and Description</th> |
| </tr> |
| <tr id="i0" class="altColor"> |
| <td class="colFirst"><code>abstract <a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html" title="class in org.apache.sysds.runtime.compress.colgroup">ColGroup</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#binaryRowOp-org.apache.sysds.runtime.matrix.operators.BinaryOperator-double:A-boolean-">binaryRowOp</a></span>(<a href="../../../../../../org/apache/sysds/runtime/matrix/operators/BinaryOperator.html" title="class in org.apache.sysds.runtime.matrix.operators">BinaryOperator</a> op, |
| double[] v, |
| boolean sparseSafe)</code> |
| <div class="block">Perform a binary row operation.</div> |
| </td> |
| </tr> |
| <tr id="i1" class="rowColor"> |
| <td class="colFirst"><code>abstract void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#countNonZerosPerRow-int:A-int-int-">countNonZerosPerRow</a></span>(int[] rnnz, |
| int rl, |
| int ru)</code> |
| <div class="block">Count the number of non-zeros per row</div> |
| </td> |
| </tr> |
| <tr id="i2" class="altColor"> |
| <td class="colFirst"><code>abstract void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#decompressToBlock-org.apache.sysds.runtime.matrix.data.MatrixBlock-int-">decompressToBlock</a></span>(<a href="../../../../../../org/apache/sysds/runtime/matrix/data/MatrixBlock.html" title="class in org.apache.sysds.runtime.matrix.data">MatrixBlock</a> target, |
| int colpos)</code> |
| <div class="block">Decompress to block.</div> |
| </td> |
| </tr> |
| <tr id="i3" class="rowColor"> |
| <td class="colFirst"><code>abstract void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#decompressToBlock-org.apache.sysds.runtime.matrix.data.MatrixBlock-int:A-">decompressToBlock</a></span>(<a href="../../../../../../org/apache/sysds/runtime/matrix/data/MatrixBlock.html" title="class in org.apache.sysds.runtime.matrix.data">MatrixBlock</a> target, |
| int[] colIndexTargets)</code> |
| <div class="block">Decompress the contents of this column group into uncompressed packed columns</div> |
| </td> |
| </tr> |
| <tr id="i4" class="altColor"> |
| <td class="colFirst"><code>abstract void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#decompressToBlock-org.apache.sysds.runtime.matrix.data.MatrixBlock-int-int-">decompressToBlock</a></span>(<a href="../../../../../../org/apache/sysds/runtime/matrix/data/MatrixBlock.html" title="class in org.apache.sysds.runtime.matrix.data">MatrixBlock</a> target, |
| int rl, |
| int ru)</code> |
| <div class="block">Decompress the contents of this column group into the specified full matrix block.</div> |
| </td> |
| </tr> |
| <tr id="i5" class="rowColor"> |
| <td class="colFirst"><code>static void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#decompressToBlock-org.apache.sysds.runtime.matrix.data.MatrixBlock-int-java.util.List-">decompressToBlock</a></span>(<a href="../../../../../../org/apache/sysds/runtime/matrix/data/MatrixBlock.html" title="class in org.apache.sysds.runtime.matrix.data">MatrixBlock</a> target, |
| int colIndex, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><<a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html" title="class in org.apache.sysds.runtime.compress.colgroup">ColGroup</a>> colGroups)</code> </td> |
| </tr> |
| <tr id="i6" class="altColor"> |
| <td class="colFirst"><code>abstract long</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#estimateInMemorySize--">estimateInMemorySize</a></span>()</code> |
| <div class="block">Note: Must be overridden by child classes to account for additional data and metadata</div> |
| </td> |
| </tr> |
| <tr id="i7" class="rowColor"> |
| <td class="colFirst"><code>abstract double</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#get-int-int-">get</a></span>(int r, |
| int c)</code> |
| <div class="block">Get the value at a global row/column position.</div> |
| </td> |
| </tr> |
| <tr id="i8" class="altColor"> |
| <td class="colFirst"><code>int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#getColIndex-int-">getColIndex</a></span>(int colNum)</code> |
| <div class="block">Obtain a column index value.</div> |
| </td> |
| </tr> |
| <tr id="i9" class="rowColor"> |
| <td class="colFirst"><code>int[]</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#getColIndices--">getColIndices</a></span>()</code> |
| <div class="block">Obtain the offsets of the columns in the matrix block that make up the group</div> |
| </td> |
| </tr> |
| <tr id="i10" class="altColor"> |
| <td class="colFirst"><code>abstract <a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.CompressionType.html" title="enum in org.apache.sysds.runtime.compress.colgroup">ColGroup.CompressionType</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#getCompType--">getCompType</a></span>()</code> |
| <div class="block">Obtain the compression type.</div> |
| </td> |
| </tr> |
| <tr id="i11" class="rowColor"> |
| <td class="colFirst"><code>abstract long</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#getExactSizeOnDisk--">getExactSizeOnDisk</a></span>()</code> |
| <div class="block">Returns the exact serialized size of column group.</div> |
| </td> |
| </tr> |
| <tr id="i12" class="altColor"> |
| <td class="colFirst"><code>abstract boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#getIfCountsType--">getIfCountsType</a></span>()</code> |
| <div class="block">Returns true if in the getValuesAsBlock method returns values in groups (that needs to be counted) or |
| individually potentially repeated values</div> |
| </td> |
| </tr> |
| <tr id="i13" class="rowColor"> |
| <td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a><<a href="../../../../../../org/apache/sysds/runtime/matrix/data/IJV.html" title="class in org.apache.sysds.runtime.matrix.data">IJV</a>></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#getIterator-int-int-boolean-boolean-">getIterator</a></span>(int rl, |
| int ru, |
| boolean inclZeros, |
| boolean rowMajor)</code> |
| <div class="block">Create a column group iterator for a row index range.</div> |
| </td> |
| </tr> |
| <tr id="i14" class="altColor"> |
| <td class="colFirst"><code>int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#getNumCols--">getNumCols</a></span>()</code> |
| <div class="block">Obtain the number of columns in this column group.</div> |
| </td> |
| </tr> |
| <tr id="i15" class="rowColor"> |
| <td class="colFirst"><code>int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#getNumRows--">getNumRows</a></span>()</code> |
| <div class="block">Get number of rows contained in the ColGroup.</div> |
| </td> |
| </tr> |
| <tr id="i16" class="altColor"> |
| <td class="colFirst"><code>abstract org.apache.sysds.runtime.compress.colgroup.ColGroup.ColGroupRowIterator</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#getRowIterator-int-int-">getRowIterator</a></span>(int rl, |
| int ru)</code> |
| <div class="block">Create a dense row iterator for a row index range.</div> |
| </td> |
| </tr> |
| <tr id="i17" class="rowColor"> |
| <td class="colFirst"><code>abstract double[]</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#getValues--">getValues</a></span>()</code> |
| <div class="block">Get all the values in the colGroup.</div> |
| </td> |
| </tr> |
| <tr id="i18" class="altColor"> |
| <td class="colFirst"><code>abstract <a href="../../../../../../org/apache/sysds/runtime/matrix/data/MatrixBlock.html" title="class in org.apache.sysds.runtime.matrix.data">MatrixBlock</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#getValuesAsBlock--">getValuesAsBlock</a></span>()</code> |
| <div class="block">Returns the ColGroup as a MatrixBlock.</div> |
| </td> |
| </tr> |
| <tr id="i19" class="rowColor"> |
| <td class="colFirst"><code>abstract boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#isLossy--">isLossy</a></span>()</code> |
| <div class="block">Is Lossy</div> |
| </td> |
| </tr> |
| <tr id="i20" class="altColor"> |
| <td class="colFirst"><code>abstract void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#leftMultByMatrix-double:A-double:A-double:A-int-int-int-int-int-">leftMultByMatrix</a></span>(double[] matrix, |
| double[] result, |
| double[] values, |
| int numRows, |
| int numCols, |
| int rl, |
| int ru, |
| int vOff)</code> |
| <div class="block">Multiply with a matrix on the left.</div> |
| </td> |
| </tr> |
| <tr id="i21" class="rowColor"> |
| <td class="colFirst"><code>abstract void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#leftMultByRowVector-double:A-double:A-int-">leftMultByRowVector</a></span>(double[] vector, |
| double[] result, |
| int numVals)</code> |
| <div class="block">Multiply the slice of the matrix that this column group represents by a row vector on the left (the original |
| column vector is assumed to be transposed already i.e.</div> |
| </td> |
| </tr> |
| <tr id="i22" class="altColor"> |
| <td class="colFirst"><code>abstract void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#leftMultByRowVector-double:A-double:A-int-double:A-">leftMultByRowVector</a></span>(double[] vector, |
| double[] result, |
| int numVals, |
| double[] values)</code> |
| <div class="block">Multiply the slice of the matrix that this column group represents by a row vector on the left (the original |
| column vector is assumed to be transposed already i.e.</div> |
| </td> |
| </tr> |
| <tr id="i23" class="rowColor"> |
| <td class="colFirst"><code>abstract void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#leftMultBySparseMatrix-int-int:A-double:A-double:A-int-double:A-int-int-int-double:A-">leftMultBySparseMatrix</a></span>(int spNrVals, |
| int[] indexes, |
| double[] sparseV, |
| double[] result, |
| int numVals, |
| double[] values, |
| int numRows, |
| int numCols, |
| int row, |
| double[] MaterializedRow)</code> |
| <div class="block">Multiply with a sparse matrix on the left hand side, and add the values to the output result</div> |
| </td> |
| </tr> |
| <tr id="i24" class="altColor"> |
| <td class="colFirst"><code>abstract void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#readFields-java.io.DataInput-">readFields</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInput.html?is-external=true" title="class or interface in java.io">DataInput</a> in)</code> |
| <div class="block">Deserialize column group from data input.</div> |
| </td> |
| </tr> |
| <tr id="i25" class="rowColor"> |
| <td class="colFirst"><code>abstract void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#rightMultByMatrix-double:A-double:A-int-int-int-int-int-">rightMultByMatrix</a></span>(double[] preAggregatedB, |
| double[] c, |
| int thatNrColumns, |
| int rl, |
| int ru, |
| int cl, |
| int cu)</code> |
| <div class="block">Right multiply by matrix.</div> |
| </td> |
| </tr> |
| <tr id="i26" class="altColor"> |
| <td class="colFirst"><code>abstract void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#rightMultBySparseMatrix-org.apache.sysds.runtime.data.SparseRow:A-double:A-int-double:A-int-int-int-">rightMultBySparseMatrix</a></span>(<a href="../../../../../../org/apache/sysds/runtime/data/SparseRow.html" title="class in org.apache.sysds.runtime.data">SparseRow</a>[] rows, |
| double[] c, |
| int numVals, |
| double[] dictVals, |
| int nrColumns, |
| int rl, |
| int ru)</code> |
| <div class="block">Sparse right multiply by matrix, for which the compressed matrix is on the left and the uncompressed sparse is on |
| the right.</div> |
| </td> |
| </tr> |
| <tr id="i27" class="rowColor"> |
| <td class="colFirst"><code>abstract void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#rightMultByVector-double:A-double:A-int-int-double:A-">rightMultByVector</a></span>(double[] vector, |
| double[] c, |
| int rl, |
| int ru, |
| double[] dictVals)</code> |
| <div class="block">Multiply the slice of the matrix that this column group represents by a vector on the right.</div> |
| </td> |
| </tr> |
| <tr id="i28" class="altColor"> |
| <td class="colFirst"><code>abstract <a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html" title="class in org.apache.sysds.runtime.compress.colgroup">ColGroup</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#scalarOperation-org.apache.sysds.runtime.matrix.operators.ScalarOperator-">scalarOperation</a></span>(<a href="../../../../../../org/apache/sysds/runtime/matrix/operators/ScalarOperator.html" title="class in org.apache.sysds.runtime.matrix.operators">ScalarOperator</a> op)</code> |
| <div class="block">Perform the specified scalar operation directly on the compressed column group, without decompressing individual |
| cells if possible.</div> |
| </td> |
| </tr> |
| <tr id="i29" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#shiftColIndices-int-">shiftColIndices</a></span>(int offset)</code> </td> |
| </tr> |
| <tr id="i30" class="altColor"> |
| <td class="colFirst"><code>abstract void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#unaryAggregateOperations-org.apache.sysds.runtime.matrix.operators.AggregateUnaryOperator-double:A-">unaryAggregateOperations</a></span>(<a href="../../../../../../org/apache/sysds/runtime/matrix/operators/AggregateUnaryOperator.html" title="class in org.apache.sysds.runtime.matrix.operators">AggregateUnaryOperator</a> op, |
| double[] c)</code> |
| <div class="block">Unary Aggregate operator, since aggregate operators require new object output, the output becomes an uncompressed |
| matrix.</div> |
| </td> |
| </tr> |
| <tr id="i31" class="rowColor"> |
| <td class="colFirst"><code>abstract void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#unaryAggregateOperations-org.apache.sysds.runtime.matrix.operators.AggregateUnaryOperator-double:A-int-int-">unaryAggregateOperations</a></span>(<a href="../../../../../../org/apache/sysds/runtime/matrix/operators/AggregateUnaryOperator.html" title="class in org.apache.sysds.runtime.matrix.operators">AggregateUnaryOperator</a> op, |
| double[] c, |
| int rl, |
| int ru)</code> |
| <div class="block">Unary Aggregate operator, since aggregate operators require new object output, the output becomes an uncompressed |
| matrix.</div> |
| </td> |
| </tr> |
| <tr id="i32" class="altColor"> |
| <td class="colFirst"><code>abstract void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html#write-java.io.DataOutput-">write</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutput.html?is-external=true" title="class or interface in java.io">DataOutput</a> out)</code> |
| <div class="block">Serializes column group to data output.</div> |
| </td> |
| </tr> |
| </table> |
| <ul class="blockList"> |
| <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3> |
| <code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| <div class="details"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ============ METHOD DETAIL ========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="method.detail"> |
| <!-- --> |
| </a> |
| <h3>Method Detail</h3> |
| <a name="getColIndices--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getColIndices</h4> |
| <pre>public int[] getColIndices()</pre> |
| <div class="block">Obtain the offsets of the columns in the matrix block that make up the group</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>offsets of the columns in the matrix block that make up the group</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getColIndex-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getColIndex</h4> |
| <pre>public int getColIndex(int colNum)</pre> |
| <div class="block">Obtain a column index value.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>colNum</code> - column number</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>column index value</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getNumRows--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getNumRows</h4> |
| <pre>public int getNumRows()</pre> |
| <div class="block">Get number of rows contained in the ColGroup.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>An integer that is the number of rows.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getNumCols--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getNumCols</h4> |
| <pre>public int getNumCols()</pre> |
| <div class="block">Obtain the number of columns in this column group.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>number of columns in this column group</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getCompType--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getCompType</h4> |
| <pre>public abstract <a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.CompressionType.html" title="enum in org.apache.sysds.runtime.compress.colgroup">ColGroup.CompressionType</a> getCompType()</pre> |
| <div class="block">Obtain the compression type.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>How the elements of the column group are compressed.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="shiftColIndices-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>shiftColIndices</h4> |
| <pre>public void shiftColIndices(int offset)</pre> |
| </li> |
| </ul> |
| <a name="estimateInMemorySize--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>estimateInMemorySize</h4> |
| <pre>public abstract long estimateInMemorySize()</pre> |
| <div class="block">Note: Must be overridden by child classes to account for additional data and metadata</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>an upper bound on the number of bytes used to store this ColGroup in memory.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="decompressToBlock-org.apache.sysds.runtime.matrix.data.MatrixBlock-int-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>decompressToBlock</h4> |
| <pre>public abstract void decompressToBlock(<a href="../../../../../../org/apache/sysds/runtime/matrix/data/MatrixBlock.html" title="class in org.apache.sysds.runtime.matrix.data">MatrixBlock</a> target, |
| int rl, |
| int ru)</pre> |
| <div class="block">Decompress the contents of this column group into the specified full matrix block.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>target</code> - a matrix block where the columns covered by this column group have not yet been filled in.</dd> |
| <dd><code>rl</code> - row lower</dd> |
| <dd><code>ru</code> - row upper</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="decompressToBlock-org.apache.sysds.runtime.matrix.data.MatrixBlock-int:A-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>decompressToBlock</h4> |
| <pre>public abstract void decompressToBlock(<a href="../../../../../../org/apache/sysds/runtime/matrix/data/MatrixBlock.html" title="class in org.apache.sysds.runtime.matrix.data">MatrixBlock</a> target, |
| int[] colIndexTargets)</pre> |
| <div class="block">Decompress the contents of this column group into uncompressed packed columns</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>target</code> - a dense matrix block. The block must have enough space to hold the contents of this column |
| group.</dd> |
| <dd><code>colIndexTargets</code> - array that maps column indices in the original matrix block to columns of target.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="decompressToBlock-org.apache.sysds.runtime.matrix.data.MatrixBlock-int-java.util.List-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>decompressToBlock</h4> |
| <pre>public static void decompressToBlock(<a href="../../../../../../org/apache/sysds/runtime/matrix/data/MatrixBlock.html" title="class in org.apache.sysds.runtime.matrix.data">MatrixBlock</a> target, |
| int colIndex, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><<a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html" title="class in org.apache.sysds.runtime.compress.colgroup">ColGroup</a>> colGroups)</pre> |
| </li> |
| </ul> |
| <a name="decompressToBlock-org.apache.sysds.runtime.matrix.data.MatrixBlock-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>decompressToBlock</h4> |
| <pre>public abstract void decompressToBlock(<a href="../../../../../../org/apache/sysds/runtime/matrix/data/MatrixBlock.html" title="class in org.apache.sysds.runtime.matrix.data">MatrixBlock</a> target, |
| int colpos)</pre> |
| <div class="block">Decompress to block.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>target</code> - dense output vector</dd> |
| <dd><code>colpos</code> - column to decompress, error if larger or equal numCols</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="write-java.io.DataOutput-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>write</h4> |
| <pre>public abstract void write(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutput.html?is-external=true" title="class or interface in java.io">DataOutput</a> out) |
| throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> |
| <div class="block">Serializes column group to data output.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>out</code> - data output</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if IOException occurs</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="readFields-java.io.DataInput-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>readFields</h4> |
| <pre>public abstract void readFields(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInput.html?is-external=true" title="class or interface in java.io">DataInput</a> in) |
| throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> |
| <div class="block">Deserialize column group from data input.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>in</code> - data input</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if IOException occurs</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getExactSizeOnDisk--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getExactSizeOnDisk</h4> |
| <pre>public abstract long getExactSizeOnDisk()</pre> |
| <div class="block">Returns the exact serialized size of column group. This can be used for example for buffer preallocation.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>exact serialized size for column group</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="get-int-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>get</h4> |
| <pre>public abstract double get(int r, |
| int c)</pre> |
| <div class="block">Get the value at a global row/column position.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>r</code> - row</dd> |
| <dd><code>c</code> - column</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>value at the row/column position</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getValues--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getValues</h4> |
| <pre>public abstract double[] getValues()</pre> |
| <div class="block">Get all the values in the colGroup. Note that this is only the stored values not the way they are stored. Making |
| the output a list of values used in that colGroup not the actual full column.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>a double list of values.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getValuesAsBlock--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getValuesAsBlock</h4> |
| <pre>public abstract <a href="../../../../../../org/apache/sysds/runtime/matrix/data/MatrixBlock.html" title="class in org.apache.sysds.runtime.matrix.data">MatrixBlock</a> getValuesAsBlock()</pre> |
| <div class="block">Returns the ColGroup as a MatrixBlock. Used as a fall back solution in case a operation is not supported. Use in |
| connection to getIfCountsType to get if the values are repeated.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Matrix Block of the contained Values. Possibly contained in groups.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getIfCountsType--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getIfCountsType</h4> |
| <pre>public abstract boolean getIfCountsType()</pre> |
| <div class="block">Returns true if in the getValuesAsBlock method returns values in groups (that needs to be counted) or |
| individually potentially repeated values</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>boolean</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="rightMultByVector-double:A-double:A-int-int-double:A-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>rightMultByVector</h4> |
| <pre>public abstract void rightMultByVector(double[] vector, |
| double[] c, |
| int rl, |
| int ru, |
| double[] dictVals)</pre> |
| <div class="block">Multiply the slice of the matrix that this column group represents by a vector on the right.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>vector</code> - Vector to multiply by (tall vector)</dd> |
| <dd><code>c</code> - Accumulator for holding the result</dd> |
| <dd><code>rl</code> - Row to start at</dd> |
| <dd><code>ru</code> - Row to stop at</dd> |
| <dd><code>dictVals</code> - The dictionary values materialized</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="rightMultByMatrix-double:A-double:A-int-int-int-int-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>rightMultByMatrix</h4> |
| <pre>public abstract void rightMultByMatrix(double[] preAggregatedB, |
| double[] c, |
| int thatNrColumns, |
| int rl, |
| int ru, |
| int cl, |
| int cu)</pre> |
| <div class="block">Right multiply by matrix. for which the compressed matrix is on the left and the uncompressed is on the right. |
| Note that there is no b argument, but the b is aggregated into the values needed for assignment and addition into |
| output.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>preAggregatedB</code> - The preAggregated values that is to be put into c</dd> |
| <dd><code>c</code> - The output matrix</dd> |
| <dd><code>thatNrColumns</code> - The number of columns in B (before aggregation)</dd> |
| <dd><code>rl</code> - The row index to start the multiplication from</dd> |
| <dd><code>ru</code> - The row index to stop the multiplication at</dd> |
| <dd><code>cl</code> - The column index to start from</dd> |
| <dd><code>cu</code> - The row index to stop at.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="rightMultBySparseMatrix-org.apache.sysds.runtime.data.SparseRow:A-double:A-int-double:A-int-int-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>rightMultBySparseMatrix</h4> |
| <pre>public abstract void rightMultBySparseMatrix(<a href="../../../../../../org/apache/sysds/runtime/data/SparseRow.html" title="class in org.apache.sysds.runtime.data">SparseRow</a>[] rows, |
| double[] c, |
| int numVals, |
| double[] dictVals, |
| int nrColumns, |
| int rl, |
| int ru)</pre> |
| <div class="block">Sparse right multiply by matrix, for which the compressed matrix is on the left and the uncompressed sparse is on |
| the right. This call differ from the other right multiply by not having a preAggregation phase. |
| |
| This should only be called in very sparse situations.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>rows</code> - The sparse rows</dd> |
| <dd><code>c</code> - The output matrix linearized</dd> |
| <dd><code>numVals</code> - The number of values in the dictionary</dd> |
| <dd><code>dictVals</code> - The materialized dictionary</dd> |
| <dd><code>nrColumns</code> - The number of columns in the matrix to multiply with and also in the output</dd> |
| <dd><code>rl</code> - The row index to start at</dd> |
| <dd><code>ru</code> - The row index to stop at.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="leftMultByRowVector-double:A-double:A-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>leftMultByRowVector</h4> |
| <pre>public abstract void leftMultByRowVector(double[] vector, |
| double[] result, |
| int numVals)</pre> |
| <div class="block">Multiply the slice of the matrix that this column group represents by a row vector on the left (the original |
| column vector is assumed to be transposed already i.e. its size now is 1xn).</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>vector</code> - row vector</dd> |
| <dd><code>result</code> - matrix block result</dd> |
| <dd><code>numVals</code> - The Number of values contained in the Column.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="leftMultByRowVector-double:A-double:A-int-double:A-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>leftMultByRowVector</h4> |
| <pre>public abstract void leftMultByRowVector(double[] vector, |
| double[] result, |
| int numVals, |
| double[] values)</pre> |
| <div class="block">Multiply the slice of the matrix that this column group represents by a row vector on the left (the original |
| column vector is assumed to be transposed already i.e. its size now is 1xn).</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>vector</code> - row vector</dd> |
| <dd><code>result</code> - matrix block result</dd> |
| <dd><code>numVals</code> - The Number of values contained in the Column.</dd> |
| <dd><code>values</code> - The materialized list of values contained in the dictionary.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="leftMultByMatrix-double:A-double:A-double:A-int-int-int-int-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>leftMultByMatrix</h4> |
| <pre>public abstract void leftMultByMatrix(double[] matrix, |
| double[] result, |
| double[] values, |
| int numRows, |
| int numCols, |
| int rl, |
| int ru, |
| int vOff)</pre> |
| <div class="block">Multiply with a matrix on the left.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>matrix</code> - matrix to left multiply</dd> |
| <dd><code>result</code> - matrix block result</dd> |
| <dd><code>values</code> - The materialized list of values contained in the dictionary.</dd> |
| <dd><code>numRows</code> - The number of rows in the matrix input</dd> |
| <dd><code>numCols</code> - The number of columns in the colGroups parent matrix.</dd> |
| <dd><code>rl</code> - The row to start the matrix multiplication from</dd> |
| <dd><code>ru</code> - The row to stop the matrix multiplication at.</dd> |
| <dd><code>vOff</code> - The offset into the first argument matrix to start at.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="leftMultBySparseMatrix-int-int:A-double:A-double:A-int-double:A-int-int-int-double:A-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>leftMultBySparseMatrix</h4> |
| <pre>public abstract void leftMultBySparseMatrix(int spNrVals, |
| int[] indexes, |
| double[] sparseV, |
| double[] result, |
| int numVals, |
| double[] values, |
| int numRows, |
| int numCols, |
| int row, |
| double[] MaterializedRow)</pre> |
| <div class="block">Multiply with a sparse matrix on the left hand side, and add the values to the output result</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>spNrVals</code> - the Number of sparse values (since the number of indexes does not align with number of |
| values)</dd> |
| <dd><code>indexes</code> - the indexes for the sparse values in the given row.</dd> |
| <dd><code>sparseV</code> - the sparse values.</dd> |
| <dd><code>result</code> - the linearized output matrix</dd> |
| <dd><code>numVals</code> - the number of values in the dictionary</dd> |
| <dd><code>values</code> - the dictionary values materialized</dd> |
| <dd><code>numRows</code> - the number of rows in the left hand side input matrix (the sparse one)</dd> |
| <dd><code>numCols</code> - the number of columns in the compression.</dd> |
| <dd><code>row</code> - the row index of the sparse row to multiply with.</dd> |
| <dd><code>MaterializedRow</code> - The sparse row materialized (should only be done if needed for the specific type of |
| ColumnGroup)</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="scalarOperation-org.apache.sysds.runtime.matrix.operators.ScalarOperator-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>scalarOperation</h4> |
| <pre>public abstract <a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html" title="class in org.apache.sysds.runtime.compress.colgroup">ColGroup</a> scalarOperation(<a href="../../../../../../org/apache/sysds/runtime/matrix/operators/ScalarOperator.html" title="class in org.apache.sysds.runtime.matrix.operators">ScalarOperator</a> op)</pre> |
| <div class="block">Perform the specified scalar operation directly on the compressed column group, without decompressing individual |
| cells if possible.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>op</code> - operation to perform</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>version of this column group with the operation applied</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="binaryRowOp-org.apache.sysds.runtime.matrix.operators.BinaryOperator-double:A-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>binaryRowOp</h4> |
| <pre>public abstract <a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.html" title="class in org.apache.sysds.runtime.compress.colgroup">ColGroup</a> binaryRowOp(<a href="../../../../../../org/apache/sysds/runtime/matrix/operators/BinaryOperator.html" title="class in org.apache.sysds.runtime.matrix.operators">BinaryOperator</a> op, |
| double[] v, |
| boolean sparseSafe)</pre> |
| <div class="block">Perform a binary row operation.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>op</code> - The operation to execute</dd> |
| <dd><code>v</code> - The vector of values to apply, should be same length as dictionary length.</dd> |
| <dd><code>sparseSafe</code> - True if the operation return 0 on all instances of values in v -- op(v[?], 0)</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>A updated column group with the new values.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="unaryAggregateOperations-org.apache.sysds.runtime.matrix.operators.AggregateUnaryOperator-double:A-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>unaryAggregateOperations</h4> |
| <pre>public abstract void unaryAggregateOperations(<a href="../../../../../../org/apache/sysds/runtime/matrix/operators/AggregateUnaryOperator.html" title="class in org.apache.sysds.runtime.matrix.operators">AggregateUnaryOperator</a> op, |
| double[] c)</pre> |
| <div class="block">Unary Aggregate operator, since aggregate operators require new object output, the output becomes an uncompressed |
| matrix.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>op</code> - The operator used</dd> |
| <dd><code>c</code> - Rhe output matrix block.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="unaryAggregateOperations-org.apache.sysds.runtime.matrix.operators.AggregateUnaryOperator-double:A-int-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>unaryAggregateOperations</h4> |
| <pre>public abstract void unaryAggregateOperations(<a href="../../../../../../org/apache/sysds/runtime/matrix/operators/AggregateUnaryOperator.html" title="class in org.apache.sysds.runtime.matrix.operators">AggregateUnaryOperator</a> op, |
| double[] c, |
| int rl, |
| int ru)</pre> |
| <div class="block">Unary Aggregate operator, since aggregate operators require new object output, the output becomes an uncompressed |
| matrix.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>op</code> - The operator used</dd> |
| <dd><code>c</code> - The output matrix block.</dd> |
| <dd><code>rl</code> - The Starting Row to do aggregation from</dd> |
| <dd><code>ru</code> - The last Row to do aggregation to (not included)</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getIterator-int-int-boolean-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getIterator</h4> |
| <pre>public abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a><<a href="../../../../../../org/apache/sysds/runtime/matrix/data/IJV.html" title="class in org.apache.sysds.runtime.matrix.data">IJV</a>> getIterator(int rl, |
| int ru, |
| boolean inclZeros, |
| boolean rowMajor)</pre> |
| <div class="block">Create a column group iterator for a row index range.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>rl</code> - row lower index, inclusive</dd> |
| <dd><code>ru</code> - row upper index, exclusive</dd> |
| <dd><code>inclZeros</code> - include zero values into scope of iterator</dd> |
| <dd><code>rowMajor</code> - use a row major iteration order</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>an iterator instance</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getRowIterator-int-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getRowIterator</h4> |
| <pre>public abstract org.apache.sysds.runtime.compress.colgroup.ColGroup.ColGroupRowIterator getRowIterator(int rl, |
| int ru)</pre> |
| <div class="block">Create a dense row iterator for a row index range. This iterator implies the inclusion of zeros and row-major |
| iteration order.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>rl</code> - row lower index, inclusive</dd> |
| <dd><code>ru</code> - row upper index, exclusive</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>an iterator instance</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="countNonZerosPerRow-int:A-int-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>countNonZerosPerRow</h4> |
| <pre>public abstract void countNonZerosPerRow(int[] rnnz, |
| int rl, |
| int ru)</pre> |
| <div class="block">Count the number of non-zeros per row</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>rnnz</code> - non-zeros per row</dd> |
| <dd><code>rl</code> - row lower bound, inclusive</dd> |
| <dd><code>ru</code> - row upper bound, exclusive</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="isLossy--"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>isLossy</h4> |
| <pre>public abstract boolean isLossy()</pre> |
| <div class="block">Is Lossy</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>returns if the ColGroup is compressed in a lossy manner.</dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| </div> |
| <!-- ========= END OF CLASS DATA ========= --> |
| <!-- ======= START OF BOTTOM NAVBAR ====== --> |
| <div class="bottomNav"><a name="navbar.bottom"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> |
| <a name="navbar.bottom.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../../../../overview-summary.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/ColGroup.html">Use</a></li> |
| <li><a href="package-tree.html">Tree</a></li> |
| <li><a href="../../../../../../deprecated-list.html">Deprecated</a></li> |
| <li><a href="../../../../../../index-all.html">Index</a></li> |
| <li><a href="../../../../../../help-doc.html">Help</a></li> |
| </ul> |
| </div> |
| <div class="subNav"> |
| <ul class="navList"> |
| <li><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ADictionary.html" title="class in org.apache.sysds.runtime.compress.colgroup"><span class="typeNameLink">Prev Class</span></a></li> |
| <li><a href="../../../../../../org/apache/sysds/runtime/compress/colgroup/ColGroup.CompressionType.html" title="enum in org.apache.sysds.runtime.compress.colgroup"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../../../../../../index.html?org/apache/sysds/runtime/compress/colgroup/ColGroup.html" target="_top">Frames</a></li> |
| <li><a href="ColGroup.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_bottom"> |
| <li><a href="../../../../../../allclasses-noframe.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_bottom"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li><a href="#nested.class.summary">Nested</a> | </li> |
| <li>Field | </li> |
| <li>Constr | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li>Constr | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a name="skip.navbar.bottom"> |
| <!-- --> |
| </a></div> |
| <!-- ======== END OF BOTTOM NAVBAR ======= --> |
| <p class="legalCopy"><small>Copyright © 2020 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p> |
| </body> |
| </html> |