Files
2016-04-27 01:07:35 -04:00

1280 lines
84 KiB
HTML

<!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 (version 1.7.0_51) on Wed Apr 06 13:11:03 EDT 2016 -->
<title>Gpu (Parallel Java 2 Library Documentation)</title>
<meta name="date" content="2016-04-06">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Gpu (Parallel Java 2 Library Documentation)";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!-- -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><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/Gpu.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-files/index-1.html">Index</a></li>
<li><a href="../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../edu/rit/gpu/FileNotFoundCudaException.html" title="class in edu.rit.gpu"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../edu/rit/gpu/GpuArray.html" title="class in edu.rit.gpu"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?edu/rit/gpu/Gpu.html" target="_top">Frames</a></li>
<li><a href="Gpu.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:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</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">edu.rit.gpu</div>
<h2 title="Class Gpu" class="title">Class Gpu</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/7/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>edu.rit.gpu.Gpu</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="strong">Gpu</span>
extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
<div class="block">Class Gpu encapsulates a graphics processing unit (GPU) compute device. A GPU
compute device, or just "device", is denoted by an integer device number. To
use a device:
<OL TYPE=1>
<P><LI>
Call the <a href="../../../edu/rit/gpu/Gpu.html#gpu()"><code>gpu()</code></a> method to get a Gpu object.
<P><LI>
Call methods on the Gpu object to perform GPU operations; such as:
<P><LI>
Informational operations &mdash;
<UL>
<LI><a href="../../../edu/rit/gpu/Gpu.html#ensureComputeCapability(int, int)"><code>ensureComputeCapability()</code></a>
<LI><a href="../../../edu/rit/gpu/Gpu.html#getMultiprocessorCount()"><code>getMultiprocessorCount()</code></a>
</UL>
<P><LI>
GPU configuration &mdash;
<UL>
<LI><a href="../../../edu/rit/gpu/Gpu.html#setCacheConfig(edu.rit.gpu.CacheConfig)"><code>setCacheConfig()</code></a>,
<a href="../../../edu/rit/gpu/Gpu.html#getCacheConfig()"><code>getCacheConfig()</code></a>
</UL>
<P><LI>
Create a dynamically allocated primitive array or matrix in GPU memory
&mdash;
<UL>
<LI><a href="../../../edu/rit/gpu/Gpu.html#getByteArray(int)"><code>getByteArray()</code></a>,
<a href="../../../edu/rit/gpu/Gpu.html#getByteMatrix(int, int)"><code>getByteMatrix()</code></a>
<LI><a href="../../../edu/rit/gpu/Gpu.html#getShortArray(int)"><code>getShortArray()</code></a>,
<a href="../../../edu/rit/gpu/Gpu.html#getShortMatrix(int, int)"><code>getShortMatrix()</code></a>
<LI><a href="../../../edu/rit/gpu/Gpu.html#getIntArray(int)"><code>getIntArray()</code></a>,
<a href="../../../edu/rit/gpu/Gpu.html#getIntMatrix(int, int)"><code>getIntMatrix()</code></a>
<LI><a href="../../../edu/rit/gpu/Gpu.html#getLongArray(int)"><code>getLongArray()</code></a>,
<a href="../../../edu/rit/gpu/Gpu.html#getLongMatrix(int, int)"><code>getLongMatrix()</code></a>
<LI><a href="../../../edu/rit/gpu/Gpu.html#getFloatArray(int)"><code>getFloatArray()</code></a>,
<a href="../../../edu/rit/gpu/Gpu.html#getFloatMatrix(int, int)"><code>getFloatMatrix()</code></a>
<LI><a href="../../../edu/rit/gpu/Gpu.html#getDoubleArray(int)"><code>getDoubleArray()</code></a>,
<a href="../../../edu/rit/gpu/Gpu.html#getDoubleMatrix(int, int)"><code>getDoubleMatrix()</code></a>
</UL>
<P><LI>
Create a dynamically allocated struct or struct array in GPU memory &mdash;
<UL>
<LI><a href="../../../edu/rit/gpu/Gpu.html#getStructVbl(java.lang.Class)"><code>getStructVbl()</code></a>
<LI><a href="../../../edu/rit/gpu/Gpu.html#getStructArray(java.lang.Class, int)"><code>getStructArray()</code></a>
</UL>
<P><LI>
Get a module containing GPU kernel functions and data &mdash;
<UL>
<LI><a href="../../../edu/rit/gpu/Gpu.html#getModule(java.lang.String)"><code>getModule()</code></a>
</UL>
</OL>
<P>
Study the source code of the classes in package <a href="../../../edu/rit/gpu/example/package-summary.html">edu.rit.pj2.example</a> to see examples of Parallel Java 2
GPU programs.
<P>
<I>Note:</I> Class Gpu is not multiple thread safe. It is assumed that only
one thread at a time will call methods on a Gpu object.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#allowedDeviceCount()">allowedDeviceCount</a></strong>()</code>
<div class="block">Get the number of GPU devices this process is allowed to use.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#deviceCount()">deviceCount</a></strong>()</code>
<div class="block">Get the number of GPU devices in the system.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#ensureComputeCapability(int, int)">ensureComputeCapability</a></strong>(int&nbsp;major,
int&nbsp;minor)</code>
<div class="block">Ensure that this Gpu object supports at least the given compute
capability.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#finalize()">finalize</a></strong>()</code>
<div class="block">Finalize this Gpu object.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuByteArray.html" title="class in edu.rit.gpu">GpuByteArray</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getByteArray(int)">getByteArray</a></strong>(int&nbsp;len)</code>
<div class="block">Create a new dynamically allocated GPU byte array.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuByteArray.html" title="class in edu.rit.gpu">GpuByteArray</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getByteArray(int, int)">getByteArray</a></strong>(int&nbsp;len,
int&nbsp;cpulen)</code>
<div class="block">Create a new dynamically allocated GPU byte array, of which the given
portion is mirrored in the CPU.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuByteMatrix.html" title="class in edu.rit.gpu">GpuByteMatrix</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getByteMatrix(int, int)">getByteMatrix</a></strong>(int&nbsp;rows,
int&nbsp;cols)</code>
<div class="block">Create a new dynamically allocated GPU byte matrix.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuByteMatrix.html" title="class in edu.rit.gpu">GpuByteMatrix</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getByteMatrix(int, int, int, int)">getByteMatrix</a></strong>(int&nbsp;rows,
int&nbsp;cols,
int&nbsp;cpurows,
int&nbsp;cpucols)</code>
<div class="block">Create a new dynamically allocated GPU byte matrix, of which the given
portion is mirrored in the CPU.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/CacheConfig.html" title="enum in edu.rit.gpu">CacheConfig</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getCacheConfig()">getCacheConfig</a></strong>()</code>
<div class="block">Get this GPU's cache configuration.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuDoubleArray.html" title="class in edu.rit.gpu">GpuDoubleArray</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getDoubleArray(int)">getDoubleArray</a></strong>(int&nbsp;len)</code>
<div class="block">Create a new dynamically allocated GPU double array.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuDoubleArray.html" title="class in edu.rit.gpu">GpuDoubleArray</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getDoubleArray(int, int)">getDoubleArray</a></strong>(int&nbsp;len,
int&nbsp;cpulen)</code>
<div class="block">Create a new dynamically allocated GPU double array, of which the given
portion is mirrored in the CPU.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuDoubleMatrix.html" title="class in edu.rit.gpu">GpuDoubleMatrix</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getDoubleMatrix(int, int)">getDoubleMatrix</a></strong>(int&nbsp;rows,
int&nbsp;cols)</code>
<div class="block">Create a new dynamically allocated GPU double matrix.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuDoubleMatrix.html" title="class in edu.rit.gpu">GpuDoubleMatrix</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getDoubleMatrix(int, int, int, int)">getDoubleMatrix</a></strong>(int&nbsp;rows,
int&nbsp;cols,
int&nbsp;cpurows,
int&nbsp;cpucols)</code>
<div class="block">Create a new dynamically allocated GPU double matrix, of which the given
portion is mirrored in the CPU.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuFloatArray.html" title="class in edu.rit.gpu">GpuFloatArray</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getFloatArray(int)">getFloatArray</a></strong>(int&nbsp;len)</code>
<div class="block">Create a new dynamically allocated GPU float array.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuFloatArray.html" title="class in edu.rit.gpu">GpuFloatArray</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getFloatArray(int, int)">getFloatArray</a></strong>(int&nbsp;len,
int&nbsp;cpulen)</code>
<div class="block">Create a new dynamically allocated GPU float array, of which the given
portion is mirrored in the CPU.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuFloatMatrix.html" title="class in edu.rit.gpu">GpuFloatMatrix</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getFloatMatrix(int, int)">getFloatMatrix</a></strong>(int&nbsp;rows,
int&nbsp;cols)</code>
<div class="block">Create a new dynamically allocated GPU float matrix.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuFloatMatrix.html" title="class in edu.rit.gpu">GpuFloatMatrix</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getFloatMatrix(int, int, int, int)">getFloatMatrix</a></strong>(int&nbsp;rows,
int&nbsp;cols,
int&nbsp;cpurows,
int&nbsp;cpucols)</code>
<div class="block">Create a new dynamically allocated GPU float matrix, of which the given
portion is mirrored in the CPU.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuIntArray.html" title="class in edu.rit.gpu">GpuIntArray</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getIntArray(int)">getIntArray</a></strong>(int&nbsp;len)</code>
<div class="block">Create a new dynamically allocated GPU integer array.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuIntArray.html" title="class in edu.rit.gpu">GpuIntArray</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getIntArray(int, int)">getIntArray</a></strong>(int&nbsp;len,
int&nbsp;cpulen)</code>
<div class="block">Create a new dynamically allocated GPU integer array, of which the given
portion is mirrored in the CPU.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuIntMatrix.html" title="class in edu.rit.gpu">GpuIntMatrix</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getIntMatrix(int, int)">getIntMatrix</a></strong>(int&nbsp;rows,
int&nbsp;cols)</code>
<div class="block">Create a new dynamically allocated GPU integer matrix.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuIntMatrix.html" title="class in edu.rit.gpu">GpuIntMatrix</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getIntMatrix(int, int, int, int)">getIntMatrix</a></strong>(int&nbsp;rows,
int&nbsp;cols,
int&nbsp;cpurows,
int&nbsp;cpucols)</code>
<div class="block">Create a new dynamically allocated GPU integer matrix, of which the given
portion is mirrored in the CPU.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuLongArray.html" title="class in edu.rit.gpu">GpuLongArray</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getLongArray(int)">getLongArray</a></strong>(int&nbsp;len)</code>
<div class="block">Create a new dynamically allocated GPU long integer array.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuLongArray.html" title="class in edu.rit.gpu">GpuLongArray</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getLongArray(int, int)">getLongArray</a></strong>(int&nbsp;len,
int&nbsp;cpulen)</code>
<div class="block">Create a new dynamically allocated GPU long integer array, of which the
given portion is mirrored in the CPU.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuLongMatrix.html" title="class in edu.rit.gpu">GpuLongMatrix</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getLongMatrix(int, int)">getLongMatrix</a></strong>(int&nbsp;rows,
int&nbsp;cols)</code>
<div class="block">Create a new dynamically allocated GPU long integer matrix.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuLongMatrix.html" title="class in edu.rit.gpu">GpuLongMatrix</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getLongMatrix(int, int, int, int)">getLongMatrix</a></strong>(int&nbsp;rows,
int&nbsp;cols,
int&nbsp;cpurows,
int&nbsp;cpucols)</code>
<div class="block">Create a new dynamically allocated GPU long integer matrix, of which the
given portion is mirrored in the CPU.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/Module.html" title="class in edu.rit.gpu">Module</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getModule(java.lang.String)">getModule</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
<div class="block">Get a module containing GPU functions and data.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getMultiprocessorCount()">getMultiprocessorCount</a></strong>()</code>
<div class="block">Get the number of multiprocessors in this GPU.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuShortArray.html" title="class in edu.rit.gpu">GpuShortArray</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getShortArray(int)">getShortArray</a></strong>(int&nbsp;len)</code>
<div class="block">Create a new dynamically allocated GPU short integer array.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuShortArray.html" title="class in edu.rit.gpu">GpuShortArray</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getShortArray(int, int)">getShortArray</a></strong>(int&nbsp;len,
int&nbsp;cpulen)</code>
<div class="block">Create a new dynamically allocated GPU short integer array, of which the
given portion is mirrored in the CPU.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuShortMatrix.html" title="class in edu.rit.gpu">GpuShortMatrix</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getShortMatrix(int, int)">getShortMatrix</a></strong>(int&nbsp;rows,
int&nbsp;cols)</code>
<div class="block">Create a new dynamically allocated GPU short integer matrix.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../edu/rit/gpu/GpuShortMatrix.html" title="class in edu.rit.gpu">GpuShortMatrix</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getShortMatrix(int, int, int, int)">getShortMatrix</a></strong>(int&nbsp;rows,
int&nbsp;cols,
int&nbsp;cpurows,
int&nbsp;cpucols)</code>
<div class="block">Create a new dynamically allocated GPU short integer matrix, of which the
given portion is mirrored in the CPU.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>&lt;T extends <a href="../../../edu/rit/gpu/Struct.html" title="class in edu.rit.gpu">Struct</a>&gt;&nbsp;<br><a href="../../../edu/rit/gpu/GpuStructArray.html" title="class in edu.rit.gpu">GpuStructArray</a>&lt;T&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getStructArray(java.lang.Class, int)">getStructArray</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;type,
int&nbsp;len)</code>
<div class="block">Create a new dynamically allocated GPU struct array.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>&lt;T extends <a href="../../../edu/rit/gpu/Struct.html" title="class in edu.rit.gpu">Struct</a>&gt;&nbsp;<br><a href="../../../edu/rit/gpu/GpuStructArray.html" title="class in edu.rit.gpu">GpuStructArray</a>&lt;T&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getStructArray(java.lang.Class, int, int)">getStructArray</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;type,
int&nbsp;len,
int&nbsp;cpulen)</code>
<div class="block">Create a new dynamically allocated GPU struct array, of which the given
portion is mirrored in the CPU.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>&lt;T extends <a href="../../../edu/rit/gpu/Struct.html" title="class in edu.rit.gpu">Struct</a>&gt;&nbsp;<br><a href="../../../edu/rit/gpu/GpuStructVbl.html" title="class in edu.rit.gpu">GpuStructVbl</a>&lt;T&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#getStructVbl(java.lang.Class)">getStructVbl</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;type)</code>
<div class="block">Create a new dynamically allocated GPU struct variable.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../edu/rit/gpu/Gpu.html" title="class in edu.rit.gpu">Gpu</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#gpu()">gpu</a></strong>()</code>
<div class="block">Construct a new Gpu object.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#setCacheConfig(edu.rit.gpu.CacheConfig)">setCacheConfig</a></strong>(<a href="../../../edu/rit/gpu/CacheConfig.html" title="enum in edu.rit.gpu">CacheConfig</a>&nbsp;config)</code>
<div class="block">Set this GPU's cache configuration.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#setDeviceNumbers(int[])">setDeviceNumbers</a></strong>(int[]&nbsp;devnum)</code>
<div class="block">Specify the GPU device number or numbers this process is allowed to use.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../edu/rit/gpu/Gpu.html#toString()">toString</a></strong>()</code>
<div class="block">Returns a string version of this Gpu object.</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&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/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="deviceCount()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deviceCount</h4>
<pre>public static&nbsp;int&nbsp;deviceCount()</pre>
<div class="block">Get the number of GPU devices in the system.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Number of GPU devices.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd></dl>
</li>
</ul>
<a name="setDeviceNumbers(int[])">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDeviceNumbers</h4>
<pre>public static&nbsp;void&nbsp;setDeviceNumbers(int[]&nbsp;devnum)</pre>
<div class="block">Specify the GPU device number or numbers this process is allowed to use.
If not specified, this process is allowed to use all devices.
<P>
<B><I>Warning:</I></B> The <TT>setDeviceNumbers()</TT> method is intended
to be called only by the <a href="../../../pj2.html" title="class in &lt;Unnamed&gt;"><code>pj2</code></a> launcher program. Do not call
the <TT>setDeviceNumbers()</TT> method yourself.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>devnum</code> - Array of zero or more device numbers. Each must be in the range 0
through <a href="../../../edu/rit/gpu/Gpu.html#deviceCount()"><code>deviceCount()</code></a>&minus;1. If
<TT>devnum</TT> is null, this process is allowed to use all devices.
If <TT>devnum</TT> is zero length, this process is not allowed to use
any devices.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IndexOutOfBoundsException.html?is-external=true" title="class or interface in java.lang">IndexOutOfBoundsException</a></code> - (unchecked exception) Thrown if any device number is out of bounds.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd></dl>
</li>
</ul>
<a name="allowedDeviceCount()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>allowedDeviceCount</h4>
<pre>public static&nbsp;int&nbsp;allowedDeviceCount()</pre>
<div class="block">Get the number of GPU devices this process is allowed to use.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Number of GPU devices.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd></dl>
</li>
</ul>
<a name="gpu()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>gpu</h4>
<pre>public static&nbsp;<a href="../../../edu/rit/gpu/Gpu.html" title="class in edu.rit.gpu">Gpu</a>&nbsp;gpu()</pre>
<div class="block">Construct a new Gpu object. The next available GPU device is used.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Gpu object.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - (unchecked exception) Thrown if there are no available GPU devices.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd></dl>
</li>
</ul>
<a name="ensureComputeCapability(int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ensureComputeCapability</h4>
<pre>public&nbsp;void&nbsp;ensureComputeCapability(int&nbsp;major,
int&nbsp;minor)</pre>
<div class="block">Ensure that this Gpu object supports at least the given compute
capability. If so, this method merely returns. If not, this method throws
a <a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>major</code> - Required compute capability major version.</dd><dd><code>minor</code> - Required compute capability minor version.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if this Gpu object does not support at
least the given compute capability. Thrown if a GPU error occurred.</dd></dl>
</li>
</ul>
<a name="getMultiprocessorCount()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMultiprocessorCount</h4>
<pre>public&nbsp;int&nbsp;getMultiprocessorCount()</pre>
<div class="block">Get the number of multiprocessors in this GPU.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Number of multiprocessors.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd></dl>
</li>
</ul>
<a name="setCacheConfig(edu.rit.gpu.CacheConfig)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCacheConfig</h4>
<pre>public&nbsp;void&nbsp;setCacheConfig(<a href="../../../edu/rit/gpu/CacheConfig.html" title="enum in edu.rit.gpu">CacheConfig</a>&nbsp;config)</pre>
<div class="block">Set this GPU's cache configuration. All kernel functions that do not
themselves set the cache configuration will use the given cache
configuration.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>config</code> - Cache configuration.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - (unchecked exception) Thrown if <TT>config</TT> is null.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd></dl>
</li>
</ul>
<a name="getCacheConfig()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCacheConfig</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/CacheConfig.html" title="enum in edu.rit.gpu">CacheConfig</a>&nbsp;getCacheConfig()</pre>
<div class="block">Get this GPU's cache configuration. All kernel functions that do not
themselves set the cache configuration will use the returned cache
configuration.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Cache configuration.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd></dl>
</li>
</ul>
<a name="getByteArray(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getByteArray</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuByteArray.html" title="class in edu.rit.gpu">GpuByteArray</a>&nbsp;getByteArray(int&nbsp;len)</pre>
<div class="block">Create a new dynamically allocated GPU byte array. The entire GPU array
is mirrored in the CPU. The array elements in CPU memory, namely the
<a href="../../../edu/rit/gpu/GpuByteArray.html#item"><code>item</code></a> field's elements, are initialized to
zeroes. <I>The array elements in GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>len</code> - Number of array elements (&ge; 1).</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU byte array.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>len</TT> &lt; 1.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getByteArray(int, int)"><code>getByteArray(int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getByteArray(int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getByteArray</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuByteArray.html" title="class in edu.rit.gpu">GpuByteArray</a>&nbsp;getByteArray(int&nbsp;len,
int&nbsp;cpulen)</pre>
<div class="block">Create a new dynamically allocated GPU byte array, of which the given
portion is mirrored in the CPU. If <TT>cpulen</TT> = 0, then none of the
array is mirrored in the CPU. The array elements in CPU memory, namely
the <a href="../../../edu/rit/gpu/GpuByteArray.html#item"><code>item</code></a> field's elements, are initialized to
zeroes. <I>The array elements in GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>len</code> - Number of array elements (&ge; 1).</dd><dd><code>cpulen</code> - Number of array elements to mirror in the CPU.</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU byte array.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>len</TT> &lt; 1, <TT>cpulen</TT>
&lt; 0, or <TT>cpulen</TT> &gt; <TT>len</TT>.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getByteArray(int)"><code>getByteArray(int)</code></a></dd></dl>
</li>
</ul>
<a name="getShortArray(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getShortArray</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuShortArray.html" title="class in edu.rit.gpu">GpuShortArray</a>&nbsp;getShortArray(int&nbsp;len)</pre>
<div class="block">Create a new dynamically allocated GPU short integer array. The entire
GPU array is mirrored in the CPU. The array elements in CPU memory,
namely the <a href="../../../edu/rit/gpu/GpuShortArray.html#item"><code>item</code></a> field's elements, are
initialized to zeroes. <I>The array elements in GPU memory are not
initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>len</code> - Number of array elements (&ge; 1).</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU short integer array.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>len</TT> &lt; 1.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getShortArray(int, int)"><code>getShortArray(int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getShortArray(int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getShortArray</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuShortArray.html" title="class in edu.rit.gpu">GpuShortArray</a>&nbsp;getShortArray(int&nbsp;len,
int&nbsp;cpulen)</pre>
<div class="block">Create a new dynamically allocated GPU short integer array, of which the
given portion is mirrored in the CPU. If <TT>cpulen</TT> = 0, then none
of the array is mirrored in the CPU. The array elements in CPU memory,
namely the <a href="../../../edu/rit/gpu/GpuShortArray.html#item"><code>item</code></a> field's elements, are
initialized to zeroes. <I>The array elements in GPU memory are not
initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>len</code> - Number of array elements (&ge; 1).</dd><dd><code>cpulen</code> - Number of array elements to mirror in the CPU.</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU short integer array.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>len</TT> &lt; 1, <TT>cpulen</TT>
&lt; 0, or <TT>cpulen</TT> &gt; <TT>len</TT>.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getShortArray(int)"><code>getShortArray(int)</code></a></dd></dl>
</li>
</ul>
<a name="getIntArray(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getIntArray</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuIntArray.html" title="class in edu.rit.gpu">GpuIntArray</a>&nbsp;getIntArray(int&nbsp;len)</pre>
<div class="block">Create a new dynamically allocated GPU integer array. The entire GPU
array is mirrored in the CPU. The array elements in CPU memory, namely
the <a href="../../../edu/rit/gpu/GpuIntArray.html#item"><code>item</code></a> field's elements, are initialized to
zeroes. <I>The array elements in GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>len</code> - Number of array elements (&ge; 1).</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU integer array.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>len</TT> &lt; 1.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getIntArray(int, int)"><code>getIntArray(int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getIntArray(int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getIntArray</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuIntArray.html" title="class in edu.rit.gpu">GpuIntArray</a>&nbsp;getIntArray(int&nbsp;len,
int&nbsp;cpulen)</pre>
<div class="block">Create a new dynamically allocated GPU integer array, of which the given
portion is mirrored in the CPU. If <TT>cpulen</TT> = 0, then none of the
array is mirrored in the CPU. The array elements in CPU memory, namely
the <a href="../../../edu/rit/gpu/GpuIntArray.html#item"><code>item</code></a> field's elements, are initialized to
zeroes. <I>The array elements in GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>len</code> - Number of array elements (&ge; 1).</dd><dd><code>cpulen</code> - Number of array elements to mirror in the CPU.</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU integer array.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>len</TT> &lt; 1, <TT>cpulen</TT>
&lt; 0, or <TT>cpulen</TT> &gt; <TT>len</TT>.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getIntArray(int)"><code>getIntArray(int)</code></a></dd></dl>
</li>
</ul>
<a name="getLongArray(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLongArray</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuLongArray.html" title="class in edu.rit.gpu">GpuLongArray</a>&nbsp;getLongArray(int&nbsp;len)</pre>
<div class="block">Create a new dynamically allocated GPU long integer array. The entire GPU
array is mirrored in the CPU. The array elements in CPU memory, namely
the <a href="../../../edu/rit/gpu/GpuLongArray.html#item"><code>item</code></a> field's elements, are initialized to
zeroes. <I>The array elements in GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>len</code> - Number of array elements (&ge; 1).</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU long integer array.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>len</TT> &lt; 1.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getLongArray(int, int)"><code>getLongArray(int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getLongArray(int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLongArray</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuLongArray.html" title="class in edu.rit.gpu">GpuLongArray</a>&nbsp;getLongArray(int&nbsp;len,
int&nbsp;cpulen)</pre>
<div class="block">Create a new dynamically allocated GPU long integer array, of which the
given portion is mirrored in the CPU. If <TT>cpulen</TT> = 0, then none
of the array is mirrored in the CPU. The array elements in CPU memory,
namely the <a href="../../../edu/rit/gpu/GpuLongArray.html#item"><code>item</code></a> field's elements, are
initialized to zeroes. <I>The array elements in GPU memory are not
initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>len</code> - Number of array elements (&ge; 1).</dd><dd><code>cpulen</code> - Number of array elements to mirror in the CPU.</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU long integer array.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>len</TT> &lt; 1, <TT>cpulen</TT>
&lt; 0, or <TT>cpulen</TT> &gt; <TT>len</TT>.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getLongArray(int)"><code>getLongArray(int)</code></a></dd></dl>
</li>
</ul>
<a name="getFloatArray(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFloatArray</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuFloatArray.html" title="class in edu.rit.gpu">GpuFloatArray</a>&nbsp;getFloatArray(int&nbsp;len)</pre>
<div class="block">Create a new dynamically allocated GPU float array. The entire GPU array
is mirrored in the CPU. The array elements in CPU memory, namely the
<a href="../../../edu/rit/gpu/GpuFloatArray.html#item"><code>item</code></a> field's elements, are initialized to
zeroes. <I>The array elements in GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>len</code> - Number of array elements (&ge; 1).</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU float array.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>len</TT> &lt; 1.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getFloatArray(int, int)"><code>getFloatArray(int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getFloatArray(int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFloatArray</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuFloatArray.html" title="class in edu.rit.gpu">GpuFloatArray</a>&nbsp;getFloatArray(int&nbsp;len,
int&nbsp;cpulen)</pre>
<div class="block">Create a new dynamically allocated GPU float array, of which the given
portion is mirrored in the CPU. If <TT>cpulen</TT> = 0, then none of the
array is mirrored in the CPU. The array elements in CPU memory, namely
the <a href="../../../edu/rit/gpu/GpuFloatArray.html#item"><code>item</code></a> field's elements, are initialized to
zeroes. <I>The array elements in GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>len</code> - Number of array elements (&ge; 1).</dd><dd><code>cpulen</code> - Number of array elements to mirror in the CPU.</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU float array.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>len</TT> &lt; 1, <TT>cpulen</TT>
&lt; 0, or <TT>cpulen</TT> &gt; <TT>len</TT>.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getFloatArray(int)"><code>getFloatArray(int)</code></a></dd></dl>
</li>
</ul>
<a name="getDoubleArray(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDoubleArray</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuDoubleArray.html" title="class in edu.rit.gpu">GpuDoubleArray</a>&nbsp;getDoubleArray(int&nbsp;len)</pre>
<div class="block">Create a new dynamically allocated GPU double array. The entire GPU array
is mirrored in the CPU. The array elements in CPU memory, namely the
<a href="../../../edu/rit/gpu/GpuDoubleArray.html#item"><code>item</code></a> field's elements, are initialized to
zeroes. <I>The array elements in GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>len</code> - Number of array elements (&ge; 1).</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU double array.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>len</TT> &lt; 1.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getDoubleArray(int, int)"><code>getDoubleArray(int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getDoubleArray(int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDoubleArray</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuDoubleArray.html" title="class in edu.rit.gpu">GpuDoubleArray</a>&nbsp;getDoubleArray(int&nbsp;len,
int&nbsp;cpulen)</pre>
<div class="block">Create a new dynamically allocated GPU double array, of which the given
portion is mirrored in the CPU. If <TT>cpulen</TT> = 0, then none of the
array is mirrored in the CPU. The array elements in CPU memory, namely
the <a href="../../../edu/rit/gpu/GpuDoubleArray.html#item"><code>item</code></a> field's elements, are initialized to
zeroes. <I>The array elements in GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>len</code> - Number of array elements (&ge; 1).</dd><dd><code>cpulen</code> - Number of array elements to mirror in the CPU.</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU double array.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>len</TT> &lt; 1, <TT>cpulen</TT>
&lt; 0, or <TT>cpulen</TT> &gt; <TT>len</TT>.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getDoubleArray(int)"><code>getDoubleArray(int)</code></a></dd></dl>
</li>
</ul>
<a name="getByteMatrix(int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getByteMatrix</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuByteMatrix.html" title="class in edu.rit.gpu">GpuByteMatrix</a>&nbsp;getByteMatrix(int&nbsp;rows,
int&nbsp;cols)</pre>
<div class="block">Create a new dynamically allocated GPU byte matrix. The entire GPU
matrix is mirrored in the CPU. The matrix elements in CPU memory, namely
the <a href="../../../edu/rit/gpu/GpuByteMatrix.html#item"><code>item</code></a> field's elements, are initialized to
zeroes. <I>The matrix elements in GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>rows</code> - Number of matrix rows (&ge; 1).</dd><dd><code>cols</code> - Number of matrix columns (&ge; 1).</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU byte matrix.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>rows</TT> &lt; 1 or <TT>cols</TT>
&lt; 1.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getByteMatrix(int, int, int, int)"><code>getByteMatrix(int,int,int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getByteMatrix(int, int, int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getByteMatrix</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuByteMatrix.html" title="class in edu.rit.gpu">GpuByteMatrix</a>&nbsp;getByteMatrix(int&nbsp;rows,
int&nbsp;cols,
int&nbsp;cpurows,
int&nbsp;cpucols)</pre>
<div class="block">Create a new dynamically allocated GPU byte matrix, of which the given
portion is mirrored in the CPU. If <TT>cpurows</TT> = 0 or
<TT>cpucols</TT> = 0, then none of the matrix is mirrored in the CPU. The
matrix elements in CPU memory, namely the <a href="../../../edu/rit/gpu/GpuByteMatrix.html#item"><code>item</code></a>
field's elements, are initialized to zeroes. <I>The matrix elements in
GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>rows</code> - Number of matrix rows (&ge; 1).</dd><dd><code>cols</code> - Number of matrix columns (&ge; 1).</dd><dd><code>cpurows</code> - Number of matrix rows to mirror in the CPU.</dd><dd><code>cpucols</code> - Number of matrix columns to mirror in the CPU.</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU byte matrix.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>rows</TT> &lt; 1, <TT>cols</TT>
&lt; 1, <TT>cpurows</TT> &lt; 0, <TT>cpurows</TT> &gt; <TT>rows</TT>,
<TT>cpucols</TT> &lt; 0, or <TT>cpucols</TT> &gt; <TT>cols</TT>.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getByteMatrix(int, int)"><code>getByteMatrix(int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getShortMatrix(int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getShortMatrix</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuShortMatrix.html" title="class in edu.rit.gpu">GpuShortMatrix</a>&nbsp;getShortMatrix(int&nbsp;rows,
int&nbsp;cols)</pre>
<div class="block">Create a new dynamically allocated GPU short integer matrix. The entire
GPU matrix is mirrored in the CPU. The matrix elements in CPU memory,
namely the <a href="../../../edu/rit/gpu/GpuShortMatrix.html#item"><code>item</code></a> field's elements, are
initialized to zeroes. <I>The matrix elements in GPU memory are not
initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>rows</code> - Number of matrix rows (&ge; 1).</dd><dd><code>cols</code> - Number of matrix columns (&ge; 1).</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU short integer matrix.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>rows</TT> &lt; 1 or <TT>cols</TT>
&lt; 1.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getShortMatrix(int, int, int, int)"><code>getShortMatrix(int,int,int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getShortMatrix(int, int, int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getShortMatrix</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuShortMatrix.html" title="class in edu.rit.gpu">GpuShortMatrix</a>&nbsp;getShortMatrix(int&nbsp;rows,
int&nbsp;cols,
int&nbsp;cpurows,
int&nbsp;cpucols)</pre>
<div class="block">Create a new dynamically allocated GPU short integer matrix, of which the
given portion is mirrored in the CPU. If <TT>cpurows</TT> = 0 or
<TT>cpucols</TT> = 0, then none of the matrix is mirrored in the CPU. The
matrix elements in CPU memory, namely the <a href="../../../edu/rit/gpu/GpuShortMatrix.html#item"><code>item</code></a> field's elements, are initialized to zeroes. <I>The matrix elements
in GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>rows</code> - Number of matrix rows (&ge; 1).</dd><dd><code>cols</code> - Number of matrix columns (&ge; 1).</dd><dd><code>cpurows</code> - Number of matrix rows to mirror in the CPU.</dd><dd><code>cpucols</code> - Number of matrix columns to mirror in the CPU.</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU short integer matrix.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>rows</TT> &lt; 1, <TT>cols</TT>
&lt; 1, <TT>cpurows</TT> &lt; 0, <TT>cpurows</TT> &gt; <TT>rows</TT>,
<TT>cpucols</TT> &lt; 0, or <TT>cpucols</TT> &gt; <TT>cols</TT>.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getShortMatrix(int, int)"><code>getShortMatrix(int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getIntMatrix(int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getIntMatrix</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuIntMatrix.html" title="class in edu.rit.gpu">GpuIntMatrix</a>&nbsp;getIntMatrix(int&nbsp;rows,
int&nbsp;cols)</pre>
<div class="block">Create a new dynamically allocated GPU integer matrix. The entire GPU
matrix is mirrored in the CPU. The matrix elements in CPU memory, namely
the <a href="../../../edu/rit/gpu/GpuIntMatrix.html#item"><code>item</code></a> field's elements, are initialized to
zeroes. <I>The matrix elements in GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>rows</code> - Number of matrix rows (&ge; 1).</dd><dd><code>cols</code> - Number of matrix columns (&ge; 1).</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU integer matrix.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>rows</TT> &lt; 1 or <TT>cols</TT>
&lt; 1.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getIntMatrix(int, int, int, int)"><code>getIntMatrix(int,int,int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getIntMatrix(int, int, int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getIntMatrix</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuIntMatrix.html" title="class in edu.rit.gpu">GpuIntMatrix</a>&nbsp;getIntMatrix(int&nbsp;rows,
int&nbsp;cols,
int&nbsp;cpurows,
int&nbsp;cpucols)</pre>
<div class="block">Create a new dynamically allocated GPU integer matrix, of which the given
portion is mirrored in the CPU. If <TT>cpurows</TT> = 0 or
<TT>cpucols</TT> = 0, then none of the matrix is mirrored in the CPU. The
matrix elements in CPU memory, namely the <a href="../../../edu/rit/gpu/GpuIntMatrix.html#item"><code>item</code></a>
field's elements, are initialized to zeroes. <I>The matrix elements in
GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>rows</code> - Number of matrix rows (&ge; 1).</dd><dd><code>cols</code> - Number of matrix columns (&ge; 1).</dd><dd><code>cpurows</code> - Number of matrix rows to mirror in the CPU.</dd><dd><code>cpucols</code> - Number of matrix columns to mirror in the CPU.</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU integer matrix.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>rows</TT> &lt; 1, <TT>cols</TT>
&lt; 1, <TT>cpurows</TT> &lt; 0, <TT>cpurows</TT> &gt; <TT>rows</TT>,
<TT>cpucols</TT> &lt; 0, or <TT>cpucols</TT> &gt; <TT>cols</TT>.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getIntMatrix(int, int)"><code>getIntMatrix(int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getLongMatrix(int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLongMatrix</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuLongMatrix.html" title="class in edu.rit.gpu">GpuLongMatrix</a>&nbsp;getLongMatrix(int&nbsp;rows,
int&nbsp;cols)</pre>
<div class="block">Create a new dynamically allocated GPU long integer matrix. The entire
GPU matrix is mirrored in the CPU. The matrix elements in CPU memory,
namely the <a href="../../../edu/rit/gpu/GpuLongMatrix.html#item"><code>item</code></a> field's elements, are
initialized to zeroes. <I>The matrix elements in GPU memory are not
initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>rows</code> - Number of matrix rows (&ge; 1).</dd><dd><code>cols</code> - Number of matrix columns (&ge; 1).</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU long integer matrix.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>rows</TT> &lt; 1 or <TT>cols</TT>
&lt; 1.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getLongMatrix(int, int, int, int)"><code>getLongMatrix(int,int,int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getLongMatrix(int, int, int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLongMatrix</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuLongMatrix.html" title="class in edu.rit.gpu">GpuLongMatrix</a>&nbsp;getLongMatrix(int&nbsp;rows,
int&nbsp;cols,
int&nbsp;cpurows,
int&nbsp;cpucols)</pre>
<div class="block">Create a new dynamically allocated GPU long integer matrix, of which the
given portion is mirrored in the CPU. If <TT>cpurows</TT> = 0 or
<TT>cpucols</TT> = 0, then none of the matrix is mirrored in the CPU. The
matrix elements in CPU memory, namely the <a href="../../../edu/rit/gpu/GpuLongMatrix.html#item"><code>item</code></a>
field's elements, are initialized to zeroes. <I>The matrix elements in
GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>rows</code> - Number of matrix rows (&ge; 1).</dd><dd><code>cols</code> - Number of matrix columns (&ge; 1).</dd><dd><code>cpurows</code> - Number of matrix rows to mirror in the CPU.</dd><dd><code>cpucols</code> - Number of matrix columns to mirror in the CPU.</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU long integer matrix.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>rows</TT> &lt; 1, <TT>cols</TT>
&lt; 1, <TT>cpurows</TT> &lt; 0, <TT>cpurows</TT> &gt; <TT>rows</TT>,
<TT>cpucols</TT> &lt; 0, or <TT>cpucols</TT> &gt; <TT>cols</TT>.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getLongMatrix(int, int)"><code>getLongMatrix(int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getFloatMatrix(int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFloatMatrix</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuFloatMatrix.html" title="class in edu.rit.gpu">GpuFloatMatrix</a>&nbsp;getFloatMatrix(int&nbsp;rows,
int&nbsp;cols)</pre>
<div class="block">Create a new dynamically allocated GPU float matrix. The entire GPU
matrix is mirrored in the CPU. The matrix elements in CPU memory, namely
the <a href="../../../edu/rit/gpu/GpuFloatMatrix.html#item"><code>item</code></a> field's elements, are initialized to
zeroes. <I>The matrix elements in GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>rows</code> - Number of matrix rows (&ge; 1).</dd><dd><code>cols</code> - Number of matrix columns (&ge; 1).</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU float matrix.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>rows</TT> &lt; 1 or <TT>cols</TT>
&lt; 1.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getFloatMatrix(int, int, int, int)"><code>getFloatMatrix(int,int,int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getFloatMatrix(int, int, int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFloatMatrix</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuFloatMatrix.html" title="class in edu.rit.gpu">GpuFloatMatrix</a>&nbsp;getFloatMatrix(int&nbsp;rows,
int&nbsp;cols,
int&nbsp;cpurows,
int&nbsp;cpucols)</pre>
<div class="block">Create a new dynamically allocated GPU float matrix, of which the given
portion is mirrored in the CPU. If <TT>cpurows</TT> = 0 or
<TT>cpucols</TT> = 0, then none of the matrix is mirrored in the CPU. The
matrix elements in CPU memory, namely the <a href="../../../edu/rit/gpu/GpuFloatMatrix.html#item"><code>item</code></a> field's elements, are initialized to zeroes. <I>The matrix elements
in GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>rows</code> - Number of matrix rows (&ge; 1).</dd><dd><code>cols</code> - Number of matrix columns (&ge; 1).</dd><dd><code>cpurows</code> - Number of matrix rows to mirror in the CPU.</dd><dd><code>cpucols</code> - Number of matrix columns to mirror in the CPU.</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU float matrix.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>rows</TT> &lt; 1, <TT>cols</TT>
&lt; 1, <TT>cpurows</TT> &lt; 0, <TT>cpurows</TT> &gt; <TT>rows</TT>,
<TT>cpucols</TT> &lt; 0, or <TT>cpucols</TT> &gt; <TT>cols</TT>.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getFloatMatrix(int, int)"><code>getFloatMatrix(int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getDoubleMatrix(int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDoubleMatrix</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuDoubleMatrix.html" title="class in edu.rit.gpu">GpuDoubleMatrix</a>&nbsp;getDoubleMatrix(int&nbsp;rows,
int&nbsp;cols)</pre>
<div class="block">Create a new dynamically allocated GPU double matrix. The entire GPU
matrix is mirrored in the CPU. The matrix elements in CPU memory, namely
the <a href="../../../edu/rit/gpu/GpuDoubleMatrix.html#item"><code>item</code></a> field's elements, are initialized
to zeroes. <I>The matrix elements in GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>rows</code> - Number of matrix rows (&ge; 1).</dd><dd><code>cols</code> - Number of matrix columns (&ge; 1).</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU double matrix.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>rows</TT> &lt; 1 or <TT>cols</TT>
&lt; 1.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getDoubleMatrix(int, int, int, int)"><code>getDoubleMatrix(int,int,int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getDoubleMatrix(int, int, int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDoubleMatrix</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/GpuDoubleMatrix.html" title="class in edu.rit.gpu">GpuDoubleMatrix</a>&nbsp;getDoubleMatrix(int&nbsp;rows,
int&nbsp;cols,
int&nbsp;cpurows,
int&nbsp;cpucols)</pre>
<div class="block">Create a new dynamically allocated GPU double matrix, of which the given
portion is mirrored in the CPU. If <TT>cpurows</TT> = 0 or
<TT>cpucols</TT> = 0, then none of the matrix is mirrored in the CPU. The
matrix elements in CPU memory, namely the <a href="../../../edu/rit/gpu/GpuDoubleMatrix.html#item"><code>item</code></a> field's elements, are initialized to zeroes. <I>The matrix elements
in GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>rows</code> - Number of matrix rows (&ge; 1).</dd><dd><code>cols</code> - Number of matrix columns (&ge; 1).</dd><dd><code>cpurows</code> - Number of matrix rows to mirror in the CPU.</dd><dd><code>cpucols</code> - Number of matrix columns to mirror in the CPU.</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU double matrix.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>rows</TT> &lt; 1, <TT>cols</TT>
&lt; 1, <TT>cpurows</TT> &lt; 0, <TT>cpurows</TT> &gt; <TT>rows</TT>,
<TT>cpucols</TT> &lt; 0, or <TT>cpucols</TT> &gt; <TT>cols</TT>.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getDoubleMatrix(int, int)"><code>getDoubleMatrix(int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getStructVbl(java.lang.Class)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStructVbl</h4>
<pre>public&nbsp;&lt;T extends <a href="../../../edu/rit/gpu/Struct.html" title="class in edu.rit.gpu">Struct</a>&gt;&nbsp;<a href="../../../edu/rit/gpu/GpuStructVbl.html" title="class in edu.rit.gpu">GpuStructVbl</a>&lt;T&gt;&nbsp;getStructVbl(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;type)</pre>
<div class="block">Create a new dynamically allocated GPU struct variable. The variable in
CPU memory, namely the <a href="../../../edu/rit/gpu/GpuStructVbl.html#item"><code>item</code></a> field, is
initialized to null. <I>The variable in GPU memory is not
initialized.</I></div>
<dl><dt><span class="strong">Type Parameters:</span></dt><dd><code>T</code> - Java data type. Class <TT>T</TT> must extend class
<a href="../../../edu/rit/gpu/Struct.html" title="class in edu.rit.gpu">Struct</a>.</dd><dt><span class="strong">Parameters:</span></dt><dd><code>type</code> - Class object for Java data type.</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU struct variable.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - (unchecked exception) Thrown if <TT>type</TT> is null.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd></dl>
</li>
</ul>
<a name="getStructArray(java.lang.Class, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStructArray</h4>
<pre>public&nbsp;&lt;T extends <a href="../../../edu/rit/gpu/Struct.html" title="class in edu.rit.gpu">Struct</a>&gt;&nbsp;<a href="../../../edu/rit/gpu/GpuStructArray.html" title="class in edu.rit.gpu">GpuStructArray</a>&lt;T&gt;&nbsp;getStructArray(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;type,
int&nbsp;len)</pre>
<div class="block">Create a new dynamically allocated GPU struct array. The entire GPU
array is mirrored in the CPU. The array elements in CPU memory, namely
the <a href="../../../edu/rit/gpu/GpuStructArray.html#item"><code>item</code></a> field's elements, are initialized to
null. <I>The array elements in GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Type Parameters:</span></dt><dd><code>T</code> - Java data type. Class <TT>T</TT> must extend class
<a href="../../../edu/rit/gpu/Struct.html" title="class in edu.rit.gpu">Struct</a>.</dd><dt><span class="strong">Parameters:</span></dt><dd><code>type</code> - Class object for Java data type.</dd><dd><code>len</code> - Number of array elements (&ge; 1).</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU struct array.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - (unchecked exception) Thrown if <TT>type</TT> is null.</dd>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>len</TT> &lt; 1.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getStructArray(java.lang.Class, int, int)"><code>getStructArray(Class,int,int)</code></a></dd></dl>
</li>
</ul>
<a name="getStructArray(java.lang.Class, int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStructArray</h4>
<pre>public&nbsp;&lt;T extends <a href="../../../edu/rit/gpu/Struct.html" title="class in edu.rit.gpu">Struct</a>&gt;&nbsp;<a href="../../../edu/rit/gpu/GpuStructArray.html" title="class in edu.rit.gpu">GpuStructArray</a>&lt;T&gt;&nbsp;getStructArray(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;type,
int&nbsp;len,
int&nbsp;cpulen)</pre>
<div class="block">Create a new dynamically allocated GPU struct array, of which the given
portion is mirrored in the CPU. If <TT>cpulen</TT> = 0, then none of the
array is mirrored in the CPU. The array elements in CPU memory, namely
the <a href="../../../edu/rit/gpu/GpuStructArray.html#item"><code>item</code></a> field's elements, are initialized to
null. <I>The array elements in GPU memory are not initialized.</I></div>
<dl><dt><span class="strong">Type Parameters:</span></dt><dd><code>T</code> - Java data type. Class <TT>T</TT> must extend class
<a href="../../../edu/rit/gpu/Struct.html" title="class in edu.rit.gpu">Struct</a>.</dd><dt><span class="strong">Parameters:</span></dt><dd><code>type</code> - Class object for Java data type.</dd><dd><code>len</code> - Number of array elements (&ge; 1).</dd><dd><code>cpulen</code> - Number of array elements to mirror in the CPU.</dd>
<dt><span class="strong">Returns:</span></dt><dd>GPU struct array.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - (unchecked exception) Thrown if <TT>type</TT> is null.</dd>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - (unchecked exception) Thrown if <TT>len</TT> &lt; 1, <TT>cpulen</TT>
&lt; 0, or <TT>cpulen</TT> &gt; <TT>len</TT>.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../edu/rit/gpu/Gpu.html#getStructArray(java.lang.Class, int)"><code>getStructArray(Class,int)</code></a></dd></dl>
</li>
</ul>
<a name="getModule(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getModule</h4>
<pre>public&nbsp;<a href="../../../edu/rit/gpu/Module.html" title="class in edu.rit.gpu">Module</a>&nbsp;getModule(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)
throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Get a module containing GPU functions and data. The module file is a
resource stored in the Java class path.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - Module resource name relative to the Java class path.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - Thrown if an I/O error occurred.</dd>
<dd><code><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></code> - (unchecked exception) Thrown if a GPU error occurred.</dd></dl>
</li>
</ul>
<a name="toString()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toString</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
<div class="block">Returns a string version of this Gpu object.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>String version.</dd></dl>
</li>
</ul>
<a name="finalize()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>finalize</h4>
<pre>protected&nbsp;void&nbsp;finalize()</pre>
<div class="block">Finalize this Gpu object.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></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><a href="#skip-navbar_bottom" title="Skip navigation links"></a><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/Gpu.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-files/index-1.html">Index</a></li>
<li><a href="../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../edu/rit/gpu/FileNotFoundCudaException.html" title="class in edu.rit.gpu"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../edu/rit/gpu/GpuArray.html" title="class in edu.rit.gpu"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?edu/rit/gpu/Gpu.html" target="_top">Frames</a></li>
<li><a href="Gpu.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:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</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><FONT SIZE="-2">Copyright &copy; 2013&ndash;2016 by Alan Kaminsky. All rights reserved. Send comments to ark</FONT><FONT SIZE="1" COLOR="#FFFFFF">&shy;</FONT><FONT SIZE="-2">&#64;</FONT><FONT SIZE="1" COLOR="#FFFFFF">&shy;</FONT><FONT SIZE="-2">cs.rit.edu.</FONT></small></p>
</body>
</html>