Install

From ocland
Jump to: navigation, search

Contents

General

ocland is divided in 3 subprojects:

  • ocland server
  • ocland client (ICD)
  • ocland examples

The client and the examples are usually installed in the same computer, so will be explained together.

Actions-help-about-icon.png ocland has been designed and tested in GNU/Linux based operative systems, so no support is provided for other ones yet.


Download ocland

Probably you want to visit the releases page for a stable version, downloading a .tar.gz file, or optionally you could download the version present in the repositories, with more fresh features, but also more unstable.

Using the first way, you may uncompress the file and enter in the created directory typing (if the downloaded file is called ocland.tar.gz):

tar -xcfv ocland.tar.gz
cd ocland

Or using the second way, you must use Git to download the repository (read only), and then navigate into it:

git clone https://github.com/sanguinariojoe/ocland.git
cd ocland

ocland server

Ocland server must be installed in each computer that will provide remote resources to perform the OpenCL computations. If you install the ocland server in a computer without available OpenCL platforms, server will be simply unuseful, opening ports which probably you don't want to open.

The ocland package use CMake to the configuration process. In a basic ocland server installation you can use the commands:

cmake -DOCLAND_SERVER:BOOL=ON -DOCLAND_SERVER_DAEMON:BOOL=ON -DOCLAND_CLIENT:BOOL=OFF -DOCLAND_CLIENT_ICD:BOOL=OFF OCLAND_EXAMPLES:BOOL=OFF .
make
make install

Note that the last command must be executed as superuser. Depending on your operative system, consider setting the flag -DCMAKE_INSTALL_PREFIX:PATH=/usr as well.

The daemon (set with the flag OCLAND_SERVER_DAEMON) is used in order to launch the ocland server at the operative system start, but if you don't want to automatically launch it you can disable this feature using -DOCLAND_SERVER_DAEMON:BOOL=OFF.

Since the version 0.2 ocland can use a compression library for the data transfers. Snappy is used by default, but ZLIB, LZO, LZMA, BZIP2 and LZ4 can be used instead (i.e.- -DOCLAND_COMPRESSION_LIBRARY=LZO to use LZO). Also no compression data transfers can be selected as well (-DOCLAND_USE_COMPRESSION:BOOL=OFF).

Emblems-emblem-important-icon.png SNAPPY is the most tested option, which has the main benefit to be really fast, with a good enough compression ratio. Other alternatives may not work properly.


When the server has been installed you can launch it typing:

ocland_server

In order to allow clients can access to the ocland server resources several ports starting in 51000 one must be opened. In ocland the port 51000 is used to stablish the connection between the clients and the server, but later more ports (51001, 51002, ...) will be opened to can perform asynchronously the data transfers without interfere the main communication channel, closing it when the data transfer has been completed. See ocland server to learn more about this.

ocland client (ICD)

The ocland installable client driver must be installed in all the computers where the OpenCL application will be launched.

cmake -DOCLAND_SERVER:BOOL=OFF -DOCLAND_SERVER_DAEMON:BOOL=OFF -DOCLAND_CLIENT:BOOL=ON -DOCLAND_CLIENT_ICD:BOOL=ON OCLAND_EXAMPLES:BOOL=OFF .
make
make install

Note that the last command must be executed as superuser. Depending on your operative system, consider set the flag -DCMAKE_INSTALL_PREFIX:PATH=/usr too.

The ocland driver will be installed, and a referency will be generated in the file /etc/OpenCL/vendors/ocland.icd in order to report to the ICD loader that must query ocland for available platforms. It's strongly recommended to let the flag OCLAND_CLIENT_ICD activated, or otherwise you will ha ve driver installed but not operative unless you compile your applications linking directly ocland ICD library (in this case all the other OpenCL platforms will be lost).

Like the server, the client uses a compression library to accelerate the data transfers, and both of them must be configured to use the same compression library.

Since the version 0.2 ocland can use a compression library for the data transfers. Snappy is used by default, but ZLIB, LZO, LZMA, BZIP2 and LZ4 can be used instead (i.e.- -DOCLAND_COMPRESSION_LIBRARY=LZO to use LZO). Also no compression data transfers can be selected as well (-DOCLAND_USE_COMPRESSION:BOOL=OFF).

In order to use remote resources you must create a plain text file called ocland in the folder where you will launch the OpenCL application, with the servers IP addresses (one per line). See ocland ICD page to learn more about this.

When application query for OpenCL platforms ocland client will automatically connect to the ocland servers specified in the ocland named file. If the file is not present, is blank, or the servers are not available, simply no ocland platforms will offered, but you ever still have available the local installed platforms.

ocland examples

The ocland examples can be installed in all the machines that have an appropiate ICD loader installed, but probably you want to install it in the same machines than the client. You can install only the examples with the following commands:

cmake -DOCLAND_SERVER:BOOL=OFF -DOCLAND_SERVER_DAEMON:BOOL=OFF -DOCLAND_CLIENT:BOOL=OFF -DOCLAND_CLIENT_ICD:BOOL=OFF OCLAND_EXAMPLES:BOOL=ON .
make
make install

In a similar way of the previous parts of ocland package. You can visit Category:Examples to learn more about the provided examples.

Personal tools
Namespaces

Variants
Actions
Navigation
Categories
Toolbox