[clblas] 65/125: Travis fix: The DIRECTORY tag on get_filename_component( ) was introduced in cmake 2.8.10.2, which Travis CI does not have by default. Revert to the old name PATH.

Ghislain Vaillant ghisvail-guest at moszumanska.debian.org
Fri May 29 06:57:23 UTC 2015


This is an automated email from the git hooks/post-receive script.

ghisvail-guest pushed a commit to branch master
in repository clblas.

commit d71bb2f0a599edc92a6b15b042496b1904e987e8
Author: Kent Knox <kent.knox at amd>
Date:   Tue Apr 1 15:35:49 2014 -0500

    Travis fix: The DIRECTORY tag on get_filename_component( ) was introduced
    in cmake 2.8.10.2, which Travis CI does not have by default.  Revert to
    the old name PATH.
    
    Updates to the main README.md file to incorporate google group links, and
    updates to the build dependencies section.
---
 README.md                               | 328 +++++++++++++++++++-------------
 src/tests/copyTestDependencies.cmake.in |  10 +-
 2 files changed, 198 insertions(+), 140 deletions(-)

diff --git a/README.md b/README.md
index e3a24d1..728a3c0 100644
--- a/README.md
+++ b/README.md
@@ -2,158 +2,216 @@ clBLAS
 =====
 [![Build Status](https://travis-ci.org/clMathLibraries/clBLAS.png)](https://travis-ci.org/clMathLibraries/clBLAS)
 
-This repository houses the code for the OpenCL™ BLAS portion of clMath.  The complete set of BLAS level 1, 2 & 3 routines is implemented. Please see <a href="http://www.netlib.org/blas/index.html"> Netlib BLAS </a> for the list of supported routines.  In addition to GPU devices, the library also supports running on CPU devices to facilitate debugging and multicore programming.  <a href="http://developer.amd.com/tools-and-sdks/heterogeneous-computing/amd-accelerated-parallel-processing-ma [...]
 
-The primary goal of clBLAS is to make it easier for developers to utilize the inherent performance and power efficiency benefits of heterogeneous computing.  clBLAS interfaces do not hide nor wrap OpenCL interfaces, but rather leaves OpenCL state management to the control of the user to allow for maximum performance and flexibility.  The clBLAS library does generate and enqueue optimized OpenCL kernels, relieving the user from the task of writing, optimizing and maintaining kernel code t [...]
+This repository houses the code for the OpenCL™ BLAS portion of clMath.
+The complete set of BLAS level 1, 2 & 3 routines is implemented. Please
+see Netlib BLAS for the list of supported routines. In addition to GPU
+devices, the library also supports running on CPU devices to facilitate
+debugging and multicore programming. APPML 1.10 is the most current
+generally available pre-packaged binary version of the library available
+for download for both Linux and Windows platforms.
+
+The primary goal of clBLAS is to make it easier for developers to
+utilize the inherent performance and power efficiency benefits of
+heterogeneous computing. clBLAS interfaces do not hide nor wrap OpenCL
+interfaces, but rather leaves OpenCL state management to the control of
+the user to allow for maximum performance and flexibility. The clBLAS
+library does generate and enqueue optimized OpenCL kernels, relieving
+the user from the task of writing, optimizing and maintaining kernel
+code themselves.
 
 ## clBLAS library user documentation
-[Library and API documentation]( http://clmathlibraries.github.io/clBLAS/ ) for developers is available online as a GitHub Pages website
+
+[Library and API documentation][] for developers is available online as
+a GitHub Pages website
+
+### Google Groups
+
+Two mailing lists have been created for the clMath projects:
+
+-   [clmath at googlegroups.com][] - group whose focus is to answer
+    questions on using the library or reporting issues
+
+-   [clmath-developers at googlegroups.com][] - group whose focus is for
+    developers interested in contributing to the library code itself
 
 ## clBLAS Wiki
-The [project wiki](https://github.com/clMathLibraries/clBLAS/wiki) contains helpful documentation, including a [build primer](https://github.com/clMathLibraries/clBLAS/wiki/Build)
+
+The [project wiki][] contains helpful documentation, including a [build
+primer][]
 
 ## Contributing code
-Please refer to and read the [Contributing](CONTRIBUTING.md) document for guidelines on how to contribute code to this open source project
+
+Please refer to and read the [Contributing][] document for guidelines on
+how to contribute code to this open source project. The code in the
+/master branch is considered to be stable, and all pull-requests should
+be made against the /develop branch.
 
 ## License
-The source for clBLAS is licensed under the [Apache License, Version 2.0]( http://www.apache.org/licenses/LICENSE-2.0 )
+
+The source for clBLAS is licensed under the [Apache License, Version
+2.0][]
 
 ## Example
-The simple example below shows how to use clBLAS to compute an OpenCL accelerated SGEMM
-
-```c
-#include <sys/types.h>
-#include <stdio.h>
-
-/* Include the clBLAS header. It includes the appropriate OpenCL headers
- */
-#include <clBLAS.h>
-
-/* This example uses predefined matrices and their characteristics for
- * simplicity purpose.
- */
-
-#define M  4
-#define N  3
-#define K  5
-
-static const cl_float alpha = 10;
-
-static const cl_float A[M*K] = {
-    11, 12, 13, 14, 15,
-    21, 22, 23, 24, 25,
-    31, 32, 33, 34, 35,
-    41, 42, 43, 44, 45,
-};
-static const size_t lda = K;        /* i.e. lda = K */
-
-static const cl_float B[K*N] = {
-    11, 12, 13,
-    21, 22, 23,
-    31, 32, 33,
-    41, 42, 43,
-    51, 52, 53,
-};
-static const size_t ldb = N;        /* i.e. ldb = N */
-
-static const cl_float beta = 20;
-
-static cl_float C[M*N] = {
-    11, 12, 13,
-    21, 22, 23,
-    31, 32, 33,
-    41, 42, 43, 
-};
-static const size_t ldc = N;        /* i.e. ldc = N */
-
-static cl_float result[M*N];
-
-int main( void )
-{
-    cl_int err;
-    cl_platform_id platform = 0;
-    cl_device_id device = 0;
-    cl_context_properties props[3] = { CL_CONTEXT_PLATFORM, 0, 0 };
-    cl_context ctx = 0;
-    cl_command_queue queue = 0;
-    cl_mem bufA, bufB, bufC;
-    cl_event event = NULL;
-    int ret = 0;
-
-    /* Setup OpenCL environment. */
-    err = clGetPlatformIDs( 1, &platform, NULL );
-    err = clGetDeviceIDs( platform, CL_DEVICE_TYPE_GPU, 1, &device, NULL );
-
-    props[1] = (cl_context_properties)platform;
-    ctx = clCreateContext( props, 1, &device, NULL, NULL, &err );
-    queue = clCreateCommandQueue( ctx, device, 0, &err );
-
-    /* Setup clBLAS */
-    err = clblasSetup( );
-
-    /* Prepare OpenCL memory objects and place matrices inside them. */
-    bufA = clCreateBuffer( ctx, CL_MEM_READ_ONLY, M * K * sizeof(*A),
-                          NULL, &err );
-    bufB = clCreateBuffer( ctx, CL_MEM_READ_ONLY, K * N * sizeof(*B),
-                          NULL, &err );
-    bufC = clCreateBuffer( ctx, CL_MEM_READ_WRITE, M * N * sizeof(*C),
-                          NULL, &err );
-
-    err = clEnqueueWriteBuffer( queue, bufA, CL_TRUE, 0,
-        M * K * sizeof( *A ), A, 0, NULL, NULL );
-    err = clEnqueueWriteBuffer( queue, bufB, CL_TRUE, 0,
-        K * N * sizeof( *B ), B, 0, NULL, NULL );
-    err = clEnqueueWriteBuffer( queue, bufC, CL_TRUE, 0,
-        M * N * sizeof( *C ), C, 0, NULL, NULL );
-
-    /* Call clBLAS extended function. Perform gemm for the lower right sub-matrices */
-    err = clblasSgemm( clblasRowMajor, clblasNoTrans, clblasNoTrans, 
-							M, N, K,
-							alpha, bufA, 0, lda,
-							bufB, 0, ldb, beta,
-							bufC, 0, ldc,
-							1, &queue, 0, NULL, &event );
-
-    /* Wait for calculations to be finished. */
-    err = clWaitForEvents( 1, &event );
-
-    /* Fetch results of calculations from GPU memory. */
-    err = clEnqueueReadBuffer( queue, bufC, CL_TRUE, 0,
-                                M * N * sizeof(*result),
-                                result, 0, NULL, NULL );
-
-    /* Release OpenCL memory objects. */
-    clReleaseMemObject( bufC );
-    clReleaseMemObject( bufB );
-    clReleaseMemObject( bufA );
-
-    /* Finalize work with clBLAS */
-    clblasTeardown( );
-
-    /* Release OpenCL working objects. */
-    clReleaseCommandQueue( queue );
-    clReleaseContext( ctx );
-
-    return ret;
-}
-```
+
+The simple example below shows how to use clBLAS to compute an OpenCL
+accelerated SGEMM
+
+    #include <sys/types.h>
+    #include <stdio.h>
+
+    /* Include the clBLAS header. It includes the appropriate OpenCL headers
+     */
+    #include <clBLAS.h>
+
+    /* This example uses predefined matrices and their characteristics for
+     * simplicity purpose.
+     */
+
+    #define M  4
+    #define N  3
+    #define K  5
+
+    static const cl_float alpha = 10;
+
+    static const cl_float A[M*K] = {
+        11, 12, 13, 14, 15,
+        21, 22, 23, 24, 25,
+        31, 32, 33, 34, 35,
+        41, 42, 43, 44, 45,
+    };
+    static const size_t lda = K;        /* i.e. lda = K */
+
+    static const cl_float B[K*N] = {
+        11, 12, 13,
+        21, 22, 23,
+        31, 32, 33,
+        41, 42, 43,
+        51, 52, 53,
+    };
+    static const size_t ldb = N;        /* i.e. ldb = N */
+
+    static const cl_float beta = 20;
+
+    static cl_float C[M*N] = {
+        11, 12, 13,
+        21, 22, 23,
+        31, 32, 33,
+        41, 42, 43, 
+    };
+    static const size_t ldc = N;        /* i.e. ldc = N */
+
+    static cl_float result[M*N];
+
+    int main( void )
+    {
+        cl_int err;
+        cl_platform_id platform = 0;
+        cl_device_id device = 0;
+        cl_context_properties props[3] = { CL_CONTEXT_PLATFORM, 0, 0 };
+        cl_context ctx = 0;
+        cl_command_queue queue = 0;
+        cl_mem bufA, bufB, bufC;
+        cl_event event = NULL;
+        int ret = 0;
+
+        /* Setup OpenCL environment. */
+        err = clGetPlatformIDs( 1, &platform, NULL );
+        err = clGetDeviceIDs( platform, CL_DEVICE_TYPE_GPU, 1, &device, NULL );
+
+        props[1] = (cl_context_properties)platform;
+        ctx = clCreateContext( props, 1, &device, NULL, NULL, &err );
+        queue = clCreateCommandQueue( ctx, device, 0, &err );
+
+        /* Setup clBLAS */
+        err = clblasSetup( );
+
+        /* Prepare OpenCL memory objects and place matrices inside them. */
+        bufA = clCreateBuffer( ctx, CL_MEM_READ_ONLY, M * K * sizeof(*A),
+                              NULL, &err );
+        bufB = clCreateBuffer( ctx, CL_MEM_READ_ONLY, K * N * sizeof(*B),
+                              NULL, &err );
+        bufC = clCreateBuffer( ctx, CL_MEM_READ_WRITE, M * N * sizeof(*C),
+                              NULL, &err );
+
+        err = clEnqueueWriteBuffer( queue, bufA, CL_TRUE, 0,
+            M * K * sizeof( *A ), A, 0, NULL, NULL );
+        err = clEnqueueWriteBuffer( queue, bufB, CL_TRUE, 0,
+            K * N * sizeof( *B ), B, 0, NULL, NULL );
+        err = clEnqueueWriteBuffer( queue, bufC, CL_TRUE, 0,
+            M * N * sizeof( *C ), C, 0, NULL, NULL );
+
+        /* Call clBLAS extended function. Perform gemm for the lower right sub-matrices */
+        err = clblasSgemm( clblasRowMajor, clblasNoTrans, clblasNoTrans, 
+                                M, N, K,
+                                alpha, bufA, 0, lda,
+                                bufB, 0, ldb, beta,
+                                bufC, 0, ldc,
+                                1, &queue, 0, NULL, &event );
+
+        /* Wait for calculations to be finished. */
+        err = clWaitForEvents( 1, &event );
+
+        /* Fetch results of calculations from GPU memory. */
+        err = clEnqueueReadBuffer( queue, bufC, CL_TRUE, 0,
+                                    M * N * sizeof(*result),
+                                    result, 0, NULL, NULL );
+
+        /* Release OpenCL memory objects. */
+        clReleaseMemObject( bufC );
+        clReleaseMemObject( bufB );
+        clReleaseMemObject( bufA );
+
+        /* Finalize work with clBLAS */
+        clblasTeardown( );
+
+        /* Release OpenCL working objects. */
+        clReleaseCommandQueue( queue );
+        clReleaseContext( ctx );
+
+        return ret;
+    }
 
 ## Build dependencies
+
 ### Library for Windows
-*  Windows® 7/8
-*  Visual Studio 2010 SP1, 2012
-*  An OpenCL SDK, such as APP SDK 2.8
-*  Latest CMake
+
+-   Windows® 7/8
+
+-   Visual Studio 2010 SP1, 2012
+
+-   An OpenCL SDK, such as APP SDK 2.9
+
+-   Latest CMake
 
 ### Library for Linux
-*  GCC 4.6 and onwards
-*  An OpenCL SDK, such as APP SDK 2.8
-*  Latest CMake
+
+-   GCC 4.6 and onwards
+
+-   An OpenCL SDK, such as APP SDK 2.9
+
+-   Latest CMake
+
+### Library for Mac OSX
+
+-   Recommended to generate Unix makefiles with cmake
 
 ### Test infrastructure
-* Latest Googletest
-* Latest ACML 
-* Latest Boost
+
+-   Googletest v1.6
+
+-   ACML on windows/linux; Accelerate on Mac OSX
+
+-   Latest Boost
 
 ### Performance infrastructure
-* Python
+
+-   Python
+
+  [Library and API documentation]: http://clmathlibraries.github.io/clBLAS/
+  [clmath at googlegroups.com]: https://groups.google.com/forum/#!forum/clmath
+  [clmath-developers at googlegroups.com]: https://groups.google.com/forum/#!forum/clmath-developers
+  [project wiki]: https://github.com/clMathLibraries/clBLAS/wiki
+  [build primer]: https://github.com/clMathLibraries/clBLAS/wiki/Build
+  [Contributing]: CONTRIBUTING.md
+  [Apache License, Version 2.0]: http://www.apache.org/licenses/LICENSE-2.0
diff --git a/src/tests/copyTestDependencies.cmake.in b/src/tests/copyTestDependencies.cmake.in
index 5da7127..d52832f 100644
--- a/src/tests/copyTestDependencies.cmake.in
+++ b/src/tests/copyTestDependencies.cmake.in
@@ -18,7 +18,7 @@ endif( )
 
 #    message( fixedTestLocation ": ${fixedTestLocation}" )
 # Get the directory that the test executable resides in; this helps get_prerequisites( ) find dependent libraries
-get_filename_component( testDir "${fixedTestLocation}" DIRECTORY )
+get_filename_component( testDir "${fixedTestLocation}" PATH )
 #    message( testDir ": ${testDir}" )
 
 set( installPath "" )
@@ -32,7 +32,7 @@ endif( )
 set( depList "" )
 
 #This logic assumes that clBLAS CMakeLists.txt has been called
-get_filename_component( acmlDir "@ACML_LIBRARIES@" DIRECTORY )
+get_filename_component( acmlDir "@ACML_LIBRARIES@" PATH )
 
 if( EXISTS "${acmlDir}" )
     list( APPEND depList "${acmlDir}" )
@@ -40,8 +40,8 @@ if( EXISTS "${acmlDir}" )
 endif( )
 
 #This logic assumes that FindGTest.cmake has been called
-get_filename_component( gtestDir "@GTEST_LIBRARY@" DIRECTORY )
-get_filename_component( gtestDirDebug "@GTEST_LIBRARY_DEBUG@" DIRECTORY )
+get_filename_component( gtestDir "@GTEST_LIBRARY@" PATH )
+get_filename_component( gtestDirDebug "@GTEST_LIBRARY_DEBUG@" PATH )
 
 if( EXISTS "${gtestDir}" )
     list( APPEND depList "${gtestDir}" )
@@ -55,7 +55,7 @@ if( ${gtestDiffDirs} AND EXISTS "${gtestDirDebug}" )
 endif( )
 
 #This logic assumes that FindOpenCL.cmake has been called
-get_filename_component( openclDir "@OPENCL_LIBRARIES@" DIRECTORY )
+get_filename_component( openclDir "@OPENCL_LIBRARIES@" PATH )
 
 if( EXISTS "${openclDir}" )
     list( APPEND depList "${openclDir}" )

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/clblas.git



More information about the debian-science-commits mailing list