Files
pj2/doc/edu/rit/gpu/package-summary.html
2016-04-27 01:07:35 -04:00

614 lines
24 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:12 EDT 2016 -->
<title>edu.rit.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="edu.rit.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 class="navBarCell1Rev">Package</li>
<li>Class</li>
<li><a href="package-use.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/draw/item/test/package-summary.html">Prev Package</a></li>
<li><a href="../../../edu/rit/gpu/example/package-summary.html">Next Package</a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?edu/rit/gpu/package-summary.html" target="_top">Frames</a></li>
<li><a href="package-summary.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>
<a name="skip-navbar_top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h1 title="Package" class="title">Package&nbsp;edu.rit.gpu</h1>
<div class="docSummary">
<div class="block">Package edu.rit.gpu contains classes for
Parallel Java 2's graphics processing unit (GPU) programming capability.</div>
</div>
<p>See:&nbsp;<a href="#package_description">Description</a></p>
</div>
<div class="contentContainer">
<ul class="blockList">
<li class="blockList">
<table class="packageSummary" border="0" cellpadding="3" cellspacing="0" summary="Interface Summary table, listing interfaces, and an explanation">
<caption><span>Interface Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Interface</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/Kernel.html" title="interface in edu.rit.gpu">Kernel</a></td>
<td class="colLast">
<div class="block">Interface Kernel specifies the base interface for a GPU kernel function.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<table class="packageSummary" border="0" cellpadding="3" cellspacing="0" summary="Class Summary table, listing classes, and an explanation">
<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/Gpu.html" title="class in edu.rit.gpu">Gpu</a></td>
<td class="colLast">
<div class="block">Class Gpu encapsulates a graphics processing unit (GPU) compute device.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuArray.html" title="class in edu.rit.gpu">GpuArray</a></td>
<td class="colLast">
<div class="block">Class GpuArray is the abstract base class for a GPU array variable.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuByteArray.html" title="class in edu.rit.gpu">GpuByteArray</a></td>
<td class="colLast">
<div class="block">Class GpuByteArray provides a byte array GPU variable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuByteMatrix.html" title="class in edu.rit.gpu">GpuByteMatrix</a></td>
<td class="colLast">
<div class="block">Class GpuByteMatrix provides a byte matrix GPU variable.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuByteVbl.html" title="class in edu.rit.gpu">GpuByteVbl</a></td>
<td class="colLast">
<div class="block">Class GpuByteVbl provides a byte GPU variable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuDoubleArray.html" title="class in edu.rit.gpu">GpuDoubleArray</a></td>
<td class="colLast">
<div class="block">Class GpuDoubleArray provides a double array GPU variable.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuDoubleMatrix.html" title="class in edu.rit.gpu">GpuDoubleMatrix</a></td>
<td class="colLast">
<div class="block">Class GpuDoubleMatrix provides a double matrix GPU variable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuDoubleVbl.html" title="class in edu.rit.gpu">GpuDoubleVbl</a></td>
<td class="colLast">
<div class="block">Class GpuDoubleVbl provides a double GPU variable.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuFloatArray.html" title="class in edu.rit.gpu">GpuFloatArray</a></td>
<td class="colLast">
<div class="block">Class GpuFloatArray provides a float array GPU variable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuFloatMatrix.html" title="class in edu.rit.gpu">GpuFloatMatrix</a></td>
<td class="colLast">
<div class="block">Class GpuFloatMatrix provides a float matrix GPU variable.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuFloatVbl.html" title="class in edu.rit.gpu">GpuFloatVbl</a></td>
<td class="colLast">
<div class="block">Class GpuFloatVbl provides a float GPU variable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuIntArray.html" title="class in edu.rit.gpu">GpuIntArray</a></td>
<td class="colLast">
<div class="block">Class GpuIntArray provides an integer array GPU variable.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuIntMatrix.html" title="class in edu.rit.gpu">GpuIntMatrix</a></td>
<td class="colLast">
<div class="block">Class GpuIntMatrix provides an integer matrix GPU variable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuIntVbl.html" title="class in edu.rit.gpu">GpuIntVbl</a></td>
<td class="colLast">
<div class="block">Class GpuIntVbl provides an integer GPU variable.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuLongArray.html" title="class in edu.rit.gpu">GpuLongArray</a></td>
<td class="colLast">
<div class="block">Class GpuLongArray provides a long integer array GPU variable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuLongMatrix.html" title="class in edu.rit.gpu">GpuLongMatrix</a></td>
<td class="colLast">
<div class="block">Class GpuLongMatrix provides a long integer matrix GPU variable.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuLongVbl.html" title="class in edu.rit.gpu">GpuLongVbl</a></td>
<td class="colLast">
<div class="block">Class GpuLongVbl provides a long integer GPU variable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuMatrix.html" title="class in edu.rit.gpu">GpuMatrix</a></td>
<td class="colLast">
<div class="block">Class GpuMatrix is the abstract base class for a GPU matrix variable.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuShortArray.html" title="class in edu.rit.gpu">GpuShortArray</a></td>
<td class="colLast">
<div class="block">Class GpuShortArray provides a short integer array GPU variable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuShortMatrix.html" title="class in edu.rit.gpu">GpuShortMatrix</a></td>
<td class="colLast">
<div class="block">Class GpuShortMatrix provides a short integer matrix GPU variable.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuShortVbl.html" title="class in edu.rit.gpu">GpuShortVbl</a></td>
<td class="colLast">
<div class="block">Class GpuShortVbl provides a short integer GPU variable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuStructArray.html" title="class in edu.rit.gpu">GpuStructArray</a>&lt;T extends <a href="../../../edu/rit/gpu/Struct.html" title="class in edu.rit.gpu">Struct</a>&gt;</td>
<td class="colLast">
<div class="block">Class GpuStructArray provides a struct array GPU variable.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuStructVbl.html" title="class in edu.rit.gpu">GpuStructVbl</a>&lt;T extends <a href="../../../edu/rit/gpu/Struct.html" title="class in edu.rit.gpu">Struct</a>&gt;</td>
<td class="colLast">
<div class="block">Class GpuStructVbl provides a struct GPU variable.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuVbl.html" title="class in edu.rit.gpu">GpuVbl</a></td>
<td class="colLast">
<div class="block">Class GpuVbl is the abstract base class for a GPU variable.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/Module.html" title="class in edu.rit.gpu">Module</a></td>
<td class="colLast">
<div class="block">Class Module encapsulates a module that contains GPU kernel functions and
data.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/Struct.html" title="class in edu.rit.gpu">Struct</a></td>
<td class="colLast">
<div class="block">Class Struct is the abstract base class for a Java object on the CPU that is
converted to or from a C struct on the GPU.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<table class="packageSummary" border="0" cellpadding="3" cellspacing="0" summary="Enum Summary table, listing enums, and an explanation">
<caption><span>Enum Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Enum</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/CacheConfig.html" title="enum in edu.rit.gpu">CacheConfig</a></td>
<td class="colLast">
<div class="block">Enum CacheConfig enumerates GPU cache configurations.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<table class="packageSummary" border="0" cellpadding="3" cellspacing="0" summary="Exception Summary table, listing exceptions, and an explanation">
<caption><span>Exception Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Exception</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/CudaException.html" title="class in edu.rit.gpu">CudaException</a></td>
<td class="colLast">
<div class="block">Class CudaException is the base class for an exception thrown if a CUDA error
occurred.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/DeinitializedCudaException.html" title="class in edu.rit.gpu">DeinitializedCudaException</a></td>
<td class="colLast">
<div class="block">Class DeinitializedCudaException is thrown if a CUDA_ERROR_DEINITIALIZED
error occurred.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/FileNotFoundCudaException.html" title="class in edu.rit.gpu">FileNotFoundCudaException</a></td>
<td class="colLast">
<div class="block">Class FileNotFoundCudaException is thrown if a CUDA_ERROR_FILE_NOT_FOUND
error occurred.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuException.html" title="class in edu.rit.gpu">GpuException</a></td>
<td class="colLast">
<div class="block">Class GpuException is the base class for an exception thrown if a GPU error
occurred.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/GpuNotSupportedException.html" title="class in edu.rit.gpu">GpuNotSupportedException</a></td>
<td class="colLast">
<div class="block">Class GpuNotSupportedException is thrown if GPU parallel programs are not
supported.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/InvalidContextCudaException.html" title="class in edu.rit.gpu">InvalidContextCudaException</a></td>
<td class="colLast">
<div class="block">Class InvalidContextCudaException is thrown if a CUDA_ERROR_INVALID_CONTEXT
error occurred.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/InvalidDeviceCudaException.html" title="class in edu.rit.gpu">InvalidDeviceCudaException</a></td>
<td class="colLast">
<div class="block">Class InvalidDeviceCudaException is thrown if a CUDA_ERROR_INVALID_DEVICE
error occurred.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/InvalidHandleCudaException.html" title="class in edu.rit.gpu">InvalidHandleCudaException</a></td>
<td class="colLast">
<div class="block">Class InvalidHandleCudaException is thrown if a CUDA_ERROR_INVALID_HANDLE
error occurred.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/InvalidImageCudaException.html" title="class in edu.rit.gpu">InvalidImageCudaException</a></td>
<td class="colLast">
<div class="block">Class InvalidImageCudaException is thrown if a CUDA_ERROR_INVALID_IMAGE
error occurred.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/InvalidValueCudaException.html" title="class in edu.rit.gpu">InvalidValueCudaException</a></td>
<td class="colLast">
<div class="block">Class InvalidValueCudaException is thrown if a CUDA_ERROR_INVALID_VALUE error
occurred.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/LaunchFailedCudaException.html" title="class in edu.rit.gpu">LaunchFailedCudaException</a></td>
<td class="colLast">
<div class="block">Class LaunchFailedCudaException is thrown if a CUDA_ERROR_LAUNCH_FAILED
error occurred.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/LaunchIncompatibleTexturingCudaException.html" title="class in edu.rit.gpu">LaunchIncompatibleTexturingCudaException</a></td>
<td class="colLast">
<div class="block">Class LaunchIncompatibleTexturingCudaException is thrown if a
CUDA_ERROR_LAUNCH_INCOMPATIBLE_TEXTURING error occurred.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/LaunchOutOfResourcesCudaException.html" title="class in edu.rit.gpu">LaunchOutOfResourcesCudaException</a></td>
<td class="colLast">
<div class="block">Class LaunchOutOfResourcesCudaException is thrown if a
CUDA_ERROR_LAUNCH_OUT_OF_RESOURCES error occurred.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/LaunchTimeoutCudaException.html" title="class in edu.rit.gpu">LaunchTimeoutCudaException</a></td>
<td class="colLast">
<div class="block">Class LaunchTimeoutCudaException is thrown if a CUDA_ERROR_LAUNCH_TIMEOUT
error occurred.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/NotFoundCudaException.html" title="class in edu.rit.gpu">NotFoundCudaException</a></td>
<td class="colLast">
<div class="block">Class NotFoundCudaException is thrown if a CUDA_ERROR_NOT_FOUND error
occurred.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/NotInitializedCudaException.html" title="class in edu.rit.gpu">NotInitializedCudaException</a></td>
<td class="colLast">
<div class="block">Class NotInitializedCudaException is thrown if a CUDA_ERROR_NOT_INITIALIZED
error occurred.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/OutOfMemoryCudaException.html" title="class in edu.rit.gpu">OutOfMemoryCudaException</a></td>
<td class="colLast">
<div class="block">Class OutOfMemoryCudaException is thrown if a CUDA_ERROR_OUT_OF_MEMORY error
occurred.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/SharedObjectInitFailedCudaException.html" title="class in edu.rit.gpu">SharedObjectInitFailedCudaException</a></td>
<td class="colLast">
<div class="block">Class SharedObjectInitFailedCudaException is thrown if a
CUDA_ERROR_SHARED_OBJECT_INIT_FAILED error occurred.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/SharedObjectSymbolNotFoundCudaException.html" title="class in edu.rit.gpu">SharedObjectSymbolNotFoundCudaException</a></td>
<td class="colLast">
<div class="block">Class SharedObjectSymbolNotFoundCudaException is thrown if a
CUDA_ERROR_SHARED_OBJECT_SYMBOL_NOT_FOUND error occurred.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../edu/rit/gpu/UnknownCudaException.html" title="class in edu.rit.gpu">UnknownCudaException</a></td>
<td class="colLast">
<div class="block">Class UnknownCudaException is thrown if a CUDA_ERROR_UNKNOWN error occurred.</div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="package_description">
<!-- -->
</a>
<h2 title="Package edu.rit.gpu Description">Package edu.rit.gpu Description</h2>
<div class="block">Package edu.rit.gpu contains classes for
Parallel Java 2's graphics processing unit (GPU) programming capability.
At present the package supports GPU kernels
written using Nvidia Corporation's CUDA version 5.0.
<P>
A PJ2 GPU program's main program is written in Java using PJ2.
The GPU kernels are written in C or C++ using CUDA.
Classes in package edu.rit.gpu
let the main program transfer data
between the CPU's memory and the GPU's memory,
execute kernel functions on the GPU,
and do other GPU related operations.
<P>
<A HREF="#installation">Installation</A>
<BR><A HREF="#usage">Usage</A>
<BR><A HREF="#writing">Writing PJ2 GPU Programs</A>
<P>
<HR>
<A NAME="installation"><H2>Installation</H2></A>
<P>
Do the following steps to install PJ2's GPU capability.
These steps are not needed
if PJ2's GPU capability is not needed.
Some familiarity with the Java Native Interface (JNI)
would be helpful;
see Sheng Liang,
<I>Java Native Interface: Programmer's Guide and Specification</I>
(Addison-Wesley, 1999).
<OL TYPE=1>
<P><LI>
Install CUDA.
<P><LI>
Install the PJ2 <B><I>source</I></B> distribution as described in the
<A HREF="../../../overview-summary.html#installation">Overview</A>.
<P><LI>
Change to the <TT>lib/</TT> directory
in the source distribution
and run the <TT>ccompile</TT> shell script.
On a Linux system,
this compiles the <TT>edu_rit_gpu_Cuda.c</TT> source file
and creates the <TT>libEduRitGpuCuda.so</TT> native code library file.
You might need to modify the shell script
to create the proper native code library file for your system.
<P><LI>
Move the native code library file
to a directory on the load library path,
where the Java Virtual Machine can find it.
See "Usage" below.
<P><LI>
Change to the <TT>lib/edu/rit/gpu/example/</TT> directory
in the source distribution
and run the <TT>ccompile</TT> shell script.
This compiles the CUDA module files
needed by the Java classes in package
<A HREF="example/package-summary.html">edu.rit.gpu.example</A>.
You might need to modify the shell script for your system.
<P><LI>
Change to the <TT>lib/edu/rit/gpu/test/</TT> directory
and run the <TT>ccompile</TT> shell script.
This compiles the CUDA module files
needed by the Java classes in package
<A HREF="test/package-summary.html">edu.rit.gpu.test</A>.
You might need to modify the shell script for your system.
<P><LI>
If you are installing the PJ2 <B><I>executable</I></B> distribution
as described in the
<A HREF="../../../overview-summary.html#installation">Overview</A>,
the compiled CUDA module files
must be added to the PJ2 JAR file.
Change to the <TT>lib/</TT> directory
in the source distribution
and run this command:
<BR><TT>&nbsp;&nbsp;&nbsp;&nbsp;jar uf &lt;jarfile&gt; edu/rit/gpu/*/*.cubin edu/rit/gpu/*/*.ptx</TT>
<BR>replacing <TT>&lt;jarfile&gt;</TT>
with the pathname of the PJ2 JAR file.
</OL>
<P>
<HR>
<A NAME="usage"><H2>Usage</H2></A>
<P>
When compiling and executing Java programs
that use PJ2's GPU capability,
in addition to setting the Java class path
as described in the
<A HREF="../../../overview-summary.html#usage">Overview</A>,
you must also set your load library path
to include the directory where the PJ2 native code library file resides.
Here is an example of a command for the <TT>bash</TT> shell
to add an appropriate directory
to the front of the load library path:
<P>
<TT>export&nbsp;LD_LIBRARY_PATH=/var/tmp/parajava/pj2:$LD_LIBRARY_PATH</TT>
<P>
Here is an example of a command for the <TT>csh</TT> shell
to add an appropriate directory
to the front of the load library path:
<P>
<TT>setenv&nbsp;LD_LIBRARY_PATH&nbsp;/var/tmp/parajava/pj2:$LD_LIBRARY_PATH</TT>
<P>
<HR>
<A NAME="writing"><H2>Writing PJ2 GPU Programs</H2></A>
<P>
Use class <A HREF="Gpu.html">Gpu</A>
to configure GPU devices,
load compiled GPU module files,
and set up dynamically allocated variables in GPU memory.
<P>
Use class <A HREF="Module.html">Module</A>
to get statically allocated GPU variables
and GPU kernel functions
from a compiled GPU module.
<P>
Use interface <A HREF="Kernel.html">Kernel</A>
to configure and execute GPU kernel functions.
<P>
For further information,
study and run the example programs in package
<A HREF="example/package-summary.html">edu.rit.gpu.example</A>.</div>
</div>
<!-- ======= 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 class="navBarCell1Rev">Package</li>
<li>Class</li>
<li><a href="package-use.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/draw/item/test/package-summary.html">Prev Package</a></li>
<li><a href="../../../edu/rit/gpu/example/package-summary.html">Next Package</a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?edu/rit/gpu/package-summary.html" target="_top">Frames</a></li>
<li><a href="package-summary.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>
<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>